pwn 0.5.615 → 0.5.618

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +109 -85
  3. data/README.md.bak +200 -0
  4. data/bin/pwn +47 -2
  5. data/bin/pwn_gqrx_scanner +75 -18
  6. data/documentation/AI-Integration.md +42 -26
  7. data/documentation/AWS.md +57 -0
  8. data/documentation/Agent-Tool-Registry.md +56 -0
  9. data/documentation/Banner.md +17 -0
  10. data/documentation/Blockchain.md +18 -0
  11. data/documentation/Bounty.md +21 -0
  12. data/documentation/BurpSuite.md +41 -16
  13. data/documentation/CLI-Drivers.md +58 -0
  14. data/documentation/Configuration.md +66 -0
  15. data/documentation/Contributing.md +33 -19
  16. data/documentation/Cron.md +47 -0
  17. data/documentation/Diagrams.md +123 -40
  18. data/documentation/Drivers.md +43 -16
  19. data/documentation/Extrospection.md +54 -0
  20. data/documentation/FFI.md +14 -0
  21. data/documentation/Fuzzing.md +36 -0
  22. data/documentation/General-PWN-Usage.md +50 -30
  23. data/documentation/Hardware.md +40 -0
  24. data/documentation/Home.md +78 -51
  25. data/documentation/How-PWN-Works.md +59 -57
  26. data/documentation/Installation.md +53 -28
  27. data/documentation/Metasploit.md +34 -0
  28. data/documentation/NmapIt.md +18 -12
  29. data/documentation/PWN.png +0 -0
  30. data/documentation/PWN_Contributors_and_Users.png +0 -0
  31. data/documentation/Persistence.md +38 -0
  32. data/documentation/Plugins.md +97 -47
  33. data/documentation/Reporting.md +25 -18
  34. data/documentation/SAST.md +39 -22
  35. data/documentation/SDR.md +40 -0
  36. data/documentation/Sessions.md +39 -0
  37. data/documentation/Skills-Memory-Learning.md +49 -29
  38. data/documentation/Swarm.md +71 -0
  39. data/documentation/Transparent-Browser.md +26 -22
  40. data/documentation/Troubleshooting.md +44 -25
  41. data/documentation/WWW.md +32 -0
  42. data/documentation/What-is-PWN.md +51 -32
  43. data/documentation/Why-PWN.md +41 -11
  44. data/documentation/diagrams/agent-tool-registry.svg +284 -0
  45. data/documentation/diagrams/ai-integration-tool-calling.svg +141 -103
  46. data/documentation/diagrams/aws-cloud-security.svg +166 -0
  47. data/documentation/diagrams/build.sh +20 -0
  48. data/documentation/diagrams/burp-vs-zap-preference.svg +47 -62
  49. data/documentation/diagrams/code-scanning-sast.svg +139 -79
  50. data/documentation/diagrams/cron-scheduling.svg +148 -0
  51. data/documentation/diagrams/dot/_THEME.md +27 -0
  52. data/documentation/diagrams/dot/agent-tool-registry.dot +59 -0
  53. data/documentation/diagrams/dot/ai-integration-tool-calling.dot +47 -20
  54. data/documentation/diagrams/dot/aws-cloud-security.dot +48 -0
  55. data/documentation/diagrams/dot/burp-vs-zap-preference.dot +23 -12
  56. data/documentation/diagrams/dot/code-scanning-sast.dot +46 -18
  57. data/documentation/diagrams/dot/cron-scheduling.dot +40 -0
  58. data/documentation/diagrams/dot/driver-framework.dot +36 -14
  59. data/documentation/diagrams/dot/extrospection-world-awareness.dot +55 -0
  60. data/documentation/diagrams/dot/fuzzing-workflow.dot +44 -24
  61. data/documentation/diagrams/dot/hardware-hacking.dot +48 -0
  62. data/documentation/diagrams/dot/history-to-drivers.dot +31 -17
  63. data/documentation/diagrams/dot/memory-skills-detailed.dot +57 -25
  64. data/documentation/diagrams/dot/network-infra-testing.dot +51 -19
  65. data/documentation/diagrams/dot/overall-pwn-architecture.dot +110 -44
  66. data/documentation/diagrams/dot/penetration-testing-workflow.dot +56 -25
  67. data/documentation/diagrams/dot/persistence-filesystem.dot +29 -0
  68. data/documentation/diagrams/dot/plugin-ecosystem.dot +41 -27
  69. data/documentation/diagrams/dot/pwn-ai-feedback-learning-loop.dot +87 -46
  70. data/documentation/diagrams/dot/pwn-repl-prototyping.dot +49 -30
  71. data/documentation/diagrams/dot/reporting-pipeline.dot +43 -14
  72. data/documentation/diagrams/dot/reverse-engineering-flow.dot +40 -18
  73. data/documentation/diagrams/dot/sdr-radio-flow.dot +45 -0
  74. data/documentation/diagrams/dot/sessions-cron-automation.dot +41 -14
  75. data/documentation/diagrams/dot/swarm-multi-agent.dot +70 -0
  76. data/documentation/diagrams/dot/web-application-testing.dot +45 -23
  77. data/documentation/diagrams/dot/zero-day-research-flow.dot +46 -24
  78. data/documentation/diagrams/driver-framework.svg +87 -66
  79. data/documentation/diagrams/extrospection-world-awareness.svg +185 -0
  80. data/documentation/diagrams/fuzzing-workflow.svg +128 -115
  81. data/documentation/diagrams/hardware-hacking.svg +163 -0
  82. data/documentation/diagrams/history-to-drivers.svg +84 -82
  83. data/documentation/diagrams/memory-skills-detailed.svg +167 -119
  84. data/documentation/diagrams/network-infra-testing.svg +146 -84
  85. data/documentation/diagrams/overall-pwn-architecture.svg +356 -185
  86. data/documentation/diagrams/penetration-testing-workflow.svg +161 -108
  87. data/documentation/diagrams/persistence-filesystem.svg +174 -0
  88. data/documentation/diagrams/plugin-ecosystem.svg +225 -121
  89. data/documentation/diagrams/pwn-ai-feedback-learning-loop.svg +257 -185
  90. data/documentation/diagrams/pwn-repl-prototyping.svg +126 -137
  91. data/documentation/diagrams/reporting-pipeline.svg +128 -68
  92. data/documentation/diagrams/reverse-engineering-flow.svg +100 -80
  93. data/documentation/diagrams/sdr-radio-flow.svg +146 -0
  94. data/documentation/diagrams/sessions-cron-automation.svg +112 -68
  95. data/documentation/diagrams/swarm-multi-agent.svg +225 -0
  96. data/documentation/diagrams/web-application-testing.svg +136 -100
  97. data/documentation/diagrams/zero-day-research-flow.svg +116 -112
  98. data/documentation/fax-spectrogram.png +0 -0
  99. data/documentation/fax-waveform.png +0 -0
  100. data/documentation/pwn-REPL.md +40 -24
  101. data/documentation/pwn-ai-Agent.md +59 -30
  102. data/documentation/pwn_android_war_dialer_session.png +0 -0
  103. data/documentation/pwn_install.png +0 -0
  104. data/documentation/pwn_wallpaper.jpg +0 -0
  105. data/documentation/ringing-spectrogram.png +0 -0
  106. data/documentation/ringing-waveform.png +0 -0
  107. data/git_commit.sh +1 -1
  108. data/lib/pwn/ai/agent/assembly.rb +1 -1
  109. data/lib/pwn/ai/agent/btc.rb +1 -1
  110. data/lib/pwn/ai/agent/burp_suite.rb +1 -1
  111. data/lib/pwn/ai/agent/extrospection.rb +618 -0
  112. data/lib/pwn/ai/agent/gqrx.rb +2 -2
  113. data/lib/pwn/ai/agent/hacker_one.rb +1 -1
  114. data/lib/pwn/ai/agent/introspection.rb +91 -0
  115. data/lib/pwn/ai/agent/learning.rb +6 -4
  116. data/lib/pwn/ai/agent/loop.rb +15 -0
  117. data/lib/pwn/ai/agent/prompt_builder.rb +10 -1
  118. data/lib/pwn/ai/agent/sast.rb +1 -1
  119. data/lib/pwn/ai/agent/swarm.rb +437 -0
  120. data/lib/pwn/ai/agent/tools/cron.rb +163 -0
  121. data/lib/pwn/ai/agent/tools/extrospection.rb +280 -0
  122. data/lib/pwn/ai/agent/tools/learning.rb +108 -0
  123. data/lib/pwn/ai/agent/tools/memory.rb +27 -0
  124. data/lib/pwn/ai/agent/tools/metrics.rb +61 -0
  125. data/lib/pwn/ai/agent/tools/sessions.rb +139 -0
  126. data/lib/pwn/ai/agent/tools/skills.rb +30 -0
  127. data/lib/pwn/ai/agent/tools/swarm.rb +229 -0
  128. data/lib/pwn/ai/agent/transparent_browser.rb +1 -1
  129. data/lib/pwn/ai/agent/vuln_gen.rb +2 -2
  130. data/lib/pwn/ai/agent.rb +3 -0
  131. data/lib/pwn/ai/anthropic.rb +19 -4
  132. data/lib/pwn/ai.rb +0 -1
  133. data/lib/pwn/config.rb +10 -23
  134. data/lib/pwn/cron.rb +16 -7
  135. data/lib/pwn/plugins/repl.rb +90 -281
  136. data/lib/pwn/sdr/decoder/base.rb +251 -0
  137. data/lib/pwn/sdr/decoder/gsm.rb +84 -185
  138. data/lib/pwn/sdr/decoder/pocsag.rb +62 -217
  139. data/lib/pwn/sdr/decoder.rb +1 -0
  140. data/lib/pwn/sdr/gqrx.rb +446 -65
  141. data/lib/pwn/version.rb +1 -1
  142. data/spec/lib/pwn/ai/agent/extrospection_spec.rb +15 -0
  143. data/spec/lib/pwn/ai/agent/introspection_spec.rb +15 -0
  144. data/spec/lib/pwn/ai/agent/swarm_spec.rb +34 -0
  145. data/spec/lib/pwn/ai/agent/tools/cron_spec.rb +40 -0
  146. data/spec/lib/pwn/ai/agent/tools/extrospection_spec.rb +40 -0
  147. data/spec/lib/pwn/ai/agent/tools/metrics_spec.rb +20 -0
  148. data/spec/lib/pwn/ai/agent/tools/sessions_spec.rb +35 -0
  149. data/spec/lib/pwn/ai/agent/tools/swarm_spec.rb +17 -0
  150. data/spec/lib/pwn/{ai/introspection_spec.rb → sdr/decoder/base_spec.rb} +3 -3
  151. data/third_party/pwn_rdoc.jsonl +199 -37
  152. metadata +65 -3
  153. data/lib/pwn/ai/introspection.rb +0 -76
