pwn 0.4.462 → 0.4.463
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 +2 -2
- data/bin/pwn_serial_msr206 +66 -0
- data/lib/pwn/plugins/msr206.rb +6 -4
- data/lib/pwn/plugins/serial.rb +4 -4
- data/lib/pwn/plugins/son_micro_rfid.rb +6 -4
- data/lib/pwn/version.rb +1 -1
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a39a74b8bc26847795f54fdcbd7f48eb5a38c2587da0d233e74bd96a8267c9a9
|
4
|
+
data.tar.gz: fa37dda7a5e16dc6743da3930b5278d83077e2ba100d65566eef9fd39c373967
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e08cddc2558b06ed364a65dd058f94d75f2b02241a8adf613818c992ad038e8bb5f23b30d59e8f9061a3d1538a817697eabf4985f484f4076827e4fbbbe28ddc
|
7
|
+
data.tar.gz: 2b098194d45038d7cc85ba1653a3aa85bb432de6049fcebbcc58575a982eb02b31c4757d425c984e60c88a07a6a62868c411ed52043d79dff649052e65a3c27f
|
data/README.md
CHANGED
@@ -37,7 +37,7 @@ $ rvm use ruby-3.1.2@pwn
|
|
37
37
|
$ rvm list gemsets
|
38
38
|
$ gem install --verbose pwn
|
39
39
|
$ pwn
|
40
|
-
pwn[v0.4.
|
40
|
+
pwn[v0.4.463]:001 >>> PWN.help
|
41
41
|
```
|
42
42
|
|
43
43
|
[](https://youtu.be/G7iLUY4FzsI)
|
@@ -52,7 +52,7 @@ $ rvm use ruby-3.1.2@pwn
|
|
52
52
|
$ gem uninstall --all --executables pwn
|
53
53
|
$ gem install --verbose pwn
|
54
54
|
$ pwn
|
55
|
-
pwn[v0.4.
|
55
|
+
pwn[v0.4.463]:001 >>> PWN.help
|
56
56
|
```
|
57
57
|
|
58
58
|
|
@@ -0,0 +1,66 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: false
|
3
|
+
|
4
|
+
require 'pwn'
|
5
|
+
require 'optparse'
|
6
|
+
|
7
|
+
opts = {}
|
8
|
+
OptionParser.new do |options|
|
9
|
+
options.banner = "USAGE:
|
10
|
+
#{$PROGRAM_NAME} [opts]
|
11
|
+
"
|
12
|
+
|
13
|
+
options.on('-dDEV', '--block-dev=DEV', '<Optional - MSR206 block device path (defaults to /dev/ttyUSB0)>') do |d|
|
14
|
+
opts[:block_dev] = d
|
15
|
+
end
|
16
|
+
|
17
|
+
options.on('-bBAUD', '--baud=DEV', '<Optional - (defaults to 9600)>') do |d|
|
18
|
+
opts[:block_dev] = d
|
19
|
+
end
|
20
|
+
|
21
|
+
options.on('-DDATABITS', '--data-bits=DATABITS', '<Optional - (defaults to 7)>') do |d|
|
22
|
+
opts[:block_dev] = d
|
23
|
+
end
|
24
|
+
|
25
|
+
options.on('-sSTOPBITS', '--stop-bits=STOPBITS', '<Optional - (defaults to 1)>') do |d|
|
26
|
+
opts[:block_dev] = d
|
27
|
+
end
|
28
|
+
|
29
|
+
options.on('-pPARITY', '--parity=PARITY', '<Optional - :even|:mark|:odd|:space|:none (defaults to :odd)>') do |d|
|
30
|
+
opts[:block_dev] = d
|
31
|
+
end
|
32
|
+
|
33
|
+
options.on('-fFLOW', '--flow-control=FLOW', '<Optional - :none||:hard||:soft (defaults to :none)>') do |d|
|
34
|
+
opts[:block_dev] = d
|
35
|
+
end
|
36
|
+
end.parse!
|
37
|
+
|
38
|
+
if opts.empty?
|
39
|
+
puts `#{$PROGRAM_NAME} --help`
|
40
|
+
exit 1
|
41
|
+
end
|
42
|
+
|
43
|
+
begin
|
44
|
+
block_dev = opts[:block_dev]
|
45
|
+
baud = opts[:baud]
|
46
|
+
data_bits = opts[:data_bits]
|
47
|
+
stop_bits = opts[:stop_bits]
|
48
|
+
parity = opts[:parity]
|
49
|
+
flow_control = opts[:flow_control]
|
50
|
+
|
51
|
+
msr206_obj = PWN::Plugins::MSR206.connect(
|
52
|
+
block_dev: block_dev,
|
53
|
+
baud: baud,
|
54
|
+
data_bits: data_bits,
|
55
|
+
stop_bits: stop_bits,
|
56
|
+
parity: parity,
|
57
|
+
flow_control: flow_control
|
58
|
+
)
|
59
|
+
|
60
|
+
serial_resp = PWN::Plugins::MSR206.exec(
|
61
|
+
msr206_obj: msr206_obj,
|
62
|
+
cmd: :simulate_power_cycle_warm_reset
|
63
|
+
)
|
64
|
+
rescue SystemExit, Interrupt
|
65
|
+
puts "\nGoodbye."
|
66
|
+
end
|
data/lib/pwn/plugins/msr206.rb
CHANGED
@@ -11,16 +11,18 @@ module PWN
|
|
11
11
|
# baud: 'optional - (defaults to 9600)',
|
12
12
|
# data_bits: 'optional - (defaults to 7)',
|
13
13
|
# stop_bits: 'optional - (defaults to 1)',
|
14
|
-
# parity: 'optional - (defaults to
|
15
|
-
# flow_control: 'optional - (defaults to
|
14
|
+
# parity: 'optional - :even|:mark|:odd|:space|:none (defaults to :odd),'
|
15
|
+
# flow_control: 'optional - :none||:hard||:soft (defaults to :none)'
|
16
16
|
# )
|
17
17
|
|
18
18
|
public_class_method def self.connect(opts = {})
|
19
19
|
# Default Baud Rate for this Device is 19200
|
20
|
+
opts[:block_dev] = '/dev/ttyUSB0' unless opts[:block_dev]
|
20
21
|
opts[:baud] = 9_600 unless opts[:baud]
|
21
22
|
opts[:data_bits] = 7 unless opts[:data_bits]
|
22
23
|
opts[:stop_bits] = 1 unless opts[:stop_bits]
|
23
24
|
opts[:parity] = :odd unless opts[:parity]
|
25
|
+
opts[:flow_control] = :none unless opts[:flow_control]
|
24
26
|
msr206_obj = PWN::Plugins::Serial.connect(opts)
|
25
27
|
rescue StandardError => e
|
26
28
|
disconnect(msr206_obj: msr206_obj) unless msr206_obj.nil?
|
@@ -309,8 +311,8 @@ module PWN
|
|
309
311
|
baud: 'optional (defaults to 9600)',
|
310
312
|
data_bits: 'optional (defaults to 7)',
|
311
313
|
stop_bits: 'optional (defaults to 1)',
|
312
|
-
parity: 'optional (defaults to
|
313
|
-
flow_control: 'optional (defaults to
|
314
|
+
parity: 'optional - :even|:mark|:odd|:space|:none (defaults to :odd),'
|
315
|
+
flow_control: 'optional - :none||:hard||:soft (defaults to :none)'
|
314
316
|
)
|
315
317
|
|
316
318
|
cmds = #{self}.list_cmds
|
data/lib/pwn/plugins/serial.rb
CHANGED
@@ -16,8 +16,8 @@ module PWN
|
|
16
16
|
# baud: 'optional - (defaults to 9600)',
|
17
17
|
# data_bits: 'optional - (defaults to 8)',
|
18
18
|
# stop_bits: 'optional - (defaults to 1)',
|
19
|
-
# parity: 'optional - (defaults to
|
20
|
-
# flow_control: 'optional - (defaults to
|
19
|
+
# parity: 'optional - :even|:mark|:odd|:space|:none (defaults to :none)',
|
20
|
+
# flow_control: 'optional - :none||:hard||:soft (defaults to :none)'
|
21
21
|
# )
|
22
22
|
|
23
23
|
public_class_method def self.connect(opts = {})
|
@@ -278,8 +278,8 @@ module PWN
|
|
278
278
|
baud: 'optional (defaults to 9600)',
|
279
279
|
data_bits: 'optional (defaults to 8)',
|
280
280
|
stop_bits: 'optional (defaults to 1)',
|
281
|
-
parity: 'optional (defaults to
|
282
|
-
flow_control: 'optional (defaults to
|
281
|
+
parity: 'optional - :even|:mark|:odd|:space|:none (defaults to :none)',
|
282
|
+
flow_control: 'optional - :none||:hard||:soft (defaults to :none)'
|
283
283
|
)
|
284
284
|
|
285
285
|
line_state = #{self}.get_line_state(
|
@@ -11,16 +11,18 @@ module PWN
|
|
11
11
|
# baud: 'optional - (defaults to 19_200)',
|
12
12
|
# data_bits: 'optional - (defaults to 8)',
|
13
13
|
# stop_bits: 'optional - (defaults to 1)',
|
14
|
-
# parity: 'optional - (defaults to
|
15
|
-
# flow_control: 'optional - (defaults to
|
14
|
+
# parity: 'optional - :even|:mark|:odd|:space|:none (defaults to :none)',
|
15
|
+
# flow_control: 'optional - :none||:hard||:soft (defaults to :none)'
|
16
16
|
# )
|
17
17
|
|
18
18
|
public_class_method def self.connect(opts = {})
|
19
19
|
# Default Baud Rate for this Device is 19200
|
20
|
+
opts[:block_dev] = '/dev/ttyUSB0' unless opts[:block_dev]
|
20
21
|
opts[:baud] = 19_200 unless opts[:baud]
|
21
22
|
opts[:data_bits] = 8 unless opts[:data_bits]
|
22
23
|
opts[:stop_bits] = 1 unless opts[:stop_bits]
|
23
24
|
opts[:parity] = :none unless opts[:parity]
|
25
|
+
opts[:flow_control] = :none unless opts[:flow_control]
|
24
26
|
son_micro_rfid_obj = PWN::Plugins::Serial.connect(opts)
|
25
27
|
rescue StandardError => e
|
26
28
|
disconnect(son_micro_rfid_obj: son_micro_rfid_obj) unless son_micro_rfid_obj.nil?
|
@@ -365,8 +367,8 @@ module PWN
|
|
365
367
|
baud: 'optional (defaults to 19_200)',
|
366
368
|
data_bits: 'optional (defaults to 8)',
|
367
369
|
stop_bits: 'optional (defaults to 1)',
|
368
|
-
parity: 'optional (defaults to
|
369
|
-
flow_control: 'optional (defaults to
|
370
|
+
parity: 'optional - :even|:mark|:odd|:space|:none (defaults to :odd),'
|
371
|
+
flow_control: 'optional - :none||:hard||:soft (defaults to :none)'
|
370
372
|
)
|
371
373
|
|
372
374
|
cmds = #{self}.list_cmds
|
data/lib/pwn/version.rb
CHANGED
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.4.
|
4
|
+
version: 0.4.463
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- 0day Inc.
|
@@ -1016,6 +1016,7 @@ executables:
|
|
1016
1016
|
- pwn_perimeter_recon
|
1017
1017
|
- pwn_sast
|
1018
1018
|
- pwn_serial_check_voicemail
|
1019
|
+
- pwn_serial_msr206
|
1019
1020
|
- pwn_serial_qualcomm_commands
|
1020
1021
|
- pwn_simple_http_server
|
1021
1022
|
- pwn_web_cache_deception
|
@@ -1075,6 +1076,7 @@ files:
|
|
1075
1076
|
- bin/pwn_perimeter_recon
|
1076
1077
|
- bin/pwn_sast
|
1077
1078
|
- bin/pwn_serial_check_voicemail
|
1079
|
+
- bin/pwn_serial_msr206
|
1078
1080
|
- bin/pwn_serial_qualcomm_commands
|
1079
1081
|
- bin/pwn_simple_http_server
|
1080
1082
|
- bin/pwn_web_cache_deception
|