pwn 0.5.682 → 0.5.684
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.
- checksums.yaml +4 -4
- data/README.md +11 -10
- data/documentation/Agent-Tool-Registry.md +13 -9
- data/documentation/CLI-Drivers.md +27 -28
- data/documentation/Configuration.md +7 -5
- data/documentation/Contributing.md +2 -2
- data/documentation/Cron.md +11 -7
- data/documentation/Diagrams.md +2 -2
- data/documentation/General-PWN-Usage.md +1 -1
- data/documentation/Home.md +7 -6
- data/documentation/How-PWN-Works.md +9 -9
- data/documentation/Installation.md +1 -1
- data/documentation/Persistence.md +2 -1
- data/documentation/Plugins.md +3 -3
- data/documentation/Reinforcement-Learning.md +103 -101
- data/documentation/SAST.md +1 -1
- data/documentation/Session-Workflow.md +152 -0
- data/documentation/Sessions.md +2 -1
- data/documentation/Troubleshooting.md +2 -2
- data/documentation/What-is-PWN.md +3 -3
- data/documentation/diagrams/agent-tool-registry.svg +152 -152
- data/documentation/diagrams/cron-scheduling.svg +141 -121
- data/documentation/diagrams/dot/agent-tool-registry.dot +4 -4
- data/documentation/diagrams/dot/cron-scheduling.dot +10 -7
- data/documentation/diagrams/dot/driver-framework.dot +1 -1
- data/documentation/diagrams/dot/overall-pwn-architecture.dot +4 -4
- data/documentation/diagrams/dot/persistence-filesystem.dot +1 -1
- data/documentation/diagrams/dot/plugin-ecosystem.dot +2 -2
- data/documentation/diagrams/dot/task-summarizer.dot +18 -16
- data/documentation/diagrams/driver-framework.svg +1 -1
- data/documentation/diagrams/overall-pwn-architecture.svg +93 -93
- data/documentation/diagrams/persistence-filesystem.svg +4 -4
- data/documentation/diagrams/plugin-ecosystem.svg +101 -100
- data/documentation/diagrams/task-summarizer.svg +166 -156
- data/documentation/pwn-ai-Agent.md +9 -4
- data/lib/pwn/ai/agent/dispatch.rb +52 -1
- data/lib/pwn/ai/agent/loop.rb +198 -159
- data/lib/pwn/ai/agent/open_goal.rb +83 -0
- data/lib/pwn/ai/agent/policy.rb +2 -3
- data/lib/pwn/ai/agent/prompt_builder.rb +16 -13
- data/lib/pwn/ai/agent/registry.rb +6 -9
- data/lib/pwn/ai/agent/tools/sessions.rb +32 -0
- data/lib/pwn/ai/agent/tools/skills.rb +56 -0
- data/lib/pwn/ai/agent.rb +1 -0
- data/lib/pwn/ai/anthropic.rb +0 -1
- data/lib/pwn/ai/gemini.rb +0 -1
- data/lib/pwn/ai/grok.rb +0 -1
- data/lib/pwn/ai/ollama.rb +0 -1
- data/lib/pwn/ai/open_ai.rb +0 -1
- data/lib/pwn/ai/open_web_ui.rb +0 -1
- data/lib/pwn/config.rb +2 -2
- data/lib/pwn/cron.rb +18 -5
- data/lib/pwn/plugins/repl.rb +43 -1
- data/lib/pwn/plugins/tty_spinner.rb +109 -13
- data/lib/pwn/sessions.rb +82 -0
- data/lib/pwn/version.rb +1 -1
- data/spec/integration/persistence_roundtrip_spec.rb +2 -1
- data/spec/integration/prompt_builder_spec.rb +3 -3
- data/spec/integration/reinforced_feedback_loop_spec.rb +6 -11
- data/spec/lib/pwn/ai/agent/dispatch_spec.rb +38 -82
- data/spec/lib/pwn/ai/agent/loop_spec.rb +284 -11
- data/spec/lib/pwn/ai/agent/open_goal_spec.rb +37 -0
- data/spec/lib/pwn/ai/agent/prompt_builder_spec.rb +7 -3
- data/spec/lib/pwn/ai/agent/registry_spec.rb +16 -9
- data/spec/lib/pwn/ai/agent/tools/sessions_spec.rb +5 -0
- data/spec/lib/pwn/ai/agent/tools/skills_spec.rb +16 -0
- data/spec/lib/pwn/ai/red_team/test_case_engine_spec.rb +20 -0
- data/spec/lib/pwn/cron_spec.rb +13 -3
- data/spec/lib/pwn/plugins/repl_spec.rb +26 -0
- data/spec/lib/pwn/plugins/tty_spinner_spec.rb +44 -0
- data/spec/lib/pwn/sessions_spec.rb +29 -0
- data/spec/spec_helper.rb +6 -0
- data/third_party/pwn_rdoc.jsonl +28 -1
- metadata +4 -1
|
@@ -4,273 +4,274 @@
|
|
|
4
4
|
<!-- Generated by graphviz version 14.1.2 (0)
|
|
5
5
|
-->
|
|
6
6
|
<!-- Title: PWN_Plugins Pages: 1 -->
|
|
7
|
-
<svg width="623pt" height="
|
|
8
|
-
viewBox="0.00 0.00 623.00
|
|
9
|
-
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(43.2
|
|
7
|
+
<svg width="623pt" height="680pt"
|
|
8
|
+
viewBox="0.00 0.00 623.00 680.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 636.7)">
|
|
10
10
|
<title>PWN_Plugins</title>
|
|
11
|
-
<polygon fill="#0f172a" stroke="none" points="-43.2,43.2 -43.2,-
|
|
12
|
-
<text xml:space="preserve" text-anchor="start" x="80.25" y="-
|
|
11
|
+
<polygon fill="#0f172a" stroke="none" points="-43.2,43.2 -43.2,-636.7 580.2,-636.7 580.2,43.2 -43.2,43.2"/>
|
|
12
|
+
<text xml:space="preserve" text-anchor="start" x="80.25" y="-571.5" font-family="sans-Serif" font-weight="bold" font-size="20.00" fill="#e2e8f0">PWN::Plugins - 67 Modules by Category</text>
|
|
13
13
|
<g id="clust1" class="cluster">
|
|
14
14
|
<title>cluster_cat</title>
|
|
15
15
|
</g>
|
|
16
16
|
<!-- Root -->
|
|
17
17
|
<g id="node1" class="node">
|
|
18
18
|
<title>Root</title>
|
|
19
|
-
<path fill="#7dd3fc" stroke="#334155" stroke-width="2" d="M88,-
|
|
20
|
-
<text xml:space="preserve" text-anchor="middle" x="50" y="-
|
|
19
|
+
<path fill="#7dd3fc" stroke="#334155" stroke-width="2" d="M88,-303.25C88,-303.25 12,-303.25 12,-303.25 6,-303.25 0,-297.25 0,-291.25 0,-291.25 0,-279.25 0,-279.25 0,-273.25 6,-267.25 12,-267.25 12,-267.25 88,-267.25 88,-267.25 94,-267.25 100,-273.25 100,-279.25 100,-279.25 100,-291.25 100,-291.25 100,-297.25 94,-303.25 88,-303.25"/>
|
|
20
|
+
<text xml:space="preserve" text-anchor="middle" x="50" y="-279.82" font-family="sans-Serif" font-size="14.00" fill="#0f172a">PWN::Plugins</text>
|
|
21
21
|
</g>
|
|
22
22
|
<!-- Web -->
|
|
23
23
|
<g id="node2" class="node">
|
|
24
24
|
<title>Web</title>
|
|
25
|
-
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M260.75,-
|
|
26
|
-
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-
|
|
25
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M260.75,-546.25C260.75,-546.25 220,-546.25 220,-546.25 214,-546.25 208,-540.25 208,-534.25 208,-534.25 208,-522.25 208,-522.25 208,-516.25 214,-510.25 220,-510.25 220,-510.25 260.75,-510.25 260.75,-510.25 266.75,-510.25 272.75,-516.25 272.75,-522.25 272.75,-522.25 272.75,-534.25 272.75,-534.25 272.75,-540.25 266.75,-546.25 260.75,-546.25"/>
|
|
26
|
+
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-524.95" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Web / Proxy</text>
|
|
27
27
|
</g>
|
|
28
28
|
<!-- Root->Web -->
|
|
29
29
|
<g id="edge1" class="edge">
|
|
30
30
|
<title>Root->Web</title>
|
|
31
|
-
<path fill="none" stroke="#94a3b8" d="M60.81,-
|
|
32
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="202.88,-
|
|
31
|
+
<path fill="none" stroke="#94a3b8" d="M60.81,-303.98C82.2,-343.65 136.29,-437.72 200,-501.25 201.43,-502.68 202.95,-504.08 204.52,-505.44"/>
|
|
32
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="202.88,-506.82 208.86,-508.98 205.53,-503.56 202.88,-506.82"/>
|
|
33
33
|
</g>
|
|
34
34
|
<!-- Net -->
|
|
35
35
|
<g id="node3" class="node">
|
|
36
36
|
<title>Net</title>
|
|
37
|
-
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M255.38,-
|
|
38
|
-
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-
|
|
37
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M255.38,-492.25C255.38,-492.25 225.38,-492.25 225.38,-492.25 219.38,-492.25 213.38,-486.25 213.38,-480.25 213.38,-480.25 213.38,-468.25 213.38,-468.25 213.38,-462.25 219.38,-456.25 225.38,-456.25 225.38,-456.25 255.38,-456.25 255.38,-456.25 261.38,-456.25 267.38,-462.25 267.38,-468.25 267.38,-468.25 267.38,-480.25 267.38,-480.25 267.38,-486.25 261.38,-492.25 255.38,-492.25"/>
|
|
38
|
+
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-470.95" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Network</text>
|
|
39
39
|
</g>
|
|
40
40
|
<!-- Root->Net -->
|
|
41
41
|
<g id="edge2" class="edge">
|
|
42
42
|
<title>Root->Net</title>
|
|
43
|
-
<path fill="none" stroke="#94a3b8" d="M65.87,-
|
|
44
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="205.63,-
|
|
43
|
+
<path fill="none" stroke="#94a3b8" d="M65.87,-304.01C91.39,-335.58 146,-400.45 200,-447.25 202.25,-449.2 204.65,-451.14 207.11,-453.03"/>
|
|
44
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="205.63,-454.55 211.7,-456.43 208.13,-451.17 205.63,-454.55"/>
|
|
45
45
|
</g>
|
|
46
46
|
<!-- Xpl -->
|
|
47
47
|
<g id="node4" class="node">
|
|
48
48
|
<title>Xpl</title>
|
|
49
|
-
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M260.38,-
|
|
50
|
-
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-
|
|
49
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M260.38,-438.25C260.38,-438.25 220.38,-438.25 220.38,-438.25 214.38,-438.25 208.38,-432.25 208.38,-426.25 208.38,-426.25 208.38,-414.25 208.38,-414.25 208.38,-408.25 214.38,-402.25 220.38,-402.25 220.38,-402.25 260.38,-402.25 260.38,-402.25 266.38,-402.25 272.38,-408.25 272.38,-414.25 272.38,-414.25 272.38,-426.25 272.38,-426.25 272.38,-432.25 266.38,-438.25 260.38,-438.25"/>
|
|
50
|
+
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-416.95" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Exploitation</text>
|
|
51
51
|
</g>
|
|
52
52
|
<!-- Root->Xpl -->
|
|
53
53
|
<g id="edge3" class="edge">
|
|
54
54
|
<title>Root->Xpl</title>
|
|
55
|
-
<path fill="none" stroke="#94a3b8" d="M76.69,-
|
|
56
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="204.83,-
|
|
55
|
+
<path fill="none" stroke="#94a3b8" d="M76.69,-304.19C106.27,-325.91 156.4,-362.5 200,-393.25 201.96,-394.64 203.99,-396.05 206.04,-397.48"/>
|
|
56
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="204.83,-399.2 210.95,-400.89 207.22,-395.74 204.83,-399.2"/>
|
|
57
57
|
</g>
|
|
58
58
|
<!-- Osint -->
|
|
59
59
|
<g id="node5" class="node">
|
|
60
60
|
<title>Osint</title>
|
|
61
|
-
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M255.38,-
|
|
62
|
-
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-
|
|
61
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M255.38,-384.25C255.38,-384.25 225.38,-384.25 225.38,-384.25 219.38,-384.25 213.38,-378.25 213.38,-372.25 213.38,-372.25 213.38,-360.25 213.38,-360.25 213.38,-354.25 219.38,-348.25 225.38,-348.25 225.38,-348.25 255.38,-348.25 255.38,-348.25 261.38,-348.25 267.38,-354.25 267.38,-360.25 267.38,-360.25 267.38,-372.25 267.38,-372.25 267.38,-378.25 261.38,-384.25 255.38,-384.25"/>
|
|
62
|
+
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-362.95" font-family="sans-Serif" font-size="9.00" fill="#0f172a">OSINT</text>
|
|
63
63
|
</g>
|
|
64
64
|
<!-- Root->Osint -->
|
|
65
65
|
<g id="edge4" class="edge">
|
|
66
66
|
<title>Root->Osint</title>
|
|
67
|
-
<path fill="none" stroke="#94a3b8" d="M95.17,-
|
|
68
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="205.19,-
|
|
67
|
+
<path fill="none" stroke="#94a3b8" d="M95.17,-304.24C129.14,-318.85 175.33,-338.71 206.19,-351.98"/>
|
|
68
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="205.19,-353.84 211.53,-354.28 206.85,-349.98 205.19,-353.84"/>
|
|
69
69
|
</g>
|
|
70
70
|
<!-- Data -->
|
|
71
71
|
<g id="node6" class="node">
|
|
72
72
|
<title>Data</title>
|
|
73
|
-
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M259.25,-
|
|
74
|
-
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-
|
|
73
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M259.25,-330.25C259.25,-330.25 221.5,-330.25 221.5,-330.25 215.5,-330.25 209.5,-324.25 209.5,-318.25 209.5,-318.25 209.5,-306.25 209.5,-306.25 209.5,-300.25 215.5,-294.25 221.5,-294.25 221.5,-294.25 259.25,-294.25 259.25,-294.25 265.25,-294.25 271.25,-300.25 271.25,-306.25 271.25,-306.25 271.25,-318.25 271.25,-318.25 271.25,-324.25 265.25,-330.25 259.25,-330.25"/>
|
|
74
|
+
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-308.95" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Data / DAO</text>
|
|
75
75
|
</g>
|
|
76
76
|
<!-- Root->Data -->
|
|
77
77
|
<g id="edge5" class="edge">
|
|
78
78
|
<title>Root->Data</title>
|
|
79
|
-
<path fill="none" stroke="#94a3b8" d="M100.99,-
|
|
80
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="201.19,-
|
|
79
|
+
<path fill="none" stroke="#94a3b8" d="M100.99,-292.41C132.64,-296.95 172.9,-302.72 201.83,-306.87"/>
|
|
80
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="201.19,-308.9 207.43,-307.67 201.79,-304.74 201.19,-308.9"/>
|
|
81
81
|
</g>
|
|
82
82
|
<!-- Auth -->
|
|
83
83
|
<g id="node7" class="node">
|
|
84
84
|
<title>Auth</title>
|
|
85
|
-
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M255.38,-
|
|
86
|
-
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-
|
|
85
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M255.38,-276.25C255.38,-276.25 225.38,-276.25 225.38,-276.25 219.38,-276.25 213.38,-270.25 213.38,-264.25 213.38,-264.25 213.38,-252.25 213.38,-252.25 213.38,-246.25 219.38,-240.25 225.38,-240.25 225.38,-240.25 255.38,-240.25 255.38,-240.25 261.38,-240.25 267.38,-246.25 267.38,-252.25 267.38,-252.25 267.38,-264.25 267.38,-264.25 267.38,-270.25 261.38,-276.25 255.38,-276.25"/>
|
|
86
|
+
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-254.95" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Auth</text>
|
|
87
87
|
</g>
|
|
88
88
|
<!-- Root->Auth -->
|
|
89
89
|
<g id="edge6" class="edge">
|
|
90
90
|
<title>Root->Auth</title>
|
|
91
|
-
<path fill="none" stroke="#94a3b8" d="M100.99,-
|
|
92
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="205.84,-
|
|
91
|
+
<path fill="none" stroke="#94a3b8" d="M100.99,-278.09C134.15,-273.33 176.76,-267.23 205.88,-263.05"/>
|
|
92
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="205.84,-265.18 211.48,-262.25 205.25,-261.02 205.84,-265.18"/>
|
|
93
93
|
</g>
|
|
94
94
|
<!-- HW -->
|
|
95
95
|
<g id="node8" class="node">
|
|
96
96
|
<title>HW</title>
|
|
97
|
-
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M256.62,-
|
|
98
|
-
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-
|
|
97
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M256.62,-222.25C256.62,-222.25 224.12,-222.25 224.12,-222.25 218.12,-222.25 212.12,-216.25 212.12,-210.25 212.12,-210.25 212.12,-198.25 212.12,-198.25 212.12,-192.25 218.12,-186.25 224.12,-186.25 224.12,-186.25 256.62,-186.25 256.62,-186.25 262.62,-186.25 268.62,-192.25 268.62,-198.25 268.62,-198.25 268.62,-210.25 268.62,-210.25 268.62,-216.25 262.62,-222.25 256.62,-222.25"/>
|
|
98
|
+
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-200.95" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Hardware</text>
|
|
99
99
|
</g>
|
|
100
100
|
<!-- Root->HW -->
|
|
101
101
|
<g id="edge7" class="edge">
|
|
102
102
|
<title>Root->HW</title>
|
|
103
|
-
<path fill="none" stroke="#94a3b8" d="M95.17,-
|
|
104
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="205.47,-
|
|
103
|
+
<path fill="none" stroke="#94a3b8" d="M95.17,-266.26C128.63,-251.87 173.96,-232.38 204.81,-219.11"/>
|
|
104
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="205.47,-221.11 210.16,-216.81 203.81,-217.26 205.47,-221.11"/>
|
|
105
105
|
</g>
|
|
106
106
|
<!-- CI -->
|
|
107
107
|
<g id="node9" class="node">
|
|
108
108
|
<title>CI</title>
|
|
109
|
-
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M260.75,-
|
|
110
|
-
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-
|
|
109
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M260.75,-168.25C260.75,-168.25 220,-168.25 220,-168.25 214,-168.25 208,-162.25 208,-156.25 208,-156.25 208,-144.25 208,-144.25 208,-138.25 214,-132.25 220,-132.25 220,-132.25 260.75,-132.25 260.75,-132.25 266.75,-132.25 272.75,-138.25 272.75,-144.25 272.75,-144.25 272.75,-156.25 272.75,-156.25 272.75,-162.25 266.75,-168.25 260.75,-168.25"/>
|
|
110
|
+
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-146.95" font-family="sans-Serif" font-size="9.00" fill="#0f172a">CI / DevOps</text>
|
|
111
111
|
</g>
|
|
112
112
|
<!-- Root->CI -->
|
|
113
113
|
<g id="edge8" class="edge">
|
|
114
114
|
<title>Root->CI</title>
|
|
115
|
-
<path fill="none" stroke="#94a3b8" d="M76.69,-
|
|
116
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="207.22,-
|
|
115
|
+
<path fill="none" stroke="#94a3b8" d="M76.69,-266.31C106.27,-244.59 156.4,-208 200,-177.25 201.96,-175.86 203.99,-174.45 206.04,-173.02"/>
|
|
116
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="207.22,-174.76 210.95,-169.61 204.83,-171.3 207.22,-174.76"/>
|
|
117
117
|
</g>
|
|
118
118
|
<!-- Comm -->
|
|
119
119
|
<g id="node10" class="node">
|
|
120
120
|
<title>Comm</title>
|
|
121
|
-
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M255.38,-
|
|
122
|
-
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-
|
|
121
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M255.38,-114.25C255.38,-114.25 225.38,-114.25 225.38,-114.25 219.38,-114.25 213.38,-108.25 213.38,-102.25 213.38,-102.25 213.38,-90.25 213.38,-90.25 213.38,-84.25 219.38,-78.25 225.38,-78.25 225.38,-78.25 255.38,-78.25 255.38,-78.25 261.38,-78.25 267.38,-84.25 267.38,-90.25 267.38,-90.25 267.38,-102.25 267.38,-102.25 267.38,-108.25 261.38,-114.25 255.38,-114.25"/>
|
|
122
|
+
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-92.95" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Comms</text>
|
|
123
123
|
</g>
|
|
124
124
|
<!-- Root->Comm -->
|
|
125
125
|
<g id="edge9" class="edge">
|
|
126
126
|
<title>Root->Comm</title>
|
|
127
|
-
<path fill="none" stroke="#94a3b8" d="M65.87,-
|
|
128
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="208.13,-
|
|
127
|
+
<path fill="none" stroke="#94a3b8" d="M65.87,-266.49C91.39,-234.92 146,-170.05 200,-123.25 202.25,-121.3 204.65,-119.36 207.11,-117.47"/>
|
|
128
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="208.13,-119.33 211.7,-114.07 205.63,-115.95 208.13,-119.33"/>
|
|
129
129
|
</g>
|
|
130
130
|
<!-- Util -->
|
|
131
131
|
<g id="node11" class="node">
|
|
132
132
|
<title>Util</title>
|
|
133
|
-
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M255.38,-
|
|
134
|
-
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-
|
|
133
|
+
<path fill="#6ee7b7" stroke="#334155" stroke-width="1.2" d="M255.38,-60.25C255.38,-60.25 225.38,-60.25 225.38,-60.25 219.38,-60.25 213.38,-54.25 213.38,-48.25 213.38,-48.25 213.38,-36.25 213.38,-36.25 213.38,-30.25 219.38,-24.25 225.38,-24.25 225.38,-24.25 255.38,-24.25 255.38,-24.25 261.38,-24.25 267.38,-30.25 267.38,-36.25 267.38,-36.25 267.38,-48.25 267.38,-48.25 267.38,-54.25 261.38,-60.25 255.38,-60.25"/>
|
|
134
|
+
<text xml:space="preserve" text-anchor="middle" x="240.38" y="-38.95" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Utility</text>
|
|
135
135
|
</g>
|
|
136
136
|
<!-- Root->Util -->
|
|
137
137
|
<g id="edge10" class="edge">
|
|
138
138
|
<title>Root->Util</title>
|
|
139
|
-
<path fill="none" stroke="#94a3b8" d="M60.81,-
|
|
140
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="208.24,-
|
|
139
|
+
<path fill="none" stroke="#94a3b8" d="M60.81,-266.52C82.2,-226.85 136.29,-132.78 200,-69.25 202.18,-67.08 204.55,-64.97 207.02,-62.95"/>
|
|
140
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="208.24,-64.66 211.71,-59.33 205.67,-61.34 208.24,-64.66"/>
|
|
141
141
|
</g>
|
|
142
142
|
<!-- w -->
|
|
143
143
|
<g id="node12" class="node">
|
|
144
144
|
<title>w</title>
|
|
145
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M513.38,-
|
|
146
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
147
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
148
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
145
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M513.38,-550.38C513.38,-550.38 404.38,-550.38 404.38,-550.38 398.38,-550.38 392.38,-544.38 392.38,-538.38 392.38,-538.38 392.38,-522.12 392.38,-522.12 392.38,-516.12 398.38,-510.12 404.38,-510.12 404.38,-510.12 513.38,-510.12 513.38,-510.12 519.38,-510.12 525.38,-516.12 525.38,-522.12 525.38,-522.12 525.38,-538.38 525.38,-538.38 525.38,-544.38 519.38,-550.38 513.38,-550.38"/>
|
|
146
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-537.83" font-family="sans-Serif" font-size="9.00" fill="#0f172a">BurpSuite ⭐ · Zaproxy</text>
|
|
147
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-526.58" font-family="sans-Serif" font-size="9.00" fill="#0f172a">TransparentBrowser · Spider</text>
|
|
148
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-516.08" font-family="sans-Serif" font-size="9.00" fill="#0f172a">OpenAPI · URIScheme</text>
|
|
149
149
|
</g>
|
|
150
150
|
<!-- Web->w -->
|
|
151
151
|
<g id="edge11" class="edge">
|
|
152
152
|
<title>Web->w</title>
|
|
153
|
-
<path fill="none" stroke="#94a3b8" d="M273.32,-
|
|
154
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="384.25,-
|
|
153
|
+
<path fill="none" stroke="#94a3b8" d="M273.32,-528.55C302.43,-528.81 346.52,-529.22 384.31,-529.57"/>
|
|
154
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="384.25,-531.67 390.26,-529.63 384.28,-527.47 384.25,-531.67"/>
|
|
155
155
|
</g>
|
|
156
156
|
<!-- n -->
|
|
157
157
|
<g id="node13" class="node">
|
|
158
158
|
<title>n</title>
|
|
159
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M500.25,-
|
|
160
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
161
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
159
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M500.25,-492.25C500.25,-492.25 417.5,-492.25 417.5,-492.25 411.5,-492.25 405.5,-486.25 405.5,-480.25 405.5,-480.25 405.5,-468.25 405.5,-468.25 405.5,-462.25 411.5,-456.25 417.5,-456.25 417.5,-456.25 500.25,-456.25 500.25,-456.25 506.25,-456.25 512.25,-462.25 512.25,-468.25 512.25,-468.25 512.25,-480.25 512.25,-480.25 512.25,-486.25 506.25,-492.25 500.25,-492.25"/>
|
|
160
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-476.2" font-family="sans-Serif" font-size="9.00" fill="#0f172a">NmapIt · Sock · Packet</text>
|
|
161
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-465.7" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Tor · IPInfo</text>
|
|
162
162
|
</g>
|
|
163
163
|
<!-- Net->n -->
|
|
164
164
|
<g id="edge12" class="edge">
|
|
165
165
|
<title>Net->n</title>
|
|
166
|
-
<path fill="none" stroke="#94a3b8" d="M267.92,-
|
|
167
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="397.49,-
|
|
166
|
+
<path fill="none" stroke="#94a3b8" d="M267.92,-474.25C300.05,-474.25 355.14,-474.25 397.74,-474.25"/>
|
|
167
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="397.49,-476.35 403.49,-474.25 397.49,-472.15 397.49,-476.35"/>
|
|
168
168
|
</g>
|
|
169
169
|
<!-- x -->
|
|
170
170
|
<g id="node14" class="node">
|
|
171
171
|
<title>x</title>
|
|
172
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M489.38,-
|
|
173
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
174
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
172
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M489.38,-438.25C489.38,-438.25 428.38,-438.25 428.38,-438.25 422.38,-438.25 416.38,-432.25 416.38,-426.25 416.38,-426.25 416.38,-414.25 416.38,-414.25 416.38,-408.25 422.38,-402.25 428.38,-402.25 428.38,-402.25 489.38,-402.25 489.38,-402.25 495.38,-402.25 501.38,-408.25 501.38,-414.25 501.38,-414.25 501.38,-426.25 501.38,-426.25 501.38,-432.25 495.38,-438.25 489.38,-438.25"/>
|
|
173
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-422.2" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Metasploit · Fuzz</text>
|
|
174
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-411.7" font-family="sans-Serif" font-size="9.00" fill="#0f172a">BeEF · Assembly</text>
|
|
175
175
|
</g>
|
|
176
176
|
<!-- Xpl->x -->
|
|
177
177
|
<g id="edge13" class="edge">
|
|
178
178
|
<title>Xpl->x</title>
|
|
179
|
-
<path fill="none" stroke="#94a3b8" d="M272.86,-
|
|
180
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="408.44,-
|
|
179
|
+
<path fill="none" stroke="#94a3b8" d="M272.86,-420.25C308.48,-420.25 366.96,-420.25 408.63,-420.25"/>
|
|
180
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="408.44,-422.35 414.44,-420.25 408.44,-418.15 408.44,-422.35"/>
|
|
181
181
|
</g>
|
|
182
182
|
<!-- o -->
|
|
183
183
|
<g id="node15" class="node">
|
|
184
184
|
<title>o</title>
|
|
185
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M495,-
|
|
186
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
187
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
185
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M495,-384.25C495,-384.25 422.75,-384.25 422.75,-384.25 416.75,-384.25 410.75,-378.25 410.75,-372.25 410.75,-372.25 410.75,-360.25 410.75,-360.25 410.75,-354.25 416.75,-348.25 422.75,-348.25 422.75,-348.25 495,-348.25 495,-348.25 501,-348.25 507,-354.25 507,-360.25 507,-360.25 507,-372.25 507,-372.25 507,-378.25 501,-384.25 495,-384.25"/>
|
|
186
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-368.2" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Shodan · Hunter</text>
|
|
187
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-357.7" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Github · HackerOne</text>
|
|
188
188
|
</g>
|
|
189
189
|
<!-- Osint->o -->
|
|
190
190
|
<g id="edge14" class="edge">
|
|
191
191
|
<title>Osint->o</title>
|
|
192
|
-
<path fill="none" stroke="#94a3b8" d="M267.92,-
|
|
193
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="403.02,-
|
|
192
|
+
<path fill="none" stroke="#94a3b8" d="M267.92,-366.25C301.44,-366.25 359.94,-366.25 403.19,-366.25"/>
|
|
193
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="403.02,-368.35 409.02,-366.25 403.02,-364.15 403.02,-368.35"/>
|
|
194
194
|
</g>
|
|
195
195
|
<!-- d -->
|
|
196
196
|
<g id="node16" class="node">
|
|
197
197
|
<title>d</title>
|
|
198
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M518.62,-
|
|
199
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
200
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
198
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M518.62,-330.25C518.62,-330.25 399.12,-330.25 399.12,-330.25 393.12,-330.25 387.12,-324.25 387.12,-318.25 387.12,-318.25 387.12,-306.25 387.12,-306.25 387.12,-300.25 393.12,-294.25 399.12,-294.25 399.12,-294.25 518.62,-294.25 518.62,-294.25 524.62,-294.25 530.62,-300.25 530.62,-306.25 530.62,-306.25 530.62,-318.25 530.62,-318.25 530.62,-324.25 524.62,-330.25 518.62,-330.25"/>
|
|
199
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-314.2" font-family="sans-Serif" font-size="9.00" fill="#0f172a">DAO::LDAP/Mongo/PG/SQLite</text>
|
|
200
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-303.7" font-family="sans-Serif" font-size="9.00" fill="#0f172a">JSONPathify · PDFParse · OCR</text>
|
|
201
201
|
</g>
|
|
202
202
|
<!-- Data->d -->
|
|
203
203
|
<g id="edge15" class="edge">
|
|
204
204
|
<title>Data->d</title>
|
|
205
|
-
<path fill="none" stroke="#94a3b8" d="M271.48,-
|
|
206
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="379.01,-
|
|
205
|
+
<path fill="none" stroke="#94a3b8" d="M271.48,-312.25C299.25,-312.25 341.73,-312.25 379.12,-312.25"/>
|
|
206
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="379.01,-314.35 385.01,-312.25 379.01,-310.15 379.01,-314.35"/>
|
|
207
207
|
</g>
|
|
208
208
|
<!-- a -->
|
|
209
209
|
<g id="node17" class="node">
|
|
210
210
|
<title>a</title>
|
|
211
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M511.5,-
|
|
212
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
213
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
211
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M511.5,-276.25C511.5,-276.25 406.25,-276.25 406.25,-276.25 400.25,-276.25 394.25,-270.25 394.25,-264.25 394.25,-264.25 394.25,-252.25 394.25,-252.25 394.25,-246.25 400.25,-240.25 406.25,-240.25 406.25,-240.25 511.5,-240.25 511.5,-240.25 517.5,-240.25 523.5,-246.25 523.5,-252.25 523.5,-252.25 523.5,-264.25 523.5,-264.25 523.5,-270.25 517.5,-276.25 511.5,-276.25"/>
|
|
212
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-260.2" font-family="sans-Serif" font-size="9.00" fill="#0f172a">OAuth2 · BasicAuth</text>
|
|
213
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-249.7" font-family="sans-Serif" font-size="9.00" fill="#0f172a">AuthenticationHelper · Vault</text>
|
|
214
214
|
</g>
|
|
215
215
|
<!-- Auth->a -->
|
|
216
216
|
<g id="edge16" class="edge">
|
|
217
217
|
<title>Auth->a</title>
|
|
218
|
-
<path fill="none" stroke="#94a3b8" d="M267.92,-
|
|
219
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="386.36,-
|
|
218
|
+
<path fill="none" stroke="#94a3b8" d="M267.92,-258.25C297.26,-258.25 345.74,-258.25 386.38,-258.25"/>
|
|
219
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="386.36,-260.35 392.36,-258.25 386.36,-256.15 386.36,-260.35"/>
|
|
220
220
|
</g>
|
|
221
221
|
<!-- h -->
|
|
222
222
|
<g id="node18" class="node">
|
|
223
223
|
<title>h</title>
|
|
224
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M512.62,-
|
|
225
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
226
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
224
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M512.62,-222.25C512.62,-222.25 405.12,-222.25 405.12,-222.25 399.12,-222.25 393.12,-216.25 393.12,-210.25 393.12,-210.25 393.12,-198.25 393.12,-198.25 393.12,-192.25 399.12,-186.25 405.12,-186.25 405.12,-186.25 512.62,-186.25 512.62,-186.25 518.62,-186.25 524.62,-192.25 524.62,-198.25 524.62,-198.25 524.62,-210.25 524.62,-210.25 524.62,-216.25 518.62,-222.25 512.62,-222.25"/>
|
|
225
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-206.2" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Serial · BusPirate</text>
|
|
226
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-195.7" font-family="sans-Serif" font-size="9.00" fill="#0f172a">MSR206 · Android · BareSIP</text>
|
|
227
227
|
</g>
|
|
228
228
|
<!-- HW->h -->
|
|
229
229
|
<g id="edge17" class="edge">
|
|
230
230
|
<title>HW->h</title>
|
|
231
|
-
<path fill="none" stroke="#94a3b8" d="M268.79,-
|
|
232
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="385.07,-
|
|
231
|
+
<path fill="none" stroke="#94a3b8" d="M268.79,-204.25C297.93,-204.25 345.22,-204.25 385.21,-204.25"/>
|
|
232
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="385.07,-206.35 391.07,-204.25 385.07,-202.15 385.07,-206.35"/>
|
|
233
233
|
</g>
|
|
234
234
|
<!-- c -->
|
|
235
235
|
<g id="node19" class="node">
|
|
236
236
|
<title>c</title>
|
|
237
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M502.88,-
|
|
238
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
239
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
237
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M502.88,-168.25C502.88,-168.25 414.88,-168.25 414.88,-168.25 408.88,-168.25 402.88,-162.25 402.88,-156.25 402.88,-156.25 402.88,-144.25 402.88,-144.25 402.88,-138.25 408.88,-132.25 414.88,-132.25 414.88,-132.25 502.88,-132.25 502.88,-132.25 508.88,-132.25 514.88,-138.25 514.88,-144.25 514.88,-144.25 514.88,-156.25 514.88,-156.25 514.88,-162.25 508.88,-168.25 502.88,-168.25"/>
|
|
238
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-152.2" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Jenkins · Git · vSphere</text>
|
|
239
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-141.7" font-family="sans-Serif" font-size="9.00" fill="#0f172a">DefectDojo · BlackDuck</text>
|
|
240
240
|
</g>
|
|
241
241
|
<!-- CI->c -->
|
|
242
242
|
<g id="edge18" class="edge">
|
|
243
243
|
<title>CI->c</title>
|
|
244
|
-
<path fill="none" stroke="#94a3b8" d="M273.32,-
|
|
245
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="395.17,-
|
|
244
|
+
<path fill="none" stroke="#94a3b8" d="M273.32,-150.25C305.32,-150.25 355.42,-150.25 395.36,-150.25"/>
|
|
245
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="395.17,-152.35 401.17,-150.25 395.17,-148.15 395.17,-152.35"/>
|
|
246
246
|
</g>
|
|
247
247
|
<!-- m -->
|
|
248
248
|
<g id="node20" class="node">
|
|
249
249
|
<title>m</title>
|
|
250
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M525,-
|
|
251
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
252
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
250
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M525,-114.25C525,-114.25 392.75,-114.25 392.75,-114.25 386.75,-114.25 380.75,-108.25 380.75,-102.25 380.75,-102.25 380.75,-90.25 380.75,-90.25 380.75,-84.25 386.75,-78.25 392.75,-78.25 392.75,-78.25 525,-78.25 525,-78.25 531,-78.25 537,-84.25 537,-90.25 537,-90.25 537,-102.25 537,-102.25 537,-108.25 531,-114.25 525,-114.25"/>
|
|
251
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-98.2" font-family="sans-Serif" font-size="9.00" fill="#0f172a">MailAgent · SlackClient</text>
|
|
252
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-87.7" font-family="sans-Serif" font-size="9.00" fill="#0f172a">IRC · RabbitMQ · TwitterAPI · Voice</text>
|
|
253
253
|
</g>
|
|
254
254
|
<!-- Comm->m -->
|
|
255
255
|
<g id="edge19" class="edge">
|
|
256
256
|
<title>Comm->m</title>
|
|
257
|
-
<path fill="none" stroke="#94a3b8" d="M267.92,-
|
|
258
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="372.79,-
|
|
257
|
+
<path fill="none" stroke="#94a3b8" d="M267.92,-96.25C294.07,-96.25 335.42,-96.25 372.87,-96.25"/>
|
|
258
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="372.79,-98.35 378.79,-96.25 372.79,-94.15 372.79,-98.35"/>
|
|
259
259
|
</g>
|
|
260
260
|
<!-- u -->
|
|
261
261
|
<g id="node21" class="node">
|
|
262
262
|
<title>u</title>
|
|
263
|
-
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M516.38,-
|
|
264
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
265
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
266
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
267
|
-
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-
|
|
263
|
+
<path fill="#fcd34d" stroke="#334155" stroke-width="1.2" d="M516.38,-60.5C516.38,-60.5 401.38,-60.5 401.38,-60.5 395.38,-60.5 389.38,-54.5 389.38,-48.5 389.38,-48.5 389.38,-12 389.38,-12 389.38,-6 395.38,0 401.38,0 401.38,0 516.38,0 516.38,0 522.38,0 528.38,-6 528.38,-12 528.38,-12 528.38,-48.5 528.38,-48.5 528.38,-54.5 522.38,-60.5 516.38,-60.5"/>
|
|
264
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-47.95" font-family="sans-Serif" font-size="9.00" fill="#0f172a">FileFu · ThreadPool · Log</text>
|
|
265
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-37.45" font-family="sans-Serif" font-size="9.00" fill="#0f172a">Char · XXD · DetectOS</text>
|
|
266
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-26.95" font-family="sans-Serif" font-size="9.00" fill="#0f172a">ScannableCodes · CreditCard</text>
|
|
267
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-16.45" font-family="sans-Serif" font-size="9.00" fill="#0f172a">SSN · EIN · VIN · Pony · PS</text>
|
|
268
|
+
<text xml:space="preserve" text-anchor="middle" x="458.88" y="-5.95" font-family="sans-Serif" font-size="9.00" fill="#0f172a">TTYSpinner</text>
|
|
268
269
|
</g>
|
|
269
270
|
<!-- Util->u -->
|
|
270
271
|
<g id="edge20" class="edge">
|
|
271
272
|
<title>Util->u</title>
|
|
272
|
-
<path fill="none" stroke="#94a3b8" d="M267.92,-
|
|
273
|
-
<polygon fill="#94a3b8" stroke="#94a3b8" points="381.
|
|
273
|
+
<path fill="none" stroke="#94a3b8" d="M267.92,-40.78C296.09,-39.22 341.91,-36.68 381.48,-34.48"/>
|
|
274
|
+
<polygon fill="#94a3b8" stroke="#94a3b8" points="381.41,-36.59 387.29,-34.16 381.18,-32.4 381.41,-36.59"/>
|
|
274
275
|
</g>
|
|
275
276
|
</g>
|
|
276
277
|
</svg>
|