@@ -3,119 +3,181 @@
3
3
  "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
4
  <!-- Generated by graphviz version 14.1.2 (0)
5
5
  -->
6
- <!-- Title: Network &amp; Infrastructure Testing with PWN Pages: 1 -->
7
- <svg width="236pt" height="490pt"
8
- viewBox="0.00 0.00 236.00 490.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
- <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 486)">
10
- <title>Network &amp; Infrastructure Testing with PWN</title>
11
- <polygon fill="white" stroke="none" points="-4,4 -4,-486 231.5,-486 231.5,4 -4,4"/>
12
- <!-- Targets -->
6
+ <!-- Title: PWN_Network Pages: 1 -->
7
+ <svg width="1171pt" height="360pt"
8
+ viewBox="0.00 0.00 1171.00 360.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
+ <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(43.2 317.2)">
10
+ <title>PWN_Network</title>
11
+ <polygon fill="#0f172a" stroke="none" points="-43.2,43.2 -43.2,-317.2 1127.45,-317.2 1127.45,43.2 -43.2,43.2"/>
12
+ <text xml:space="preserve" text-anchor="start" x="388.75" y="-252" font-family="sans-Serif" font-weight="bold" font-size="20.00" fill="#e2e8f0">Network &amp; Infrastructure Testing</text>
13
+ <text xml:space="preserve" text-anchor="start" x="410.12" y="-240.55" font-family="sans-Serif" font-size="11.00" fill="#94a3b8">discovery → service enum → auth attacks → cloud / CI</text>
14
+ <g id="clust1" class="cluster">
15
+ <title>cluster_disc</title>
16
+ <path fill="#022c22" stroke="#047857" d="M160.75,-76C160.75,-76 297.75,-76 297.75,-76 303.75,-76 309.75,-82 309.75,-88 309.75,-88 309.75,-215 309.75,-215 309.75,-221 303.75,-227 297.75,-227 297.75,-227 160.75,-227 160.75,-227 154.75,-227 148.75,-221 148.75,-215 148.75,-215 148.75,-88 148.75,-88 148.75,-82 154.75,-76 160.75,-76"/>
17
+ <text xml:space="preserve" text-anchor="middle" x="229.25" y="-204" font-family="sans-Serif" font-size="20.00" fill="#a7f3d0">Discover</text>
18
+ </g>
19
+ <g id="clust2" class="cluster">
20
+ <title>cluster_svc</title>
21
+ <path fill="#422006" stroke="#a16207" d="M391.75,-8C391.75,-8 508.25,-8 508.25,-8 514.25,-8 520.25,-14 520.25,-20 520.25,-20 520.25,-215 520.25,-215 520.25,-221 514.25,-227 508.25,-227 508.25,-227 391.75,-227 391.75,-227 385.75,-227 379.75,-221 379.75,-215 379.75,-215 379.75,-20 379.75,-20 379.75,-14 385.75,-8 391.75,-8"/>
22
+ <text xml:space="preserve" text-anchor="middle" x="450" y="-204" font-family="sans-Serif" font-size="20.00" fill="#fde68a">Service Enum</text>
23
+ </g>
24
+ <g id="clust3" class="cluster">
25
+ <title>cluster_auth</title>
26
+ <path fill="#450a0a" stroke="#b91c1c" d="M602.25,-8C602.25,-8 711.25,-8 711.25,-8 717.25,-8 723.25,-14 723.25,-20 723.25,-20 723.25,-147 723.25,-147 723.25,-153 717.25,-159 711.25,-159 711.25,-159 602.25,-159 602.25,-159 596.25,-159 590.25,-153 590.25,-147 590.25,-147 590.25,-20 590.25,-20 590.25,-14 596.25,-8 602.25,-8"/>
27
+ <text xml:space="preserve" text-anchor="middle" x="656.75" y="-136" font-family="sans-Serif" font-size="20.00" fill="#fecaca">Auth / Exploit</text>
28
+ </g>
29
+ <g id="clust4" class="cluster">
30
+ <title>cluster_cloud</title>
31
+ <path fill="#2e1065" stroke="#6d28d9" d="M805.25,-8C805.25,-8 885.25,-8 885.25,-8 891.25,-8 897.25,-14 897.25,-20 897.25,-20 897.25,-147 897.25,-147 897.25,-153 891.25,-159 885.25,-159 885.25,-159 805.25,-159 805.25,-159 799.25,-159 793.25,-153 793.25,-147 793.25,-147 793.25,-20 793.25,-20 793.25,-14 799.25,-8 805.25,-8"/>
32
+ <text xml:space="preserve" text-anchor="middle" x="845.25" y="-136" font-family="sans-Serif" font-size="20.00" fill="#ddd6fe">Cloud / CI</text>
33
+ </g>
34
+ <!-- CIDR -->
13
35
  <g id="node1" class="node">
