pwn 0.5.531 → 0.5.532

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: db0acc490e9b6e0dca25ce2a5b5bcd2b19f435f129ae0221857842c267941c32
4
- data.tar.gz: 53374f569fcd0484a59c1c74e1d160872c6fab8afb375b7a7ac19fdc7d4682d8
3
+ metadata.gz: 1ac373c33f4440155c8497862905fccff4a379c9ead0e5db1aa47f3239cbb5f3
4
+ data.tar.gz: 23a97347a0f5cf48a8c29ba9c06a0e946cb27976b2c9d3b224e025d20e48447a
5
5
  SHA512:
6
- metadata.gz: 447ff1c3aa6d7118145b4a20f555f3c5c541423f0b8799b486cf1c3ef8cb5ef2181e0676608a7aa164da72be87d8f515d1f9c7af3fdf792ddd26c95b4edc6234
7
- data.tar.gz: 99ac0586844bb9b0693fa83eb406b35419d940bbff7cace73df0aa0c0da50c8bf059137cbe9aed40d63a68b9bfb7a44457fe54103fc81204b060f1e2a2dce713
6
+ metadata.gz: 49124cf7885e5208523b3c9cd03f7f033e05121abb21dd2087cbebe67dc9924753e5cd4758fb0a3cc9aa49c39fd0da952be85d31b37127acba419fad792fb6e5
7
+ data.tar.gz: dc46bce0905a436a7395f0d1c04dd4b69af82f44d3970dda76232466090f736eaee6cf40aed0dc5b4fb15114c7a0d4492044cc88422faa76f57ea72ca582148c
data/README.md CHANGED
@@ -37,7 +37,7 @@ $ cd /opt/pwn
37
37
  $ ./install.sh
38
38
  $ ./install.sh ruby-gem
39
39
  $ pwn
40
- pwn[v0.5.531]:001 >>> PWN.help
40
+ pwn[v0.5.532]:001 >>> PWN.help
41
41
  ```
42
42
 
43
43
  [![Installing the pwn Security Automation Framework](https://raw.githubusercontent.com/0dayInc/pwn/master/documentation/pwn_install.png)](https://youtu.be/G7iLUY4FzsI)
@@ -52,7 +52,7 @@ $ rvm use ruby-4.0.0@pwn
52
52
  $ gem uninstall --all --executables pwn
53
53
  $ gem install --verbose pwn
54
54
  $ pwn
55
- pwn[v0.5.531]:001 >>> PWN.help
55
+ pwn[v0.5.532]:001 >>> PWN.help
56
56
  ```
57
57
 
58
58
  If you're using a multi-user install of RVM do:
@@ -62,7 +62,7 @@ $ rvm use ruby-4.0.0@pwn
62
62
  $ rvmsudo gem uninstall --all --executables pwn
63
63
  $ rvmsudo gem install --verbose pwn
64
64
  $ pwn
65
- pwn[v0.5.531]:001 >>> PWN.help
65
+ pwn[v0.5.532]:001 >>> PWN.help
66
66
  ```
67
67
 
68
68
  PWN periodically upgrades to the latest version of Ruby which is reflected in `/opt/pwn/.ruby-version`. The easiest way to upgrade to the latest version of Ruby from a previous PWN installation is to run the following script:
@@ -14,6 +14,7 @@ module PWN
14
14
  # )
15
15
 
16
16
  public_class_method def self.decode(opts = {})
17
+ puts 'IM HERE'
17
18
  freq_obj = opts[:freq_obj]
18
19
  gqrx_sock = freq_obj[:gqrx_sock]
19
20
  record_path = freq_obj[:record_path]
@@ -63,7 +64,7 @@ module PWN
63
64
  last_resp = {}
64
65
 
65
66
  loop do
66
- current_wav_size = File.size?(record_path) ||= 0
67
+ current_wav_size = File.size?(record_path) || 0
67
68
  pocsag_resp = {}
68
69
 
69
70
  # Only update when we have valid new data
@@ -73,7 +74,7 @@ module PWN
73
74
  new_bytes -= new_bytes % 8
74
75
  data = File.binread(record_path, new_bytes, bytes_read)
75
76
 
76
- msg = "DECODED DATA"
77
+ msg = 'DECODED DATA'
77
78
 
78
79
  spinner.update(decoding: msg)
79
80
  last_resp = pocsag_resp.dup
@@ -95,13 +96,15 @@ module PWN
95
96
  spinner.error('Decoding failed') if defined?(spinner)
96
97
  raise e
97
98
  ensure
98
- File.unlink(record_path) if File.exist?(record_path)
99
+ # Toggle POCSAG off and on to reset the decoder
99
100
  PWN::SDR::GQRX.cmd(
100
101
  gqrx_sock: gqrx_sock,
101
102
  cmd: 'U RECORD 0',
102
103
  resp_ok: 'RPRT 0'
103
104
  )
104
105
 
106
+ File.unlink(record_path)
107
+
105
108
  spinner.stop if defined?(spinner) && spinner
106
109
  end
107
110
 
@@ -108,6 +108,13 @@ module PWN
108
108
  spinner.error('Decoding failed') if defined?(spinner)
109
109
  raise e
110
110
  ensure
111
+ # Toggle RDS off and on to reset the decoder
112
+ PWN::SDR::GQRX.cmd(
113
+ gqrx_sock: gqrx_sock,
114
+ cmd: 'U RDS 0',
115
+ resp_ok: 'RPRT 0'
116
+ )
117
+
111
118
  spinner.stop if defined?(spinner) && spinner
112
119
  end
113
120
 
@@ -417,7 +417,7 @@ module PWN
417
417
  bandwidth: '16.000',
418
418
  precision: 4
419
419
  },
420
- pager: {
420
+ pager_all: {
421
421
  ranges: [
422
422
  # Low-power / unlicensed / CB-related (very limited POCSAG usage)
423
423
  # RCRS channels (shared data/telemetry, occasional POCSAG)
@@ -449,6 +449,28 @@ module PWN
449
449
  ],
450
450
  demodulator_mode: :FM,
451
451
  bandwidth: '25.000',
452
+ precision: 4
453
+ },
454
+ pager_pocsag: {
455
+ ranges: [
456
+ # High-band VHF paging — most common for public-safety POCSAG today
457
+ # Classic VHF paging band (152/157/158 MHz very common)
458
+ { start_freq: '152.000.000', target_freq: '159.000.000' },
459
+
460
+ # UHF paging bands (hospital, on-site, restaurant/coaster pagers, some public safety)
461
+ # UHF low — occasional private systems
462
+ { start_freq: '400.000.000', target_freq: '430.000.000' },
463
+ # UHF high — very common for local POCSAG (incl. 450–470 & 467.xxx for on-site)
464
+ { start_freq: '440.000.000', target_freq: '470.000.000' },
465
+ # Classic UHF paging allocation (454/459 MHz pairs — many reallocated)
466
+ { start_freq: '454.000.000', target_freq: '460.000.000' },
467
+
468
+ # 900 MHz exclusive paging band (mostly FLEX, but some legacy POCSAG remains)
469
+ # Primary nationwide commercial paging band
470
+ { start_freq: '929.000.000', target_freq: '932.000.000' }
471
+ ],
472
+ demodulator_mode: :FM,
473
+ bandwidth: '25.000',
452
474
  precision: 4,
453
475
  decoder: :pocsag
454
476
  },
data/lib/pwn/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PWN
4
- VERSION = '0.5.531'
4
+ VERSION = '0.5.532'
5
5
  end
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.531
4
+ version: 0.5.532
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.