pwn 0.5.510 → 0.5.513
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/.rubocop.yml +1 -1
- data/Gemfile +8 -8
- data/README.md +3 -3
- data/bin/pwn_gqrx_scanner +69 -89
- data/{build_pwn_gem.sh → build_gem.sh} +1 -1
- data/{git_commit_test_reinit_gem.sh → git_commit.sh} +4 -4
- data/lib/pwn/plugins/sock.rb +11 -1
- data/lib/pwn/sdr/decoder/gsm.rb +24 -35
- data/lib/pwn/sdr/frequency_allocation.rb +243 -262
- data/lib/pwn/sdr/gqrx.rb +613 -244
- data/lib/pwn/version.rb +1 -1
- data/packer/provisioners/pwn.sh +1 -1
- data/third_party/pwn_rdoc.jsonl +5 -3
- data/{update_pwn.sh → upgrade_pwn.sh} +1 -1
- data/upgrade_ruby.sh +2 -2
- data/vagrant/provisioners/pwn.sh +1 -1
- metadata +23 -23
- /data/{reinstall_pwn_gemset.sh → reinstall_gemset.sh} +0 -0
- /data/{find_latest_gem_versions_per_Gemfile.sh → upgrade_Gemfile_gems.sh} +0 -0
data/lib/pwn/version.rb
CHANGED
data/packer/provisioners/pwn.sh
CHANGED
|
@@ -97,4 +97,4 @@ case $os in
|
|
|
97
97
|
exit 1
|
|
98
98
|
esac
|
|
99
99
|
|
|
100
|
-
rvmsudo /bin/bash --login -c "cd ${pwn_root} && cp etc/userland/${pwn_provider}/metasploit/vagrant.yaml.EXAMPLE etc/userland/${pwn_provider}/metasploit/vagrant.yaml && ./
|
|
100
|
+
rvmsudo /bin/bash --login -c "cd ${pwn_root} && cp etc/userland/${pwn_provider}/metasploit/vagrant.yaml.EXAMPLE etc/userland/${pwn_provider}/metasploit/vagrant.yaml && ./reinstall_gemset.sh && ./build_gem.sh && rubocop"
|
data/third_party/pwn_rdoc.jsonl
CHANGED
|
@@ -1287,15 +1287,17 @@
|
|
|
1287
1287
|
{"messages":[{"role":"user","content":"PWN::SDR::FlipperZero.request Usage"},{"role":"assistant","content":"`PWN::SDR::FlipperZero.request`: Supported Method Parameters\n\nresponse = PWN::SDR::FlipperZero.request(\n\nflipper_zero_obj: 'required - flipper_zero_obj returned from #connect method',\npayload: 'optional - payload to send to the device (defaults to help)'\n\n)\n"}]}
|
|
1288
1288
|
{"messages":[{"role":"user","content":"PWN::SDR::FrequencyAllocation.authors Usage"},{"role":"assistant","content":"`PWN::SDR::FrequencyAllocation.authors`: Author(s)\n\n0day Inc. <support@0dayinc.com>\n"}]}
|
|
1289
1289
|
{"messages":[{"role":"user","content":"PWN::SDR::FrequencyAllocation.help Usage"},{"role":"assistant","content":"`PWN::SDR::FrequencyAllocation.help`: "}]}
|
|
1290
|
-
{"messages":[{"role":"user","content":"PWN::SDR::FrequencyAllocation.load Usage"},{"role":"assistant","content":"`PWN::SDR::FrequencyAllocation.load`: Supported Method Parameters\n\nopts = PWN::SDR::FrequencyAllocation.load(\n\nprofile: 'required - valid FrequencyAllocation profile name returned from #profiles method'\n\n)\n"}]}
|
|
1291
1290
|
{"messages":[{"role":"user","content":"PWN::SDR::FrequencyAllocation.profiles Usage"},{"role":"assistant","content":"`PWN::SDR::FrequencyAllocation.profiles`: Supported Method Parameters\n\nprofiles = PWN::SDR::FrequencyAllocation.profiles\n"}]}
|
|
1291
|
+
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.analyze_log Usage"},{"role":"assistant","content":"`PWN::SDR::GQRX.analyze_log`: Supported Method Parameters\n\nPWN::SDR::GQRX.analyze_log(\n\nscan_log: 'required - Path to signals log file',\ntarget: 'optional - GQRX target IP address (defaults to 127.0.0.1)',\nport: 'optional - GQRX target port (defaults to 7356)'\n\n)\n"}]}
|
|
1292
|
+
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.analyze_scan Usage"},{"role":"assistant","content":"`PWN::SDR::GQRX.analyze_scan`: Supported Method Parameters\n\nPWN::SDR::GQRX.analyze_scan(\n\nscan_resp: 'required - Scan response hash returned from #scan_range method',\ntarget: 'optional - GQRX target IP address (defaults to 127.0.0.1)',\nport: 'optional - GQRX target port (defaults to 7356)'\n\n)\n"}]}
|
|
1292
1293
|
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.authors Usage"},{"role":"assistant","content":"`PWN::SDR::GQRX.authors`: Author(s)\n\n0day Inc. <support@0dayinc.com>\n"}]}
|
|
1293
1294
|
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.connect Usage"},{"role":"assistant","content":"`PWN::SDR::GQRX.connect`: Supported Method Parameters\n\ngqrx_sock = PWN::SDR::GQRX.connect(\n\ntarget: 'optional - GQRX target IP address (defaults to 127.0.0.1)',\nport: 'optional - GQRX target port (defaults to 7356)'\n\n)\n"}]}
|
|
1294
1295
|
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.disconnect Usage"},{"role":"assistant","content":"`PWN::SDR::GQRX.disconnect`: Supported Method Parameters\n\nPWN::SDR::GQRX.disconnect(\n\ngqrx_sock: 'required - GQRX socket object returned from #connect method'\n\n)\n"}]}
|
|
1295
1296
|
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.gqrx_cmd Usage"},{"role":"assistant","content":"`PWN::SDR::GQRX.gqrx_cmd`: Supported Method Parameters\n\ngqrx_resp = PWN::SDR::GQRX.gqrx_cmd(\n\ngqrx_sock: 'required - GQRX socket object returned from #connect method',\ncmd: 'required - GQRX command to execute',\nresp_ok: 'optional - Expected response from GQRX to indicate success'\n\n)\n"}]}
|
|
1296
1297
|
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.help Usage"},{"role":"assistant","content":"`PWN::SDR::GQRX.help`: "}]}
|
|
1297
|
-
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.init_freq Usage"},{"role":"assistant","content":"`PWN::SDR::GQRX.init_freq`: Supported Method Parameters\n\
|
|
1298
|
-
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.
|
|
1298
|
+
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.init_freq Usage"},{"role":"assistant","content":"`PWN::SDR::GQRX.init_freq`: Supported Method Parameters\n\nfreq_obj = PWN::SDR::GQRX.init_freq(\n\ngqrx_sock: 'required - GQRX socket object returned from #connect method',\nfreq: 'required - Frequency to set',\ndemodulator_mode: 'optional - Demodulator mode (defaults to WFM)',\nbandwidth: 'optional - Bandwidth (defaults to 200_000)',\nsquelch: 'optional - Squelch level to set (Defaults to current value)',\ndecoder: 'optional - Decoder key (e.g., :gsm) to start live decoding (starts recording if provided)',\nrecord_dir: 'optional - Directory where GQRX saves recordings (required if decoder provided; defaults to /tmp/gqrx_recordings)',\nsuppress_details: 'optional - Boolean to include extra frequency details in return hash (defaults to false)',\nkeep_alive: 'optional - Boolean to keep GQRX connection alive after method completion (defaults to false)'\n\n)\n"}]}
|
|
1299
|
+
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.log_signals Usage"},{"role":"assistant","content":"`PWN::SDR::GQRX.log_signals`: Supported Method Parameters\n\nscan_resp = PWN::SDR::GQRX.log_signals(\n\nsignals_arr: 'required - Array of detected signals',\ntimestamp_start: 'required - Scan start timestamp',\nscan_log: 'required - Path to save detected signals log'\n\n)\n"}]}
|
|
1300
|
+
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.scan_range Usage"},{"role":"assistant","content":"`PWN::SDR::GQRX.scan_range`: Supported Method Parameters\n\nscan_resp = PWN::SDR::GQRX.scan_range(\n\ngqrx_sock: 'required - GQRX socket object returned from #connect method',\nstart_freq: 'required - Start frequency of scan range',\ntarget_freq: 'required - Target frequency of scan range',\ndemodulator_mode: 'optional - Demodulator mode (e.g. WFM, AM, FM, USB, LSB, RAW, CW, RTTY / defaults to WFM)',\nbandwidth: 'optional - Bandwidth in Hz (Defaults to 200_000)',\noverlap_protection: 'optional - Boolean to enable/disable bandwidth overlap protection (defaults to false)',\nprecision: 'optional - Frequency step precision (number of digits; defaults to 1)',\nlock_freq_duration: 'optional - Lock frequency duration in seconds (defaults to 0.04)',\nstrength_lock: 'optional - Strength lock in dBFS (defaults to -70.0)',\nsquelch: 'optional - Squelch level in dBFS (defaults to strength_lock - 3.0)',\naudio_gain_db: 'optional - Audio gain in dB (defaults to 6.0)',\nrf_gain: 'optional - RF gain (defaults to 0.0)',\nintermediate_gain: 'optional - Intermediate gain (defaults to 32.0)',\nbaseband_gain: 'optional - Baseband gain (defaults to 10.0)',\nscan_log: 'optional - Path to save detected signals log (defaults to /tmp/pwn_sdr_gqrx_scan_<start_freq>-<target_freq>_<timestamp>.json)',\nlocation: 'optional - Location string to include in AI analysis (e.g., \"New York, NY\", 90210, GPS coords, etc.)'\n\n)\n"}]}
|
|
1299
1301
|
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.pretty_hz Usage"},{"role":"assistant","content":"`PWN::SDR::GQRX.pretty_hz`: "}]}
|
|
1300
1302
|
{"messages":[{"role":"user","content":"PWN::SDR::GQRX.raw_hz Usage"},{"role":"assistant","content":"`PWN::SDR::GQRX.raw_hz`: "}]}
|
|
1301
1303
|
{"messages":[{"role":"user","content":"PWN::SDR::RFIDler.authors Usage"},{"role":"assistant","content":"`PWN::SDR::RFIDler.authors`: Author(s)\n\n0day Inc. <support@0dayinc.com>\n"}]}
|
data/upgrade_ruby.sh
CHANGED
|
@@ -7,7 +7,7 @@ else
|
|
|
7
7
|
fi
|
|
8
8
|
|
|
9
9
|
function usage() {
|
|
10
|
-
echo $"Usage: $0 <new ruby version e.g. 2.4.4> <optional bool running from
|
|
10
|
+
echo $"Usage: $0 <new ruby version e.g. 2.4.4> <optional bool running from build_gem.sh>"
|
|
11
11
|
exit 1
|
|
12
12
|
}
|
|
13
13
|
|
|
@@ -38,5 +38,5 @@ cd $pwn_root && ./vagrant/provisioners/gem.sh
|
|
|
38
38
|
rvmsudo rvm install ruby-$new_ruby_version
|
|
39
39
|
echo $new_ruby_version > $pwn_root/.ruby-version
|
|
40
40
|
|
|
41
|
-
cd / && cd $pwn_root && rvm use $new_ruby_version@$ruby_gemset && ./
|
|
41
|
+
cd / && cd $pwn_root && rvm use $new_ruby_version@$ruby_gemset && ./build_gem.sh
|
|
42
42
|
rvmsudo gem pristine --all
|
data/vagrant/provisioners/pwn.sh
CHANGED
|
@@ -10,4 +10,4 @@ else
|
|
|
10
10
|
fi
|
|
11
11
|
|
|
12
12
|
export rvmsudo_secure_path=1
|
|
13
|
-
rvmsudo /bin/bash --login -c "cd ${pwn_root} && git config --global --add safe.directory ${pwn_root} && ./
|
|
13
|
+
rvmsudo /bin/bash --login -c "cd ${pwn_root} && git config --global --add safe.directory ${pwn_root} && ./build_gem.sh"
|
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.513
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- 0day Inc.
|
|
@@ -141,14 +141,14 @@ dependencies:
|
|
|
141
141
|
requirements:
|
|
142
142
|
- - ">="
|
|
143
143
|
- !ruby/object:Gem::Version
|
|
144
|
-
version: 4.0.
|
|
144
|
+
version: 4.0.2
|
|
145
145
|
type: :development
|
|
146
146
|
prerelease: false
|
|
147
147
|
version_requirements: !ruby/object:Gem::Requirement
|
|
148
148
|
requirements:
|
|
149
149
|
- - ">="
|
|
150
150
|
- !ruby/object:Gem::Version
|
|
151
|
-
version: 4.0.
|
|
151
|
+
version: 4.0.2
|
|
152
152
|
- !ruby/object:Gem::Dependency
|
|
153
153
|
name: bundler-audit
|
|
154
154
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -463,14 +463,14 @@ dependencies:
|
|
|
463
463
|
requirements:
|
|
464
464
|
- - '='
|
|
465
465
|
- !ruby/object:Gem::Version
|
|
466
|
-
version: 2.
|
|
466
|
+
version: 2.5.0
|
|
467
467
|
type: :runtime
|
|
468
468
|
prerelease: false
|
|
469
469
|
version_requirements: !ruby/object:Gem::Requirement
|
|
470
470
|
requirements:
|
|
471
471
|
- - '='
|
|
472
472
|
- !ruby/object:Gem::Version
|
|
473
|
-
version: 2.
|
|
473
|
+
version: 2.5.0
|
|
474
474
|
- !ruby/object:Gem::Dependency
|
|
475
475
|
name: jwt
|
|
476
476
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -533,14 +533,14 @@ dependencies:
|
|
|
533
533
|
requirements:
|
|
534
534
|
- - '='
|
|
535
535
|
- !ruby/object:Gem::Version
|
|
536
|
-
version: 0.0.
|
|
536
|
+
version: 0.0.149
|
|
537
537
|
type: :runtime
|
|
538
538
|
prerelease: false
|
|
539
539
|
version_requirements: !ruby/object:Gem::Requirement
|
|
540
540
|
requirements:
|
|
541
541
|
- - '='
|
|
542
542
|
- !ruby/object:Gem::Version
|
|
543
|
-
version: 0.0.
|
|
543
|
+
version: 0.0.149
|
|
544
544
|
- !ruby/object:Gem::Dependency
|
|
545
545
|
name: metasm
|
|
546
546
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -869,14 +869,14 @@ dependencies:
|
|
|
869
869
|
requirements:
|
|
870
870
|
- - '='
|
|
871
871
|
- !ruby/object:Gem::Version
|
|
872
|
-
version:
|
|
872
|
+
version: 7.0.1
|
|
873
873
|
type: :development
|
|
874
874
|
prerelease: false
|
|
875
875
|
version_requirements: !ruby/object:Gem::Requirement
|
|
876
876
|
requirements:
|
|
877
877
|
- - '='
|
|
878
878
|
- !ruby/object:Gem::Version
|
|
879
|
-
version:
|
|
879
|
+
version: 7.0.1
|
|
880
880
|
- !ruby/object:Gem::Dependency
|
|
881
881
|
name: rest-client
|
|
882
882
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -967,14 +967,14 @@ dependencies:
|
|
|
967
967
|
requirements:
|
|
968
968
|
- - '='
|
|
969
969
|
- !ruby/object:Gem::Version
|
|
970
|
-
version: 1.
|
|
970
|
+
version: 1.82.0
|
|
971
971
|
type: :runtime
|
|
972
972
|
prerelease: false
|
|
973
973
|
version_requirements: !ruby/object:Gem::Requirement
|
|
974
974
|
requirements:
|
|
975
975
|
- - '='
|
|
976
976
|
- !ruby/object:Gem::Version
|
|
977
|
-
version: 1.
|
|
977
|
+
version: 1.82.0
|
|
978
978
|
- !ruby/object:Gem::Dependency
|
|
979
979
|
name: rubocop-rake
|
|
980
980
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -1079,28 +1079,28 @@ dependencies:
|
|
|
1079
1079
|
requirements:
|
|
1080
1080
|
- - '='
|
|
1081
1081
|
- !ruby/object:Gem::Version
|
|
1082
|
-
version: 0.
|
|
1082
|
+
version: 0.143.0
|
|
1083
1083
|
type: :runtime
|
|
1084
1084
|
prerelease: false
|
|
1085
1085
|
version_requirements: !ruby/object:Gem::Requirement
|
|
1086
1086
|
requirements:
|
|
1087
1087
|
- - '='
|
|
1088
1088
|
- !ruby/object:Gem::Version
|
|
1089
|
-
version: 0.
|
|
1089
|
+
version: 0.143.0
|
|
1090
1090
|
- !ruby/object:Gem::Dependency
|
|
1091
1091
|
name: selenium-webdriver
|
|
1092
1092
|
requirement: !ruby/object:Gem::Requirement
|
|
1093
1093
|
requirements:
|
|
1094
1094
|
- - '='
|
|
1095
1095
|
- !ruby/object:Gem::Version
|
|
1096
|
-
version: 4.
|
|
1096
|
+
version: 4.39.0
|
|
1097
1097
|
type: :runtime
|
|
1098
1098
|
prerelease: false
|
|
1099
1099
|
version_requirements: !ruby/object:Gem::Requirement
|
|
1100
1100
|
requirements:
|
|
1101
1101
|
- - '='
|
|
1102
1102
|
- !ruby/object:Gem::Version
|
|
1103
|
-
version: 4.
|
|
1103
|
+
version: 4.39.0
|
|
1104
1104
|
- !ruby/object:Gem::Dependency
|
|
1105
1105
|
name: slack-ruby-client
|
|
1106
1106
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -1303,14 +1303,14 @@ dependencies:
|
|
|
1303
1303
|
requirements:
|
|
1304
1304
|
- - '='
|
|
1305
1305
|
- !ruby/object:Gem::Version
|
|
1306
|
-
version: 0.9.
|
|
1306
|
+
version: 0.9.38
|
|
1307
1307
|
type: :runtime
|
|
1308
1308
|
prerelease: false
|
|
1309
1309
|
version_requirements: !ruby/object:Gem::Requirement
|
|
1310
1310
|
requirements:
|
|
1311
1311
|
- - '='
|
|
1312
1312
|
- !ruby/object:Gem::Version
|
|
1313
|
-
version: 0.9.
|
|
1313
|
+
version: 0.9.38
|
|
1314
1314
|
description: https://github.com/0dayinc/pwn/README.md
|
|
1315
1315
|
email:
|
|
1316
1316
|
- request.pentest@0dayinc.com
|
|
@@ -1438,7 +1438,7 @@ files:
|
|
|
1438
1438
|
- bin/pwn_xss_dom_vectors
|
|
1439
1439
|
- bin/pwn_zaproxy_active_rest_api_scan
|
|
1440
1440
|
- bin/pwn_zaproxy_active_scan
|
|
1441
|
-
-
|
|
1441
|
+
- build_gem.sh
|
|
1442
1442
|
- documentation/PWN.png
|
|
1443
1443
|
- documentation/PWN_Contributors_and_Users.png
|
|
1444
1444
|
- documentation/fax-spectrogram.png
|
|
@@ -1754,8 +1754,7 @@ files:
|
|
|
1754
1754
|
- etc/userland/vmware/postgres/vagrant.yaml.EXAMPLE
|
|
1755
1755
|
- etc/userland/vmware/recon-ng/vagrant.yaml.EXAMPLE
|
|
1756
1756
|
- etc/userland/vmware/vagrant.yaml.EXAMPLE
|
|
1757
|
-
-
|
|
1758
|
-
- git_commit_test_reinit_gem.sh
|
|
1757
|
+
- git_commit.sh
|
|
1759
1758
|
- install.sh
|
|
1760
1759
|
- lib/pwn.rb
|
|
1761
1760
|
- lib/pwn/ai.rb
|
|
@@ -2115,7 +2114,7 @@ files:
|
|
|
2115
2114
|
- packer/provisioners/xrdp.sh
|
|
2116
2115
|
- packer/provisioners/zzuf.sh
|
|
2117
2116
|
- pwn.gemspec
|
|
2118
|
-
-
|
|
2117
|
+
- reinstall_gemset.sh
|
|
2119
2118
|
- spec/lib/pwn/ai/grok_spec.rb
|
|
2120
2119
|
- spec/lib/pwn/ai/introspection_spec.rb
|
|
2121
2120
|
- spec/lib/pwn/ai/ollama_spec.rb
|
|
@@ -2395,7 +2394,8 @@ files:
|
|
|
2395
2394
|
- third_party/http-request-headers-fields-large.txt
|
|
2396
2395
|
- third_party/pwn_rdoc.jsonl
|
|
2397
2396
|
- third_party/r2-pwn-layout
|
|
2398
|
-
-
|
|
2397
|
+
- upgrade_Gemfile_gems.sh
|
|
2398
|
+
- upgrade_pwn.sh
|
|
2399
2399
|
- upgrade_ruby.sh
|
|
2400
2400
|
- vagrant/provisioners/apache2.sh
|
|
2401
2401
|
- vagrant/provisioners/beef.rb
|
|
@@ -2445,7 +2445,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
2445
2445
|
- !ruby/object:Gem::Version
|
|
2446
2446
|
version: '0'
|
|
2447
2447
|
requirements: []
|
|
2448
|
-
rubygems_version: 4.0.
|
|
2448
|
+
rubygems_version: 4.0.2
|
|
2449
2449
|
specification_version: 4
|
|
2450
2450
|
summary: Automated Security Testing for CI/CD Pipelines & Beyond
|
|
2451
2451
|
test_files: []
|
|
File without changes
|
|
File without changes
|