14
- <title>Targets</title>
15
- <path fill="none" stroke="black" d="M155.75,-482C155.75,-482 76,-482 76,-482 70,-482 64,-476 64,-470 64,-470 64,-458 64,-458 64,-452 70,-446 76,-446 76,-446 155.75,-446 155.75,-446 161.75,-446 167.75,-452 167.75,-458 167.75,-458 167.75,-470 167.75,-470 167.75,-476 161.75,-482 155.75,-482"/>
16
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-465.95" font-family="Arial" font-size="9.00">Targets</text>
17
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-455.45" font-family="Arial" font-size="9.00">(IPs, Domains, ASNs)</text>
36
+ <title>CIDR</title>
37
+ <path fill="#7dd3fc" stroke="#334155" stroke-width="1.3" d="M58.75,-154C58.75,-154 12,-154 12,-154 6,-154 0,-148 0,-142 0,-142 0,-130 0,-130 0,-124 6,-118 12,-118 12,-118 58.75,-118 58.75,-118 64.75,-118 70.75,-124 70.75,-130 70.75,-130 70.75,-142 70.75,-142 70.75,-148 64.75,-154 58.75,-154"/>
38
+ <text xml:space="preserve" text-anchor="middle" x="35.38" y="-138.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">CIDR / ASN</text>
39
+ <text xml:space="preserve" text-anchor="middle" x="35.38" y="-126.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">scope</text>
18
40
  </g>
