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.
- checksums.yaml +4 -4
- data/README.md +109 -85
- data/README.md.bak +200 -0
- data/bin/pwn +47 -2
- data/bin/pwn_gqrx_scanner +75 -18
- data/documentation/AI-Integration.md +42 -26
- data/documentation/AWS.md +57 -0
- data/documentation/Agent-Tool-Registry.md +56 -0
- data/documentation/Banner.md +17 -0
- data/documentation/Blockchain.md +18 -0
- data/documentation/Bounty.md +21 -0
- data/documentation/BurpSuite.md +41 -16
- data/documentation/CLI-Drivers.md +58 -0
- data/documentation/Configuration.md +66 -0
- data/documentation/Contributing.md +33 -19
- data/documentation/Cron.md +47 -0
- data/documentation/Diagrams.md +123 -40
- data/documentation/Drivers.md +43 -16
- data/documentation/Extrospection.md +54 -0
- data/documentation/FFI.md +14 -0
- data/documentation/Fuzzing.md +36 -0
- data/documentation/General-PWN-Usage.md +50 -30
- data/documentation/Hardware.md +40 -0
- data/documentation/Home.md +78 -51
- data/documentation/How-PWN-Works.md +59 -57
- data/documentation/Installation.md +53 -28
- data/documentation/Metasploit.md +34 -0
- data/documentation/NmapIt.md +18 -12
- data/documentation/PWN.png +0 -0
- data/documentation/PWN_Contributors_and_Users.png +0 -0
- data/documentation/Persistence.md +38 -0
- data/documentation/Plugins.md +97 -47
- data/documentation/Reporting.md +25 -18
- data/documentation/SAST.md +39 -22
- data/documentation/SDR.md +40 -0
- data/documentation/Sessions.md +39 -0
- data/documentation/Skills-Memory-Learning.md +49 -29
- data/documentation/Swarm.md +71 -0
- data/documentation/Transparent-Browser.md +26 -22
- data/documentation/Troubleshooting.md +44 -25
- data/documentation/WWW.md +32 -0
- data/documentation/What-is-PWN.md +51 -32
- data/documentation/Why-PWN.md +41 -11
- data/documentation/diagrams/agent-tool-registry.svg +284 -0
- data/documentation/diagrams/ai-integration-tool-calling.svg +141 -103
- data/documentation/diagrams/aws-cloud-security.svg +166 -0
- data/documentation/diagrams/build.sh +20 -0
- data/documentation/diagrams/burp-vs-zap-preference.svg +47 -62
- data/documentation/diagrams/code-scanning-sast.svg +139 -79
- data/documentation/diagrams/cron-scheduling.svg +148 -0
- data/documentation/diagrams/dot/_THEME.md +27 -0
- data/documentation/diagrams/dot/agent-tool-registry.dot +59 -0
- data/documentation/diagrams/dot/ai-integration-tool-calling.dot +47 -20
- data/documentation/diagrams/dot/aws-cloud-security.dot +48 -0
- data/documentation/diagrams/dot/burp-vs-zap-preference.dot +23 -12
- data/documentation/diagrams/dot/code-scanning-sast.dot +46 -18
- data/documentation/diagrams/dot/cron-scheduling.dot +40 -0
- data/documentation/diagrams/dot/driver-framework.dot +36 -14
- data/documentation/diagrams/dot/extrospection-world-awareness.dot +55 -0
- data/documentation/diagrams/dot/fuzzing-workflow.dot +44 -24
- data/documentation/diagrams/dot/hardware-hacking.dot +48 -0
- data/documentation/diagrams/dot/history-to-drivers.dot +31 -17
- data/documentation/diagrams/dot/memory-skills-detailed.dot +57 -25
- data/documentation/diagrams/dot/network-infra-testing.dot +51 -19
- data/documentation/diagrams/dot/overall-pwn-architecture.dot +110 -44
- data/documentation/diagrams/dot/penetration-testing-workflow.dot +56 -25
- data/documentation/diagrams/dot/persistence-filesystem.dot +29 -0
- data/documentation/diagrams/dot/plugin-ecosystem.dot +41 -27
- data/documentation/diagrams/dot/pwn-ai-feedback-learning-loop.dot +87 -46
- data/documentation/diagrams/dot/pwn-repl-prototyping.dot +49 -30
- data/documentation/diagrams/dot/reporting-pipeline.dot +43 -14
- data/documentation/diagrams/dot/reverse-engineering-flow.dot +40 -18
- data/documentation/diagrams/dot/sdr-radio-flow.dot +45 -0
- data/documentation/diagrams/dot/sessions-cron-automation.dot +41 -14
- data/documentation/diagrams/dot/swarm-multi-agent.dot +70 -0
- data/documentation/diagrams/dot/web-application-testing.dot +45 -23
- data/documentation/diagrams/dot/zero-day-research-flow.dot +46 -24
- data/documentation/diagrams/driver-framework.svg +87 -66
- data/documentation/diagrams/extrospection-world-awareness.svg +185 -0
- data/documentation/diagrams/fuzzing-workflow.svg +128 -115
- data/documentation/diagrams/hardware-hacking.svg +163 -0
- data/documentation/diagrams/history-to-drivers.svg +84 -82
- data/documentation/diagrams/memory-skills-detailed.svg +167 -119
- data/documentation/diagrams/network-infra-testing.svg +146 -84
- data/documentation/diagrams/overall-pwn-architecture.svg +356 -185
- data/documentation/diagrams/penetration-testing-workflow.svg +161 -108
- data/documentation/diagrams/persistence-filesystem.svg +174 -0
- data/documentation/diagrams/plugin-ecosystem.svg +225 -121
- data/documentation/diagrams/pwn-ai-feedback-learning-loop.svg +257 -185
- data/documentation/diagrams/pwn-repl-prototyping.svg +126 -137
- data/documentation/diagrams/reporting-pipeline.svg +128 -68
- data/documentation/diagrams/reverse-engineering-flow.svg +100 -80
- data/documentation/diagrams/sdr-radio-flow.svg +146 -0
- data/documentation/diagrams/sessions-cron-automation.svg +112 -68
- data/documentation/diagrams/swarm-multi-agent.svg +225 -0
- data/documentation/diagrams/web-application-testing.svg +136 -100
- data/documentation/diagrams/zero-day-research-flow.svg +116 -112
- data/documentation/fax-spectrogram.png +0 -0
- data/documentation/fax-waveform.png +0 -0
- data/documentation/pwn-REPL.md +40 -24
- data/documentation/pwn-ai-Agent.md +59 -30
- data/documentation/pwn_android_war_dialer_session.png +0 -0
- data/documentation/pwn_install.png +0 -0
- data/documentation/pwn_wallpaper.jpg +0 -0
- data/documentation/ringing-spectrogram.png +0 -0
- data/documentation/ringing-waveform.png +0 -0
- data/git_commit.sh +1 -1
- data/lib/pwn/ai/agent/assembly.rb +1 -1
- data/lib/pwn/ai/agent/btc.rb +1 -1
- data/lib/pwn/ai/agent/burp_suite.rb +1 -1
- data/lib/pwn/ai/agent/extrospection.rb +618 -0
- data/lib/pwn/ai/agent/gqrx.rb +2 -2
- data/lib/pwn/ai/agent/hacker_one.rb +1 -1
- data/lib/pwn/ai/agent/introspection.rb +91 -0
- data/lib/pwn/ai/agent/learning.rb +6 -4
- data/lib/pwn/ai/agent/loop.rb +15 -0
- data/lib/pwn/ai/agent/prompt_builder.rb +10 -1
- data/lib/pwn/ai/agent/sast.rb +1 -1
- data/lib/pwn/ai/agent/swarm.rb +437 -0
- data/lib/pwn/ai/agent/tools/cron.rb +163 -0
- data/lib/pwn/ai/agent/tools/extrospection.rb +280 -0
- data/lib/pwn/ai/agent/tools/learning.rb +108 -0
- data/lib/pwn/ai/agent/tools/memory.rb +27 -0
- data/lib/pwn/ai/agent/tools/metrics.rb +61 -0
- data/lib/pwn/ai/agent/tools/sessions.rb +139 -0
- data/lib/pwn/ai/agent/tools/skills.rb +30 -0
- data/lib/pwn/ai/agent/tools/swarm.rb +229 -0
- data/lib/pwn/ai/agent/transparent_browser.rb +1 -1
- data/lib/pwn/ai/agent/vuln_gen.rb +2 -2
- data/lib/pwn/ai/agent.rb +3 -0
- data/lib/pwn/ai/anthropic.rb +19 -4
- data/lib/pwn/ai.rb +0 -1
- data/lib/pwn/config.rb +10 -23
- data/lib/pwn/cron.rb +16 -7
- data/lib/pwn/plugins/repl.rb +90 -281
- data/lib/pwn/sdr/decoder/base.rb +251 -0
- data/lib/pwn/sdr/decoder/gsm.rb +84 -185
- data/lib/pwn/sdr/decoder/pocsag.rb +62 -217
- data/lib/pwn/sdr/decoder.rb +1 -0
- data/lib/pwn/sdr/gqrx.rb +446 -65
- data/lib/pwn/version.rb +1 -1
- data/spec/lib/pwn/ai/agent/extrospection_spec.rb +15 -0
- data/spec/lib/pwn/ai/agent/introspection_spec.rb +15 -0
- data/spec/lib/pwn/ai/agent/swarm_spec.rb +34 -0
- data/spec/lib/pwn/ai/agent/tools/cron_spec.rb +40 -0
- data/spec/lib/pwn/ai/agent/tools/extrospection_spec.rb +40 -0
- data/spec/lib/pwn/ai/agent/tools/metrics_spec.rb +20 -0
- data/spec/lib/pwn/ai/agent/tools/sessions_spec.rb +35 -0
- data/spec/lib/pwn/ai/agent/tools/swarm_spec.rb +17 -0
- data/spec/lib/pwn/{ai/introspection_spec.rb → sdr/decoder/base_spec.rb} +3 -3
- data/third_party/pwn_rdoc.jsonl +199 -37
- metadata +65 -3
- data/lib/pwn/ai/introspection.rb +0 -76
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: pwn
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.5.
|
|
4
|
+
version: 0.5.618
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- 0day Inc.
|
|
@@ -1398,6 +1398,7 @@ files:
|
|
|
1398
1398
|
- Gemfile
|
|
1399
1399
|
- LICENSE.txt
|
|
1400
1400
|
- README.md
|
|
1401
|
+
- README.md.bak
|
|
1401
1402
|
- Rakefile
|
|
1402
1403
|
- Vagrantfile
|
|
1403
1404
|
- bin/pwn
|
|
@@ -1454,61 +1455,106 @@ files:
|
|
|
1454
1455
|
- bin/pwn_zaproxy_active_scan
|
|
1455
1456
|
- build_gem.sh
|
|
1456
1457
|
- documentation/AI-Integration.md
|
|
1458
|
+
- documentation/AWS.md
|
|
1459
|
+
- documentation/Agent-Tool-Registry.md
|
|
1460
|
+
- documentation/Banner.md
|
|
1461
|
+
- documentation/Blockchain.md
|
|
1462
|
+
- documentation/Bounty.md
|
|
1457
1463
|
- documentation/BurpSuite.md
|
|
1464
|
+
- documentation/CLI-Drivers.md
|
|
1465
|
+
- documentation/Configuration.md
|
|
1458
1466
|
- documentation/Contributing.md
|
|
1467
|
+
- documentation/Cron.md
|
|
1459
1468
|
- documentation/Diagrams.md
|
|
1460
1469
|
- documentation/Drivers.md
|
|
1470
|
+
- documentation/Extrospection.md
|
|
1471
|
+
- documentation/FFI.md
|
|
1472
|
+
- documentation/Fuzzing.md
|
|
1461
1473
|
- documentation/General-PWN-Usage.md
|
|
1474
|
+
- documentation/Hardware.md
|
|
1462
1475
|
- documentation/Home.md
|
|
1463
1476
|
- documentation/How-PWN-Works.md
|
|
1464
1477
|
- documentation/Installation.md
|
|
1478
|
+
- documentation/Metasploit.md
|
|
1465
1479
|
- documentation/NmapIt.md
|
|
1480
|
+
- documentation/PWN.png
|
|
1481
|
+
- documentation/PWN_Contributors_and_Users.png
|
|
1482
|
+
- documentation/Persistence.md
|
|
1466
1483
|
- documentation/Plugins.md
|
|
1467
1484
|
- documentation/Reporting.md
|
|
1468
1485
|
- documentation/SAST.md
|
|
1486
|
+
- documentation/SDR.md
|
|
1487
|
+
- documentation/Sessions.md
|
|
1469
1488
|
- documentation/Skills-Memory-Learning.md
|
|
1489
|
+
- documentation/Swarm.md
|
|
1470
1490
|
- documentation/Transparent-Browser.md
|
|
1471
1491
|
- documentation/Troubleshooting.md
|
|
1492
|
+
- documentation/WWW.md
|
|
1472
1493
|
- documentation/What-is-PWN.md
|
|
1473
1494
|
- documentation/Why-PWN.md
|
|
1495
|
+
- documentation/diagrams/agent-tool-registry.svg
|
|
1474
1496
|
- documentation/diagrams/ai-integration-tool-calling.svg
|
|
1497
|
+
- documentation/diagrams/aws-cloud-security.svg
|
|
1498
|
+
- documentation/diagrams/build.sh
|
|
1475
1499
|
- documentation/diagrams/burp-vs-zap-preference.svg
|
|
1476
1500
|
- documentation/diagrams/code-scanning-sast.svg
|
|
1501
|
+
- documentation/diagrams/cron-scheduling.svg
|
|
1502
|
+
- documentation/diagrams/dot/_THEME.md
|
|
1503
|
+
- documentation/diagrams/dot/agent-tool-registry.dot
|
|
1477
1504
|
- documentation/diagrams/dot/ai-integration-tool-calling.dot
|
|
1505
|
+
- documentation/diagrams/dot/aws-cloud-security.dot
|
|
1478
1506
|
- documentation/diagrams/dot/burp-vs-zap-preference.dot
|
|
1479
1507
|
- documentation/diagrams/dot/code-scanning-sast.dot
|
|
1508
|
+
- documentation/diagrams/dot/cron-scheduling.dot
|
|
1480
1509
|
- documentation/diagrams/dot/driver-framework.dot
|
|
1510
|
+
- documentation/diagrams/dot/extrospection-world-awareness.dot
|
|
1481
1511
|
- documentation/diagrams/dot/fuzzing-workflow.dot
|
|
1512
|
+
- documentation/diagrams/dot/hardware-hacking.dot
|
|
1482
1513
|
- documentation/diagrams/dot/history-to-drivers.dot
|
|
1483
1514
|
- documentation/diagrams/dot/memory-skills-detailed.dot
|
|
1484
1515
|
- documentation/diagrams/dot/network-infra-testing.dot
|
|
1485
1516
|
- documentation/diagrams/dot/overall-pwn-architecture.dot
|
|
1486
1517
|
- documentation/diagrams/dot/penetration-testing-workflow.dot
|
|
1518
|
+
- documentation/diagrams/dot/persistence-filesystem.dot
|
|
1487
1519
|
- documentation/diagrams/dot/plugin-ecosystem.dot
|
|
1488
1520
|
- documentation/diagrams/dot/pwn-ai-feedback-learning-loop.dot
|
|
1489
1521
|
- documentation/diagrams/dot/pwn-repl-prototyping.dot
|
|
1490
1522
|
- documentation/diagrams/dot/reporting-pipeline.dot
|
|
1491
1523
|
- documentation/diagrams/dot/reverse-engineering-flow.dot
|
|
1524
|
+
- documentation/diagrams/dot/sdr-radio-flow.dot
|
|
1492
1525
|
- documentation/diagrams/dot/sessions-cron-automation.dot
|
|
1526
|
+
- documentation/diagrams/dot/swarm-multi-agent.dot
|
|
1493
1527
|
- documentation/diagrams/dot/web-application-testing.dot
|
|
1494
1528
|
- documentation/diagrams/dot/zero-day-research-flow.dot
|
|
1495
1529
|
- documentation/diagrams/driver-framework.svg
|
|
1530
|
+
- documentation/diagrams/extrospection-world-awareness.svg
|
|
1496
1531
|
- documentation/diagrams/fuzzing-workflow.svg
|
|
1532
|
+
- documentation/diagrams/hardware-hacking.svg
|
|
1497
1533
|
- documentation/diagrams/history-to-drivers.svg
|
|
1498
1534
|
- documentation/diagrams/memory-skills-detailed.svg
|
|
1499
1535
|
- documentation/diagrams/network-infra-testing.svg
|
|
1500
1536
|
- documentation/diagrams/overall-pwn-architecture.svg
|
|
1501
1537
|
- documentation/diagrams/penetration-testing-workflow.svg
|
|
1538
|
+
- documentation/diagrams/persistence-filesystem.svg
|
|
1502
1539
|
- documentation/diagrams/plugin-ecosystem.svg
|
|
1503
1540
|
- documentation/diagrams/pwn-ai-feedback-learning-loop.svg
|
|
1504
1541
|
- documentation/diagrams/pwn-repl-prototyping.svg
|
|
1505
1542
|
- documentation/diagrams/reporting-pipeline.svg
|
|
1506
1543
|
- documentation/diagrams/reverse-engineering-flow.svg
|
|
1544
|
+
- documentation/diagrams/sdr-radio-flow.svg
|
|
1507
1545
|
- documentation/diagrams/sessions-cron-automation.svg
|
|
1546
|
+
- documentation/diagrams/swarm-multi-agent.svg
|
|
1508
1547
|
- documentation/diagrams/web-application-testing.svg
|
|
1509
1548
|
- documentation/diagrams/zero-day-research-flow.svg
|
|
1549
|
+
- documentation/fax-spectrogram.png
|
|
1550
|
+
- documentation/fax-waveform.png
|
|
1510
1551
|
- documentation/pwn-REPL.md
|
|
1511
1552
|
- documentation/pwn-ai-Agent.md
|
|
1553
|
+
- documentation/pwn_android_war_dialer_session.png
|
|
1554
|
+
- documentation/pwn_install.png
|
|
1555
|
+
- documentation/pwn_wallpaper.jpg
|
|
1556
|
+
- documentation/ringing-spectrogram.png
|
|
1557
|
+
- documentation/ringing-waveform.png
|
|
1512
1558
|
- etc/systemd/msfrpcd.service
|
|
1513
1559
|
- etc/systemd/openvas.service
|
|
1514
1560
|
- etc/userland/aws/apache2/jenkins_443.conf
|
|
@@ -1823,8 +1869,10 @@ files:
|
|
|
1823
1869
|
- lib/pwn/ai/agent/btc.rb
|
|
1824
1870
|
- lib/pwn/ai/agent/burp_suite.rb
|
|
1825
1871
|
- lib/pwn/ai/agent/dispatch.rb
|
|
1872
|
+
- lib/pwn/ai/agent/extrospection.rb
|
|
1826
1873
|
- lib/pwn/ai/agent/gqrx.rb
|
|
1827
1874
|
- lib/pwn/ai/agent/hacker_one.rb
|
|
1875
|
+
- lib/pwn/ai/agent/introspection.rb
|
|
1828
1876
|
- lib/pwn/ai/agent/learning.rb
|
|
1829
1877
|
- lib/pwn/ai/agent/loop.rb
|
|
1830
1878
|
- lib/pwn/ai/agent/metrics.rb
|
|
@@ -1832,17 +1880,22 @@ files:
|
|
|
1832
1880
|
- lib/pwn/ai/agent/registry.rb
|
|
1833
1881
|
- lib/pwn/ai/agent/result.rb
|
|
1834
1882
|
- lib/pwn/ai/agent/sast.rb
|
|
1883
|
+
- lib/pwn/ai/agent/swarm.rb
|
|
1884
|
+
- lib/pwn/ai/agent/tools/cron.rb
|
|
1885
|
+
- lib/pwn/ai/agent/tools/extrospection.rb
|
|
1835
1886
|
- lib/pwn/ai/agent/tools/learning.rb
|
|
1836
1887
|
- lib/pwn/ai/agent/tools/memory.rb
|
|
1888
|
+
- lib/pwn/ai/agent/tools/metrics.rb
|
|
1837
1889
|
- lib/pwn/ai/agent/tools/ruby_eval.rb
|
|
1890
|
+
- lib/pwn/ai/agent/tools/sessions.rb
|
|
1838
1891
|
- lib/pwn/ai/agent/tools/shell.rb
|
|
1839
1892
|
- lib/pwn/ai/agent/tools/skills.rb
|
|
1893
|
+
- lib/pwn/ai/agent/tools/swarm.rb
|
|
1840
1894
|
- lib/pwn/ai/agent/transparent_browser.rb
|
|
1841
1895
|
- lib/pwn/ai/agent/vuln_gen.rb
|
|
1842
1896
|
- lib/pwn/ai/anthropic.rb
|
|
1843
1897
|
- lib/pwn/ai/gemini.rb
|
|
1844
1898
|
- lib/pwn/ai/grok.rb
|
|
1845
|
-
- lib/pwn/ai/introspection.rb
|
|
1846
1899
|
- lib/pwn/ai/ollama.rb
|
|
1847
1900
|
- lib/pwn/ai/open_ai.rb
|
|
1848
1901
|
- lib/pwn/aws.rb
|
|
@@ -2088,6 +2141,7 @@ files:
|
|
|
2088
2141
|
- lib/pwn/sast/window_location_hash.rb
|
|
2089
2142
|
- lib/pwn/sdr.rb
|
|
2090
2143
|
- lib/pwn/sdr/decoder.rb
|
|
2144
|
+
- lib/pwn/sdr/decoder/base.rb
|
|
2091
2145
|
- lib/pwn/sdr/decoder/flex.rb
|
|
2092
2146
|
- lib/pwn/sdr/decoder/gsm.rb
|
|
2093
2147
|
- lib/pwn/sdr/decoder/pocsag.rb
|
|
@@ -2211,8 +2265,10 @@ files:
|
|
|
2211
2265
|
- spec/lib/pwn/ai/agent/btc_spec.rb
|
|
2212
2266
|
- spec/lib/pwn/ai/agent/burp_suite_spec.rb
|
|
2213
2267
|
- spec/lib/pwn/ai/agent/dispatch_spec.rb
|
|
2268
|
+
- spec/lib/pwn/ai/agent/extrospection_spec.rb
|
|
2214
2269
|
- spec/lib/pwn/ai/agent/gqrx_spec.rb
|
|
2215
2270
|
- spec/lib/pwn/ai/agent/hacker_one_spec.rb
|
|
2271
|
+
- spec/lib/pwn/ai/agent/introspection_spec.rb
|
|
2216
2272
|
- spec/lib/pwn/ai/agent/learning_spec.rb
|
|
2217
2273
|
- spec/lib/pwn/ai/agent/loop_spec.rb
|
|
2218
2274
|
- spec/lib/pwn/ai/agent/metrics_spec.rb
|
|
@@ -2220,18 +2276,23 @@ files:
|
|
|
2220
2276
|
- spec/lib/pwn/ai/agent/registry_spec.rb
|
|
2221
2277
|
- spec/lib/pwn/ai/agent/result_spec.rb
|
|
2222
2278
|
- spec/lib/pwn/ai/agent/sast_spec.rb
|
|
2279
|
+
- spec/lib/pwn/ai/agent/swarm_spec.rb
|
|
2280
|
+
- spec/lib/pwn/ai/agent/tools/cron_spec.rb
|
|
2281
|
+
- spec/lib/pwn/ai/agent/tools/extrospection_spec.rb
|
|
2223
2282
|
- spec/lib/pwn/ai/agent/tools/learning_spec.rb
|
|
2224
2283
|
- spec/lib/pwn/ai/agent/tools/memory_spec.rb
|
|
2284
|
+
- spec/lib/pwn/ai/agent/tools/metrics_spec.rb
|
|
2225
2285
|
- spec/lib/pwn/ai/agent/tools/ruby_eval_spec.rb
|
|
2286
|
+
- spec/lib/pwn/ai/agent/tools/sessions_spec.rb
|
|
2226
2287
|
- spec/lib/pwn/ai/agent/tools/shell_spec.rb
|
|
2227
2288
|
- spec/lib/pwn/ai/agent/tools/skills_spec.rb
|
|
2289
|
+
- spec/lib/pwn/ai/agent/tools/swarm_spec.rb
|
|
2228
2290
|
- spec/lib/pwn/ai/agent/transparent_browser_spec.rb
|
|
2229
2291
|
- spec/lib/pwn/ai/agent/vuln_gen_spec.rb
|
|
2230
2292
|
- spec/lib/pwn/ai/agent_spec.rb
|
|
2231
2293
|
- spec/lib/pwn/ai/anthropic_spec.rb
|
|
2232
2294
|
- spec/lib/pwn/ai/gemini_spec.rb
|
|
2233
2295
|
- spec/lib/pwn/ai/grok_spec.rb
|
|
2234
|
-
- spec/lib/pwn/ai/introspection_spec.rb
|
|
2235
2296
|
- spec/lib/pwn/ai/ollama_spec.rb
|
|
2236
2297
|
- spec/lib/pwn/ai/open_ai_spec.rb
|
|
2237
2298
|
- spec/lib/pwn/ai_spec.rb
|
|
@@ -2476,6 +2537,7 @@ files:
|
|
|
2476
2537
|
- spec/lib/pwn/sast/version_spec.rb
|
|
2477
2538
|
- spec/lib/pwn/sast/window_location_hash_spec.rb
|
|
2478
2539
|
- spec/lib/pwn/sast_spec.rb
|
|
2540
|
+
- spec/lib/pwn/sdr/decoder/base_spec.rb
|
|
2479
2541
|
- spec/lib/pwn/sdr/decoder/flex_spec.rb
|
|
2480
2542
|
- spec/lib/pwn/sdr/decoder/gsm_spec.rb
|
|
2481
2543
|
- spec/lib/pwn/sdr/decoder/pocsag_spec.rb
|
data/lib/pwn/ai/introspection.rb
DELETED
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require 'json'
|
|
4
|
-
require 'rest-client'
|
|
5
|
-
|
|
6
|
-
module PWN
|
|
7
|
-
module AI
|
|
8
|
-
# This plugin interacts with PWN::Env's `ai` data structure
|
|
9
|
-
# when `PWN::Env[:ai][:introspection]` is set to `true`.
|
|
10
|
-
module Introspection
|
|
11
|
-
# Supported Method Parameters::
|
|
12
|
-
# response = PWN::AI::Introspection.reflect_on(
|
|
13
|
-
# request: 'required - String - What you want the AI to reflect on',
|
|
14
|
-
# system_role_content: 'optional - context to set up the model behavior for reflection',
|
|
15
|
-
# spinner: 'optional - Boolean - Display spinner during operation (default: false)',
|
|
16
|
-
# suppress_pii_warning: 'optional - Boolean - Suppress PII Warnings (default: false)'
|
|
17
|
-
# )
|
|
18
|
-
|
|
19
|
-
public_class_method def self.reflect_on(opts = {})
|
|
20
|
-
request = opts[:request]
|
|
21
|
-
raise 'ERROR: request must be provided' if request.nil?
|
|
22
|
-
|
|
23
|
-
system_role_content = opts[:system_role_content]
|
|
24
|
-
|
|
25
|
-
spinner = opts[:spinner] || false
|
|
26
|
-
|
|
27
|
-
suppress_pii_warning = opts[:suppress_pii_warning] || false
|
|
28
|
-
|
|
29
|
-
response = nil
|
|
30
|
-
|
|
31
|
-
ai_introspection = PWN::Env[:ai][:introspection]
|
|
32
|
-
|
|
33
|
-
if ai_introspection && request.length.positive?
|
|
34
|
-
engine = PWN::Env[:ai][:active].to_s.downcase.to_sym
|
|
35
|
-
valid_ai_engines = PWN::AI.help.reject { |e| e.downcase == :introspection }.map(&:downcase)
|
|
36
|
-
raise "ERROR: Unsupported AI engine. Supported engines are: #{valid_ai_engines}" unless valid_ai_engines.include?(engine)
|
|
37
|
-
|
|
38
|
-
warn "AI Introspection is enabled. Ensure #{engine} has been authorized for use and/or requests are sanitized properly." unless suppress_pii_warning
|
|
39
|
-
response = PWN::AI::Agent::Loop.run(
|
|
40
|
-
request: request.chomp,
|
|
41
|
-
system_role_content: system_role_content,
|
|
42
|
-
enabled_toolsets: [],
|
|
43
|
-
spinner: spinner
|
|
44
|
-
)
|
|
45
|
-
end
|
|
46
|
-
|
|
47
|
-
response
|
|
48
|
-
rescue StandardError => e
|
|
49
|
-
raise e
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
# Author(s):: 0day Inc. <support@0dayinc.com>
|
|
53
|
-
|
|
54
|
-
public_class_method def self.authors
|
|
55
|
-
"AUTHOR(S):
|
|
56
|
-
0day Inc. <support@0dayinc.com>
|
|
57
|
-
"
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
# Display Usage for this Module
|
|
61
|
-
|
|
62
|
-
public_class_method def self.help
|
|
63
|
-
puts "USAGE:
|
|
64
|
-
#{self}.reflect_on(
|
|
65
|
-
request: 'required - String - What you want the AI to reflect on',
|
|
66
|
-
system_role_content: 'optional - context to set up the model behavior for reflection',
|
|
67
|
-
spinner: 'optional - Boolean - Display spinner during operation (default: false)',
|
|
68
|
-
suppress_pii_warning: 'optional - Boolean - Suppress PII Warnings (default: false)'
|
|
69
|
-
)
|
|
70
|
-
|
|
71
|
-
#{self}.authors
|
|
72
|
-
"
|
|
73
|
-
end
|
|
74
|
-
end
|
|
75
|
-
end
|
|
76
|
-
end
|