19
- <!-- Discovery -->
41
+ <!-- Nmap -->
20
42
  <g id="node2" class="node">
21
- <title>Discovery</title>
22
- <path fill="none" stroke="black" d="M174.12,-410C174.12,-410 57.62,-410 57.62,-410 51.62,-410 45.62,-404 45.62,-398 45.62,-398 45.62,-382.5 45.62,-382.5 45.62,-376.5 51.62,-370.5 57.62,-370.5 57.62,-370.5 174.12,-370.5 174.12,-370.5 180.12,-370.5 186.12,-376.5 186.12,-382.5 186.12,-382.5 186.12,-398 186.12,-398 186.12,-404 180.12,-410 174.12,-410"/>
23
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-397.45" font-family="Arial" font-size="9.00">Discovery</text>
24
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-386.95" font-family="Arial" font-size="9.00">(NmapIt, pwn_nmap_discover,</text>
25
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-376.45" font-family="Arial" font-size="9.00">Shodan, IPInfo, crt.sh)</text>
43
+ <title>Nmap</title>
44
+ <path fill="#6ee7b7" stroke="#334155" stroke-width="1.3" d="M289.75,-120C289.75,-120 168.75,-120 168.75,-120 162.75,-120 156.75,-114 156.75,-108 156.75,-108 156.75,-96 156.75,-96 156.75,-90 162.75,-84 168.75,-84 168.75,-84 289.75,-84 289.75,-84 295.75,-84 301.75,-90 301.75,-96 301.75,-96 301.75,-108 301.75,-108 301.75,-114 295.75,-120 289.75,-120"/>
45
+ <text xml:space="preserve" text-anchor="middle" x="229.25" y="-104.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">NmapIt</text>
46
+ <text xml:space="preserve" text-anchor="middle" x="229.25" y="-92.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">pwn_nmap_discover_tcp_udp</text>
26
47
  </g>
27
- <!-- Targets&#45;&gt;Discovery -->
48
+ <!-- CIDR&#45;&gt;Nmap -->
28
49
  <g id="edge1" class="edge">
29
- <title>Targets&#45;&gt;Discovery</title>
30
- <path fill="none" stroke="black" d="M115.88,-445.63C115.88,-438.5 115.88,-430.02 115.88,-421.91"/>
31
- <polygon fill="black" stroke="black" points="119.38,-421.99 115.88,-411.99 112.38,-421.99 119.38,-421.99"/>
50
+ <title>CIDR&#45;&gt;Nmap</title>
51
+ <path fill="none" stroke="#38bdf8" stroke-width="1.3" d="M71.12,-129.84C92.28,-126.09 120.26,-121.14 146.74,-116.44"/>
52
+ <polygon fill="#38bdf8" stroke="#38bdf8" stroke-width="1.3" points="147.08,-119.23 154.47,-115.07 146.1,-113.71 147.08,-119.23"/>
32
53
  </g>
33
- <!-- Enum -->
54
+ <!-- Packet -->
34
55
  <g id="node3" class="node">
35
- <title>Enum</title>
36
- <path fill="none" stroke="black" d="M165.12,-334.5C165.12,-334.5 66.62,-334.5 66.62,-334.5 60.62,-334.5 54.62,-328.5 54.62,-322.5 54.62,-322.5 54.62,-310.5 54.62,-310.5 54.62,-304.5 60.62,-298.5 66.62,-298.5 66.62,-298.5 165.12,-298.5 165.12,-298.5 171.12,-298.5 177.12,-304.5 177.12,-310.5 177.12,-310.5 177.12,-322.5 177.12,-322.5 177.12,-328.5 171.12,-334.5 165.12,-334.5"/>
37
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-318.45" font-family="Arial" font-size="9.00">Service Enum</text>
38
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-307.95" font-family="Arial" font-size="9.00">(portscan, version, scripts)</text>
56
+ <title>Packet</title>
57
+ <path fill="#6ee7b7" stroke="#334155" stroke-width="1.3" d="M259.75,-188C259.75,-188 198.75,-188 198.75,-188 192.75,-188 186.75,-182 186.75,-176 186.75,-176 186.75,-164 186.75,-164 186.75,-158 192.75,-152 198.75,-152 198.75,-152 259.75,-152 259.75,-152 265.75,-152 271.75,-158 271.75,-164 271.75,-164 271.75,-176 271.75,-176 271.75,-182 265.75,-188 259.75,-188"/>
58
+ <text xml:space="preserve" text-anchor="middle" x="229.25" y="-172.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">Plugins::Packet</text>
59
+ <text xml:space="preserve" text-anchor="middle" x="229.25" y="-160.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">raw craft / sniff</text>
39
60
  </g>
40
- <!-- Discovery&#45;&gt;Enum -->
61
+ <!-- CIDR&#45;&gt;Packet -->
41
62
  <g id="edge2" class="edge">
42
- <title>Discovery&#45;&gt;Enum</title>
43
- <path fill="none" stroke="black" d="M115.88,-370.02C115.88,-362.75 115.88,-354.29 115.88,-346.33"/>
44
- <polygon fill="black" stroke="black" points="119.38,-346.33 115.88,-336.33 112.38,-346.33 119.38,-346.33"/>
63
+ <title>CIDR&#45;&gt;Packet</title>
64
+ <path fill="none" stroke="#38bdf8" stroke-width="1.3" d="M71.12,-142.16C100.61,-147.38 143.33,-154.95 176.79,-160.88"/>
65
+ <polygon fill="#38bdf8" stroke="#38bdf8" stroke-width="1.3" points="176.1,-163.6 184.47,-162.24 177.08,-158.09 176.1,-163.6"/>
45
66
  </g>
46
- <!-- Auth -->
67
+ <!-- Sock -->
47
68
  <g id="node4" class="node">
48
- <title>Auth</title>
49
- <path fill="none" stroke="black" d="M151.25,-262.5C151.25,-262.5 80.5,-262.5 80.5,-262.5 74.5,-262.5 68.5,-256.5 68.5,-250.5 68.5,-250.5 68.5,-235 68.5,-235 68.5,-229 74.5,-223 80.5,-223 80.5,-223 151.25,-223 151.25,-223 157.25,-223 163.25,-229 163.25,-235 163.25,-235 163.25,-250.5 163.25,-250.5 163.25,-256.5 157.25,-262.5 151.25,-262.5"/>
50
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-249.95" font-family="Arial" font-size="9.00">Auth Testing</text>
51
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-239.45" font-family="Arial" font-size="9.00">(basic_auth, DAOs,</text>
52
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-228.95" font-family="Arial" font-size="9.00">credential spray)</text>
69
+ <title>Sock</title>
70
+ <path fill="#fcd34d" stroke="#334155" stroke-width="1.3" d="M475.88,-52C475.88,-52 423.12,-52 423.12,-52 417.12,-52 411.12,-46 411.12,-40 411.12,-40 411.12,-28 411.12,-28 411.12,-22 417.12,-16 423.12,-16 423.12,-16 475.88,-16 475.88,-16 481.88,-16 487.88,-22 487.88,-28 487.88,-28 487.88,-40 487.88,-40 487.88,-46 481.88,-52 475.88,-52"/>
71
+ <text xml:space="preserve" text-anchor="middle" x="449.5" y="-36.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">Plugins::Sock</text>
72
+ <text xml:space="preserve" text-anchor="middle" x="449.5" y="-24.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">banner grab</text>
53
73
  </g>
54
- <!-- Enum&#45;&gt;Auth -->
74
+ <!-- Nmap&#45;&gt;Sock -->
55
75
  <g id="edge3" class="edge">
56
- <title>Enum&#45;&gt;Auth</title>
57
- <path fill="none" stroke="black" d="M115.88,-298.13C115.88,-291 115.88,-282.52 115.88,-274.41"/>
58
- <polygon fill="black" stroke="black" points="119.38,-274.49 115.88,-264.49 112.38,-274.49 119.38,-274.49"/>
76
+ <title>Nmap&#45;&gt;Sock</title>
77
+ <path fill="none" stroke="#f59e0b" stroke-width="1.3" d="M289.89,-83.42C324.92,-72.5 368.59,-58.9 401.24,-48.73"/>
78
+ <polygon fill="#f59e0b" stroke="#f59e0b" stroke-width="1.3" points="401.88,-51.46 408.68,-46.41 400.21,-46.11 401.88,-51.46"/>
59
79
  </g>
60
- <!-- VulnScan -->
80
+ <!-- DAO -->
61
81
  <g id="node5" class="node">
62
- <title>VulnScan</title>
63
- <path fill="none" stroke="black" d="M164.75,-187C164.75,-187 67,-187 67,-187 61,-187 55,-181 55,-175 55,-175 55,-159.5 55,-159.5 55,-153.5 61,-147.5 67,-147.5 67,-147.5 164.75,-147.5 164.75,-147.5 170.75,-147.5 176.75,-153.5 176.75,-159.5 176.75,-159.5 176.75,-175 176.75,-175 176.75,-181 170.75,-187 164.75,-187"/>
64
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-174.45" font-family="Arial" font-size="9.00">Vuln Scanning</text>
65
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-163.95" font-family="Arial" font-size="9.00">(NessusCloud, OpenVAS,</text>
66
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-153.45" font-family="Arial" font-size="9.00">Nexpose, Zaproxy)</text>
82
+ <title>DAO</title>
83
+ <path fill="#fcd34d" stroke="#334155" stroke-width="1.3" d="M491.62,-120C491.62,-120 407.38,-120 407.38,-120 401.38,-120 395.38,-114 395.38,-108 395.38,-108 395.38,-96 395.38,-96 395.38,-90 401.38,-84 407.38,-84 407.38,-84 491.62,-84 491.62,-84 497.62,-84 503.62,-90 503.62,-96 503.62,-96 503.62,-108 503.62,-108 503.62,-114 497.62,-120 491.62,-120"/>
84
+ <text xml:space="preserve" text-anchor="middle" x="449.5" y="-104.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">DAO::LDAP · Mongo</text>
85
+ <text xml:space="preserve" text-anchor="middle" x="449.5" y="-92.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">Postgres · SQLite3</text>
67
86
  </g>
68
- <!-- Auth&#45;&gt;VulnScan -->
87
+ <!-- Nmap&#45;&gt;DAO -->
69
88
  <g id="edge4" class="edge">
70
- <title>Auth&#45;&gt;VulnScan</title>
71
- <path fill="none" stroke="black" d="M115.88,-222.82C115.88,-215.51 115.88,-206.95 115.88,-198.81"/>
72
- <polygon fill="black" stroke="black" points="119.38,-198.88 115.88,-188.88 112.38,-198.88 119.38,-198.88"/>
89
+ <title>Nmap&#45;&gt;DAO</title>
90
+ <path fill="none" stroke="#f59e0b" stroke-width="1.3" d="M302.32,-102C329.07,-102 359.2,-102 385.12,-102"/>
91
+ <polygon fill="#f59e0b" stroke="#f59e0b" stroke-width="1.3" points="384.86,-104.8 392.86,-102 384.86,-99.2 384.86,-104.8"/>
73
92
  </g>
74
- <!-- Packet -->
93
+ <!-- MQ -->
75
94
  <g id="node6" class="node">
76
- <title>Packet</title>
77
- <path fill="none" stroke="black" d="M97.75,-111.5C97.75,-111.5 12,-111.5 12,-111.5 6,-111.5 0,-105.5 0,-99.5 0,-99.5 0,-84 0,-84 0,-78 6,-72 12,-72 12,-72 97.75,-72 97.75,-72 103.75,-72 109.75,-78 109.75,-84 109.75,-84 109.75,-99.5 109.75,-99.5 109.75,-105.5 103.75,-111.5 97.75,-111.5"/>
78
- <text xml:space="preserve" text-anchor="middle" x="54.88" y="-98.95" font-family="Arial" font-size="9.00">Packet Crafting</text>
79
- <text xml:space="preserve" text-anchor="middle" x="54.88" y="-88.45" font-family="Arial" font-size="9.00">(PWN::Plugins::Packet,</text>
80
- <text xml:space="preserve" text-anchor="middle" x="54.88" y="-77.95" font-family="Arial" font-size="9.00">Sock, Tor)</text>
95
+ <title>MQ</title>
96
+ <path fill="#fcd34d" stroke="#334155" stroke-width="1.3" d="M484.88,-188C484.88,-188 414.12,-188 414.12,-188 408.12,-188 402.12,-182 402.12,-176 402.12,-176 402.12,-164 402.12,-164 402.12,-158 408.12,-152 414.12,-152 414.12,-152 484.88,-152 484.88,-152 490.88,-152 496.88,-158 496.88,-164 496.88,-164 496.88,-176 496.88,-176 496.88,-182 490.88,-188 484.88,-188"/>
97
+ <text xml:space="preserve" text-anchor="middle" x="449.5" y="-172.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">RabbitMQ</text>
98
+ <text xml:space="preserve" text-anchor="middle" x="449.5" y="-160.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">Slack · IRC · Mail</text>
81
99
  </g>
82
- <!-- VulnScan&#45;&gt;Packet -->
100
+ <!-- Packet&#45;&gt;MQ -->
83
101
  <g id="edge5" class="edge">
84
- <title>VulnScan&#45;&gt;Packet</title>
85
- <path fill="none" stroke="black" d="M100.17,-147.32C93.39,-139.16 85.32,-129.44 77.89,-120.48"/>
86
- <polygon fill="black" stroke="black" points="80.79,-118.49 71.71,-113.03 75.4,-122.96 80.79,-118.49"/>
102
+ <title>Packet&#45;&gt;MQ</title>
103
+ <path fill="none" stroke="#f59e0b" stroke-width="1.3" d="M272.33,-170C306.33,-170 354.5,-170 391.88,-170"/>
104
+ <polygon fill="#f59e0b" stroke="#f59e0b" stroke-width="1.3" points="391.66,-172.8 399.66,-170 391.66,-167.2 391.66,-172.8"/>
87
105
  </g>
88
- <!-- Infra -->
106
+ <!-- MSF -->
89
107
  <g id="node7" class="node">
90
- <title>Infra</title>
91
- <path fill="none" stroke="black" d="M215.5,-111.5C215.5,-111.5 140.25,-111.5 140.25,-111.5 134.25,-111.5 128.25,-105.5 128.25,-99.5 128.25,-99.5 128.25,-84 128.25,-84 128.25,-78 134.25,-72 140.25,-72 140.25,-72 215.5,-72 215.5,-72 221.5,-72 227.5,-78 227.5,-84 227.5,-84 227.5,-99.5 227.5,-99.5 227.5,-105.5 221.5,-111.5 215.5,-111.5"/>
92
- <text xml:space="preserve" text-anchor="middle" x="177.88" y="-98.95" font-family="Arial" font-size="9.00">Infra Specific</text>
93
- <text xml:space="preserve" text-anchor="middle" x="177.88" y="-88.45" font-family="Arial" font-size="9.00">(AWS, Jenkins, Jira,</text>
94
- <text xml:space="preserve" text-anchor="middle" x="177.88" y="-77.95" font-family="Arial" font-size="9.00">Vsphere, RabbitMQ)</text>
108
+ <title>MSF</title>
109
+ <path fill="#fda4af" stroke="#334155" stroke-width="1.3" d="M694.62,-52C694.62,-52 617.88,-52 617.88,-52 611.88,-52 605.88,-46 605.88,-40 605.88,-40 605.88,-28 605.88,-28 605.88,-22 611.88,-16 617.88,-16 617.88,-16 694.62,-16 694.62,-16 700.62,-16 706.62,-22 706.62,-28 706.62,-28 706.62,-40 706.62,-40 706.62,-46 700.62,-52 694.62,-52"/>
110
+ <text xml:space="preserve" text-anchor="middle" x="656.25" y="-36.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">Metasploit</text>
111
+ <text xml:space="preserve" text-anchor="middle" x="656.25" y="-24.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">msf_postgres_login</text>
95
112
  </g>
96
- <!-- VulnScan&#45;&gt;Infra -->
97
- <g id="edge7" class="edge">
98
- <title>VulnScan&#45;&gt;Infra</title>
99
- <path fill="none" stroke="black" d="M131.84,-147.32C138.73,-139.16 146.93,-129.44 154.48,-120.48"/>
100
- <polygon fill="black" stroke="black" points="157,-122.93 160.77,-113.03 151.65,-118.41 157,-122.93"/>
113
+ <!-- Sock&#45;&gt;MSF -->
114
+ <g id="edge6" class="edge">
115
+ <title>Sock&#45;&gt;MSF</title>
116
+ <path fill="none" stroke="#fb7185" stroke-width="1.3" d="M488.05,-34C518.24,-34 561.18,-34 595.99,-34"/>
117
+ <polygon fill="#fb7185" stroke="#fb7185" stroke-width="1.3" points="595.61,-36.8 603.61,-34 595.61,-31.2 595.61,-36.8"/>
101
118
  </g>
102
- <!-- ExploitNet -->
119
+ <!-- Auth -->
103
120
  <g id="node8" class="node">
104
- <title>ExploitNet</title>
105
- <path fill="none" stroke="black" d="M146,-36C146,-36 85.75,-36 85.75,-36 79.75,-36 73.75,-30 73.75,-24 73.75,-24 73.75,-12 73.75,-12 73.75,-6 79.75,0 85.75,0 85.75,0 146,0 146,0 152,0 158,-6 158,-12 158,-12 158,-24 158,-24 158,-30 152,-36 146,-36"/>
106
- <text xml:space="preserve" text-anchor="middle" x="115.88" y="-14.7" font-family="Arial" font-size="9.00">Network Exploits</text>
121
+ <title>Auth</title>
122
+ <path fill="#fda4af" stroke="#334155" stroke-width="1.3" d="M697.62,-120C697.62,-120 614.88,-120 614.88,-120 608.88,-120 602.88,-114 602.88,-108 602.88,-108 602.88,-96 602.88,-96 602.88,-90 608.88,-84 614.88,-84 614.88,-84 697.62,-84 697.62,-84 703.62,-84 709.62,-90 709.62,-96 709.62,-96 709.62,-108 709.62,-108 709.62,-114 703.62,-120 697.62,-120"/>
123
+ <text xml:space="preserve" text-anchor="middle" x="656.25" y="-104.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">BasicAuth · OAuth2</text>
124
+ <text xml:space="preserve" text-anchor="middle" x="656.25" y="-92.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">AuthenticationHelper</text>
107
125
  </g>
108
- <!-- Packet&#45;&gt;ExploitNet -->
109
- <g id="edge6" class="edge">
110
- <title>Packet&#45;&gt;ExploitNet</title>
111
- <path fill="none" stroke="black" d="M71.22,-71.52C78.14,-63.39 86.3,-53.79 93.74,-45.04"/>
112
- <polygon fill="black" stroke="black" points="96.36,-47.36 100.17,-37.47 91.03,-42.82 96.36,-47.36"/>
126
+ <!-- DAO&#45;&gt;Auth -->
127
+ <g id="edge7" class="edge">
128
+ <title>DAO&#45;&gt;Auth</title>
129
+ <path fill="none" stroke="#fb7185" stroke-width="1.3" d="M504.03,-102C531.16,-102 564.27,-102 592.59,-102"/>
130
+ <polygon fill="#fb7185" stroke="#fb7185" stroke-width="1.3" points="592.42,-104.8 600.42,-102 592.42,-99.2 592.42,-104.8"/>
113
131
  </g>
114
- <!-- Infra&#45;&gt;ExploitNet -->
132
+ <!-- MQ&#45;&gt;Auth -->
115
133
  <g id="edge8" class="edge">
116
- <title>Infra&#45;&gt;ExploitNet</title>
117
- <path fill="none" stroke="black" d="M161.26,-71.52C154.16,-63.3 145.76,-53.59 138.13,-44.76"/>
118
- <polygon fill="black" stroke="black" points="141.02,-42.74 131.83,-37.46 135.72,-47.32 141.02,-42.74"/>
134
+ <title>MQ&#45;&gt;Auth</title>
135
+ <path fill="none" stroke="#fb7185" stroke-width="1.3" d="M497.47,-154.4C525.83,-144.98 562.3,-132.87 593.03,-122.67"/>
136
+ <polygon fill="#fb7185" stroke="#fb7185" stroke-width="1.3" points="593.79,-125.36 600.5,-120.18 592.02,-120.05 593.79,-125.36"/>
137
+ </g>
138
+ <!-- AWS -->
139
+ <g id="node9" class="node">
140
+ <title>AWS</title>
141
+ <path fill="#c4b5fd" stroke="#334155" stroke-width="1.3" d="M872.38,-52C872.38,-52 818.12,-52 818.12,-52 812.12,-52 806.12,-46 806.12,-40 806.12,-40 806.12,-28 806.12,-28 806.12,-22 812.12,-16 818.12,-16 818.12,-16 872.38,-16 872.38,-16 878.38,-16 884.38,-22 884.38,-28 884.38,-28 884.38,-40 884.38,-40 884.38,-46 878.38,-52 872.38,-52"/>
142
+ <text xml:space="preserve" text-anchor="middle" x="845.25" y="-36.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">PWN::AWS::*</text>
143
+ <text xml:space="preserve" text-anchor="middle" x="845.25" y="-24.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">90 services</text>
144
+ </g>
145
+ <!-- MSF&#45;&gt;AWS -->
146
+ <g id="edge9" class="edge">
147
+ <title>MSF&#45;&gt;AWS</title>
148
+ <path fill="none" stroke="#a78bfa" stroke-width="1.3" d="M706.87,-34C734.43,-34 768.57,-34 795.92,-34"/>
149
+ <polygon fill="#a78bfa" stroke="#a78bfa" stroke-width="1.3" points="795.7,-36.8 803.7,-34 795.7,-31.2 795.7,-36.8"/>
150
+ </g>
151
+ <!-- Jenk -->
152
+ <g id="node10" class="node">
153
+ <title>Jenk</title>
154
+ <path fill="#c4b5fd" stroke="#334155" stroke-width="1.3" d="M877.25,-120C877.25,-120 813.25,-120 813.25,-120 807.25,-120 801.25,-114 801.25,-108 801.25,-108 801.25,-96 801.25,-96 801.25,-90 807.25,-84 813.25,-84 813.25,-84 877.25,-84 877.25,-84 883.25,-84 889.25,-90 889.25,-96 889.25,-96 889.25,-108 889.25,-108 889.25,-114 883.25,-120 877.25,-120"/>
155
+ <text xml:space="preserve" text-anchor="middle" x="845.25" y="-104.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">Plugins::Jenkins</text>
156
+ <text xml:space="preserve" text-anchor="middle" x="845.25" y="-92.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">vSphere · Vault</text>
157
+ </g>
158
+ <!-- Auth&#45;&gt;Jenk -->
159
+ <g id="edge10" class="edge">
160
+ <title>Auth&#45;&gt;Jenk</title>
161
+ <path fill="none" stroke="#a78bfa" stroke-width="1.3" d="M709.84,-102C735.21,-102 765.58,-102 791.03,-102"/>
162
+ <polygon fill="#a78bfa" stroke="#a78bfa" stroke-width="1.3" points="790.91,-104.8 798.91,-102 790.91,-99.2 790.91,-104.8"/>
163
+ </g>
164
+ <!-- Report -->
165
+ <g id="node11" class="node">
166
+ <title>Report</title>
167
+ <path fill="#7dd3fc" stroke="#334155" stroke-width="1.3" d="M1072.25,-86C1072.25,-86 987.25,-86 987.25,-86 981.25,-86 975.25,-80 975.25,-74 975.25,-74 975.25,-62 975.25,-62 975.25,-56 981.25,-50 987.25,-50 987.25,-50 1072.25,-50 1072.25,-50 1078.25,-50 1084.25,-56 1084.25,-62 1084.25,-62 1084.25,-74 1084.25,-74 1084.25,-80 1078.25,-86 1072.25,-86"/>
168
+ <text xml:space="preserve" text-anchor="middle" x="1029.75" y="-64.5" font-family="sans-Serif" font-size="10.00" fill="#0f172a">Reports · DefectDojo</text>
169
+ </g>
170
+ <!-- AWS&#45;&gt;Report -->
171
+ <g id="edge11" class="edge">
172
+ <title>AWS&#45;&gt;Report</title>
173
+ <path fill="none" stroke="#38bdf8" stroke-width="1.3" d="M884.95,-41.21C908.25,-45.55 938.48,-51.18 965.2,-56.16"/>
174
+ <polygon fill="#38bdf8" stroke="#38bdf8" stroke-width="1.3" points="964.56,-58.89 972.94,-57.6 965.59,-53.38 964.56,-58.89"/>
175
+ </g>
176
+ <!-- Jenk&#45;&gt;Report -->
177
+ <g id="edge12" class="edge">
178
+ <title>Jenk&#45;&gt;Report</title>
179
+ <path fill="none" stroke="#38bdf8" stroke-width="1.3" d="M889.5,-93.94C912.02,-89.75 939.99,-84.54 964.94,-79.89"/>
180
+ <polygon fill="#38bdf8" stroke="#38bdf8" stroke-width="1.3" points="965.41,-82.65 972.77,-78.43 964.39,-77.14 965.41,-82.65"/>
119
181
  </g>
120
182
  </g>
121
183
  </svg>