pwn 0.5.227 → 0.5.229

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: 4e6e0a930654bf9e7485a0b30f3c378f6fe4bb13c5258ef0444b97a82bc581c3
4
- data.tar.gz: a60ea3a728262b4058aa36ae7e86fb73d7a59eb371876889b0baaa64e52d3ae4
3
+ metadata.gz: 001b5c31619468cfb8ec9da3effa118109f6af66b388d4c71a7a119d658fc28f
4
+ data.tar.gz: 749fde686f3242b60d3da6b5d26488820a4b1c8e483dfdf914f84dfa416e6014
5
5
  SHA512:
6
- metadata.gz: 479e758d5ccaf7a1c5b9d00339a21fdd3fcb11411fd2572f11c312abad6b1597685f42a27e4320d5c155980131143eaa15d665292a331f2496999a98ec8cc86e
7
- data.tar.gz: 462aed76c891e0ba1a6dd9189a7cc1c3e150ec6d110a7d9670fb7672b1ab838b4e839dd8951799b2a6a834751e070b8ad06b95defe39617905d022c47e25b634
6
+ metadata.gz: 266e937c6b03158194cc17535ee7732398d8b5d62587a5954a953db3068c3652976731f7b498e94a6d8eab716d73202b676fcd13a9e7855732108aaf95cca028
7
+ data.tar.gz: 3e2b4fa17bb40f7a43bb7fcef1c9ae488fc00e98ea5f6e1e86fa24eb51ea777c807814e776d634c4e2ef089782f509c3d7dc669520c9f3ae9ce1877a86877e65
data/.rubocop_todo.yml CHANGED
@@ -1,25 +1,14 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2024-10-30 18:35:44 UTC using RuboCop version 1.66.1.
3
+ # on 2025-01-14 18:50:21 UTC using RuboCop version 1.70.0.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
7
7
  # versions of RuboCop, may require this file to be generated again.
8
8
 
9
- # Offense count: 5
10
- # This cop supports safe autocorrection (--autocorrect).
11
- # Configuration parameters: EnforcedStyle.
12
- # SupportedStyles: space, no_space
13
- Layout/LineContinuationSpacing:
14
- Exclude:
15
- - 'packer/provisioners/beef.rb'
16
- - 'packer/provisioners/metasploit.rb'
17
- - 'packer/provisioners/wpscan.rb'
18
- - 'vagrant/provisioners/beef.rb'
19
-
20
9
  # Offense count: 21
21
10
  # This cop supports safe autocorrection (--autocorrect).
22
- # Configuration parameters: Max, AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns.
11
+ # Configuration parameters: Max, AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns, SplitStrings.
23
12
  # URISchemes: http, https
24
13
  Layout/LineLength:
25
14
  Exclude:
@@ -41,7 +30,7 @@ Lint/NestedMethodDefinition:
41
30
  Exclude:
42
31
  - 'lib/pwn/plugins/repl.rb'
43
32
 
44
- # Offense count: 312
33
+ # Offense count: 316
45
34
  # This cop supports safe autocorrection (--autocorrect).
46
35
  # Configuration parameters: AutoCorrect.
47
36
  Lint/UselessAssignment:
@@ -117,7 +106,7 @@ Style/Alias:
117
106
  Style/ClassVars:
118
107
  Enabled: false
119
108
 
120
- # Offense count: 282
109
+ # Offense count: 280
121
110
  # This cop supports safe autocorrection (--autocorrect).
122
111
  # Configuration parameters: EnforcedStyle, SingleLineConditionsOnly, IncludeTernaryExpressions.
123
112
  # SupportedStyles: assign_to_condition, assign_inside_condition
@@ -150,6 +139,21 @@ Style/MapIntoArray:
150
139
  - 'lib/pwn/plugins/credit_card.rb'
151
140
  - 'lib/pwn/plugins/nexpose_vuln_scan.rb'
152
141
 
142
+ # Offense count: 9
143
+ # This cop supports safe autocorrection (--autocorrect).
144
+ # Configuration parameters: AllowMethodComparison, ComparisonsThreshold.
145
+ Style/MultipleComparison:
146
+ Exclude:
147
+ - 'lib/pwn/sast/banned_function_calls_c.rb'
148
+ - 'lib/pwn/sast/cmd_execution_python.rb'
149
+ - 'lib/pwn/sast/cmd_execution_ruby.rb'
150
+ - 'lib/pwn/sast/deserial_java.rb'
151
+ - 'lib/pwn/sast/factory.rb'
152
+ - 'lib/pwn/sast/logger.rb'
153
+ - 'lib/pwn/sast/throw_errors.rb'
154
+ - 'lib/pwn/www/duckduckgo.rb'
155
+ - 'lib/pwn/www/twitter.rb'
156
+
153
157
  # Offense count: 1
154
158
  # This cop supports safe autocorrection (--autocorrect).
155
159
  Style/RedundantBegin:
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.3.5
1
+ 3.4.1
data/Gemfile CHANGED
@@ -18,9 +18,9 @@ gem 'aws-sdk', '3.2.0'
18
18
  # gem 'bettercap', '1.6.2'
19
19
  gem 'barby', '0.7.0'
20
20
  gem 'base32', '0.3.4'
21
- gem 'brakeman', '6.2.2'
21
+ gem 'brakeman', '7.0.0'
22
22
  gem 'bson', '5.0.2'
23
- gem 'bundler', '>=2.6.0'
23
+ gem 'bundler', '>=2.6.2'
24
24
  gem 'bundler-audit', '0.9.2'
25
25
  gem 'bunny', '2.23.0'
26
26
  gem 'colorize', '1.1.0'
@@ -29,11 +29,11 @@ gem 'eventmachine', '1.2.7'
29
29
  gem 'executable-hooks', '1.7.1'
30
30
  gem 'faker', '3.5.1'
31
31
  gem 'faye-websocket', '0.11.3'
32
- gem 'ffi', '1.17.0'
32
+ gem 'ffi', '1.17.1'
33
33
  gem 'fftw3', '0.3'
34
34
  gem 'gdb', '1.0.0'
35
35
  gem 'gem-wrappers', '1.4.0'
36
- gem 'geocoder', '1.8.4'
36
+ gem 'geocoder', '1.8.5'
37
37
  gem 'gist', '6.0.0'
38
38
  gem 'gruff', '0.25.0'
39
39
  # gem 'hidapi', '0.1.9'
@@ -41,13 +41,13 @@ gem 'htmlentities', '4.3.4'
41
41
  gem 'ipaddress', '0.8.3'
42
42
  gem 'jenkins_api_client2', '1.9.0'
43
43
  gem 'js-beautify', '0.1.8'
44
- gem 'json', '2.9.0'
44
+ gem 'json', '2.9.1'
45
45
  gem 'jsonpath', '1.1.5'
46
- gem 'jwt', '2.9.3'
46
+ gem 'jwt', '2.10.1'
47
47
  gem 'libusb', '0.7.2'
48
48
  gem 'luhn', '1.0.2'
49
49
  gem 'mail', '2.8.1'
50
- gem 'meshtastic', '0.0.78'
50
+ gem 'meshtastic', '0.0.81'
51
51
  gem 'metasm', '1.0.5'
52
52
  gem 'mongo', '2.21.0'
53
53
  gem 'msfrpc-client', '1.1.2'
@@ -56,7 +56,7 @@ gem 'net-ldap', '0.19.0'
56
56
  gem 'net-openvpn', '0.8.7'
57
57
  gem 'net-smtp', '0.5.0'
58
58
  gem 'nexpose', '7.3.0'
59
- gem 'nokogiri', '1.17.2'
59
+ gem 'nokogiri', '1.18.1'
60
60
  gem 'nokogiri-diff', '0.3.0'
61
61
  # gem 'oauth2', '2.0.9'
62
62
  gem 'oily_png', '1.2.1'
@@ -64,22 +64,22 @@ gem 'open3', '0.2.1'
64
64
  gem 'os', '1.1.4'
65
65
  gem 'ostruct', '0.6.1'
66
66
  gem 'packetfu', '2.0.0'
67
- gem 'packetgen', '3.3.3'
67
+ gem 'packetgen', '4.0.0'
68
68
  gem 'pdf-reader', '2.13.0'
69
69
  gem 'pg', '1.5.9'
70
- gem 'pry', '0.15.0'
70
+ gem 'pry', '0.15.2'
71
71
  gem 'pry-doc', '1.5.0'
72
72
  gem 'rake', '13.2.1'
73
73
  gem 'rb-readline', '0.5.5'
74
74
  gem 'rbvmomi2', '3.8.0'
75
- gem 'rdoc', '6.9.1'
75
+ gem 'rdoc', '6.10.0'
76
76
  gem 'rest-client', '2.1.0'
77
77
  gem 'rex', '2.0.13'
78
78
  gem 'rmagick', '6.0.1'
79
79
  gem 'rqrcode', '2.2.0'
80
80
  gem 'rspec', '3.13.0'
81
81
  gem 'rtesseract', '3.1.3'
82
- gem 'rubocop', '1.69.2'
82
+ gem 'rubocop', '1.70.0'
83
83
  gem 'rubocop-rake', '0.6.0'
84
84
  gem 'rubocop-rspec', '3.3.0'
85
85
  gem 'ruby-audio', '1.6.1'
@@ -88,15 +88,16 @@ gem 'ruby-saml', '1.17.0'
88
88
  gem 'rvm', '1.11.3.9'
89
89
  gem 'savon', '2.15.1'
90
90
  gem 'selenium-devtools', '0.131.0'
91
- gem 'serialport', '1.3.2'
91
+ # gem 'serialport', '1.3.2'
92
92
  # gem 'sinatra', '4.0.0'
93
93
  gem 'slack-ruby-client', '2.4.0'
94
94
  gem 'socksify', '1.7.1'
95
95
  gem 'spreadsheet', '1.3.3'
96
- gem 'sqlite3', '2.4.1'
96
+ gem 'sqlite3', '2.5.0'
97
97
  gem 'thin', '1.8.2'
98
98
  gem 'tty-prompt', '0.23.1'
99
99
  gem 'tty-spinner', '0.9.3'
100
+ gem 'uart', '1.0.0'
100
101
  gem 'watir', '7.3.0'
101
102
  gem 'waveform', '0.1.3'
102
103
  gem 'webrick', '1.9.1'
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.227]:001 >>> PWN.help
40
+ pwn[v0.5.229]: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)
@@ -48,21 +48,21 @@ pwn[v0.5.227]:001 >>> PWN.help
48
48
  It's wise to update pwn often as numerous versions are released/week:
49
49
  ```
50
50
  $ rvm list gemsets
51
- $ rvm use ruby-3.3.5@pwn
51
+ $ rvm use ruby-3.4.1@pwn
52
52
  $ gem uninstall --all --executables pwn
53
53
  $ gem install --verbose pwn
54
54
  $ pwn
55
- pwn[v0.5.227]:001 >>> PWN.help
55
+ pwn[v0.5.229]:001 >>> PWN.help
56
56
  ```
57
57
 
58
58
  If you're using a multi-user install of RVM do:
59
59
  ```
60
60
  $ rvm list gemsets
61
- $ rvm use ruby-3.3.5@pwn
61
+ $ rvm use ruby-3.4.1@pwn
62
62
  $ rvmsudo gem uninstall --all --executables pwn
63
63
  $ rvmsudo gem install --verbose pwn
64
64
  $ pwn
65
- pwn[v0.5.227]:001 >>> PWN.help
65
+ pwn[v0.5.229]: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:
@@ -12,7 +12,18 @@ if (( $# == 3 )); then
12
12
  git add . --all
13
13
  echo 'Updating Gems to Latest Versions in Gemfile...'
14
14
  ./find_latest_gem_versions_per_Gemfile.sh
15
+ if [[ $? -ne 0 ]]; then
16
+ echo 'ERROR: find_latest_gem_versions_per_Gemfile.sh failed!'
17
+ exit 1
18
+ fi
19
+
15
20
  pwn_autoinc_version
21
+ if [[ $? -ne 0 ]]; then
22
+ echo 'ERROR: pwn_autoinc_version failed! Investigate and bump pwn version manually.'
23
+ exit 1
24
+ fi
25
+
26
+ # Generate RDoc JSONL for fine-tunning LLMs
16
27
  pwn_rdoc_to_jsonl --rdoc-root-dir '/opt/pwn/rdoc/PWN' --jsonl-results '/opt/pwn/third_party/pwn_rdoc.jsonl'
17
28
 
18
29
  # Tag for every 100 commits (i.e. 0.1.100, 0.1.200, etc)
@@ -24,6 +35,10 @@ if (( $# == 3 )); then
24
35
 
25
36
  git commit -a -S --author="${1} <${2}>" -m "${3}"
26
37
  ./update_pwn.sh
38
+ if [[ $? -ne 0 ]]; then
39
+ echo 'ERROR: update_pwn.sh failed!'
40
+ exit 1
41
+ fi
27
42
 
28
43
  latest_gem=$(ls pkg/*.gem)
29
44
  if [[ $latest_gem != "" ]]; then
@@ -168,6 +168,20 @@ module PWN
168
168
  raise e
169
169
  end
170
170
 
171
+ # Supported Method Parameters::
172
+ # PWN::Banner::Matrix.has_you
173
+
174
+ public_class_method def self.you?
175
+ loop do
176
+ # Clear the screen
177
+ print "\e[2J\e[f"
178
+ puts get
179
+ sleep 0.09
180
+ end
181
+ rescue StandardError => e
182
+ raise e
183
+ end
184
+
171
185
  # Author(s):: 0day Inc. <support@0dayinc.com>
172
186
 
173
187
  public_class_method def self.authors
@@ -182,6 +196,8 @@ module PWN
182
196
  puts "USAGE:
183
197
  #{self}.get
184
198
 
199
+ #{self}.has_you
200
+
185
201
  #{self}.authors
186
202
  "
187
203
  end
@@ -127,8 +127,7 @@ module PWN
127
127
  baud: 'optional (defaults to 9600)',
128
128
  data_bits: 'optional (defaults to 8)',
129
129
  stop_bits: 'optional (defaults to 1)',
130
- parity: 'optional (defaults to SerialPort::NONE)',
131
- flow_control: 'optional (defaults to SerialPort::HARD) SerialPort::NONE|SerialPort::SOFT|SerialPort::HARD'
130
+ parity: 'optional - :even||:odd|:none (defaults to :none)'
132
131
  )
133
132
 
134
133
  #{self}.init_mode(
@@ -1169,8 +1169,7 @@ module PWN
1169
1169
  baud: 'optional (defaults to 9600)',
1170
1170
  data_bits: 'optional (defaults to 8)',
1171
1171
  stop_bits: 'optional (defaults to 1)',
1172
- parity: 'optional - :even|:mark|:odd|:space|:none (defaults to :none),'
1173
- flow_control: 'optional - :none|:hard|:soft (defaults to :none)'
1172
+ parity: 'optional - :even||:odd|:none (defaults to :none)'
1174
1173
  )
1175
1174
 
1176
1175
  cmds = #{self}.list_cmds
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'serialport'
3
+ require 'uart'
4
4
  require 'io/wait'
5
5
 
6
6
  module PWN
@@ -16,63 +16,34 @@ 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 - :even|:mark|:odd|:space|:none (defaults to :none)',
20
- # flow_control: 'optional - :none||:hard||:soft (defaults to :none)'
19
+ # parity: 'optional - :even|:mark|:odd|:space|:none (defaults to :none)'
21
20
  # )
22
21
 
23
22
  public_class_method def self.connect(opts = {})
24
- block_dev = opts[:block_dev].to_s if File.exist?(
25
- opts[:block_dev].to_s
26
- )
27
- block_dev = '/dev/ttyUSB0' if opts[:block_dev].nil?
28
-
29
- baud = if opts[:baud].nil?
30
- 9_600
31
- else
32
- opts[:baud].to_i
33
- end
34
-
35
- data_bits = if opts[:data_bits].nil?
36
- 8
37
- else
38
- opts[:data_bits].to_i
39
- end
40
-
41
- stop_bits = if opts[:stop_bits].nil?
42
- 1
43
- else
44
- opts[:stop_bits].to_i
45
- end
23
+ block_dev = opts[:block_dev] ||= '/dev/ttyUSB0'
24
+ raise "Invalid block device: #{block_dev}" unless File.exist?(block_dev)
25
+
26
+ baud = opts[:baud] ||= 9_600
27
+ data_bits = opts[:data_bits] ||= 8
28
+ stop_bits = opts[:stop_bits] ||= 1
46
29
 
30
+ parity = nil
47
31
  case opts[:parity].to_s.to_sym
48
32
  when :even
49
- parity = SerialPort::EVEN
50
- when :mark
51
- parity = SerialPort::MARK
33
+ parity = 'E'
52
34
  when :odd
53
- parity = SerialPort::ODD
54
- when :space
55
- parity = SerialPort::SPACE
56
- else
57
- parity = SerialPort::NONE
35
+ parity = 'O'
36
+ when :none
37
+ parity = 'N'
58
38
  end
39
+ raise "Invalid parity: #{opts[:parity]}" if parity.nil?
59
40
 
60
- case opts[:flow_control].to_s.to_sym
61
- when :hard
62
- flow_control = SerialPort::HARD
63
- when :soft
64
- flow_control = SerialPort::SOFT
65
- else
66
- flow_control = SerialPort::NONE
67
- end
41
+ mode = "#{data_bits}#{stop_bits}#{parity}"
68
42
 
69
- serial_conn = SerialPort.new(
43
+ serial_conn = UART.open(
70
44
  block_dev,
71
45
  baud,
72
- data_bits,
73
- stop_bits,
74
- parity,
75
- flow_control
46
+ mode
76
47
  )
77
48
 
78
49
  serial_obj = {}
@@ -124,7 +95,9 @@ module PWN
124
95
  public_class_method def self.get_line_state(opts = {})
125
96
  serial_obj = opts[:serial_obj]
126
97
  serial_conn = serial_obj[:serial_conn]
127
- serial_conn.get_signals
98
+ # Should return something like:
99
+ # {"rts"=>1, "dtr"=>1, "cts"=>1, "dsr"=>1, "dcd"=>0, "ri"=>0}
100
+ serial_conn.lstat
128
101
  rescue StandardError => e
129
102
  disconnect(serial_obj: serial_obj) unless serial_obj.nil?
130
103
  raise e
@@ -138,6 +111,8 @@ module PWN
138
111
  public_class_method def self.get_modem_params(opts = {})
139
112
  serial_obj = opts[:serial_obj]
140
113
  serial_conn = serial_obj[:serial_conn]
114
+ # Should return something like:
115
+ # {"baud"=>9600, "data_bits"=>8, "stop_bits"=>1, "parity"=>0}
141
116
  serial_conn.get_modem_params
142
117
  rescue StandardError => e
143
118
  disconnect(serial_obj: serial_obj) unless serial_obj.nil?
@@ -155,8 +130,10 @@ module PWN
155
130
  payload = opts[:payload]
156
131
  serial_conn = serial_obj[:serial_conn]
157
132
 
158
- byte_arr = payload
133
+ byte_arr = nil
134
+ byte_arr = payload if payload.instance_of?(Array)
159
135
  byte_arr = payload.chars if payload.instance_of?(String)
136
+ raise "ERROR: Invalid payload type: #{payload.class}" if byte_arr.nil?
160
137
 
161
138
  byte_arr.each do |byte|
162
139
  serial_conn.putc(byte)
@@ -168,18 +145,6 @@ module PWN
168
145
  raise e
169
146
  end
170
147
 
171
- # public_class_method def self.request(opts = {})
172
- # serial_obj = opts[:serial_obj]
173
- # request = opts[:request].to_s.scrub
174
- # serial_conn = serial_obj[:serial_conn]
175
- # chars_written = serial_conn.write(request)
176
- # serial_conn.flush
177
- # chars_written
178
- # rescue StandardError => e
179
- # disconnect(serial_obj: serial_obj) unless serial_obj.nil?
180
- # raise e
181
- # end
182
-
183
148
  # Supported Method Parameters::
184
149
  # PWN::Plugins::Serial.response(
185
150
  # serial_obj: 'required - serial_obj returned from #connect method'
@@ -218,14 +183,6 @@ module PWN
218
183
  raise e
219
184
  end
220
185
 
221
- # public_class_method def self.response(opts = {})
222
- # serial_obj = opts[:serial_obj]
223
- # @session_data.last
224
- # rescue StandardError => e
225
- # disconnect(serial_obj: serial_obj) unless serial_obj.nil?
226
- # raise e
227
- # end
228
-
229
186
  # Supported Method Parameters::
230
187
  # session_data = PWN::Plugins::Serial.dump_session_data
231
188
 
@@ -278,8 +235,7 @@ module PWN
278
235
  baud: 'optional (defaults to 9600)',
279
236
  data_bits: 'optional (defaults to 8)',
280
237
  stop_bits: 'optional (defaults to 1)',
281
- parity: 'optional - :even|:mark|:odd|:space|:none (defaults to :none)',
282
- flow_control: 'optional - :none||:hard||:soft (defaults to :none)'
238
+ parity: 'optional - :even|:mark|:odd|:space|:none (defaults to :none)'
283
239
  )
284
240
 
285
241
  line_state = #{self}.get_line_state(
@@ -476,8 +476,7 @@ module PWN
476
476
  baud: 'optional (defaults to 19_200)',
477
477
  data_bits: 'optional (defaults to 8)',
478
478
  stop_bits: 'optional (defaults to 1)',
479
- parity: 'optional - :even|:mark|:odd|:space|:none (defaults to :odd),'
480
- flow_control: 'optional - :none||:hard||:soft (defaults to :none)'
479
+ parity: 'optional - :even|:mark|:odd|:space|:none (defaults to :odd)'
481
480
  )
482
481
 
483
482
  cmds = #{self}.list_cmds
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.227'
4
+ VERSION = '0.5.229'
5
5
  end
@@ -20,11 +20,11 @@ export rvmsudo_secure_path=1
20
20
  rvmsudo gem install bundler
21
21
  if [[ $(uname -s) == "Darwin" ]]; then
22
22
  bundle config build.pg --with-pg-config=/opt/local/lib/postgresql96/bin/pg_config
23
- bundle config build.serialport \
24
- --with-cflags=-Wno-implicit-function-declaration \
25
- --with-cflags=-Wno-int-conversion
23
+ # bundle config build.serialport \
24
+ # --with-cflags=-Wno-implicit-function-declaration \
25
+ # --with-cflags=-Wno-int-conversion
26
26
  fi
27
- bundle config build.serialport --with-cflags=-Wno-int-conversion
27
+ # bundle config build.serialport --with-cflags=-Wno-int-conversion
28
28
  bundle install
29
29
  # bundle install --full-index
30
30
  rvm --default ruby-$ruby_version@$ruby_gemset
@@ -952,7 +952,7 @@
952
952
  {"messages":[{"role":"user","content":"PWN::Plugins::Vault.create Usage"},{"role":"assistant","content":"`PWN::Plugins::Vault.create`: Supported Method Parameters\n\nPWN::Plugins::Vault.create(\n\nfile: 'required - encrypted file to create'\n\n)\n"}]}
953
953
  {"messages":[{"role":"user","content":"PWN::Plugins::Vault.decrypt Usage"},{"role":"assistant","content":"`PWN::Plugins::Vault.decrypt`: Supported Method Parameters\n\nPWN::Plugins::Vault.decrypt(\n\nfile: 'required - file to decrypt',\nkey: 'required - key to decrypt',\niv: 'required - iv to decrypt'\n\n)\n"}]}
954
954
  {"messages":[{"role":"user","content":"PWN::Plugins::Vault.dump Usage"},{"role":"assistant","content":"`PWN::Plugins::Vault.dump`: Supported Method Parameters\n\nvault = PWN::Plugins::Vault.dump(\n\nfile: 'required - file to dump',\nkey: 'required - key to decrypt',\niv: 'required - iv to decrypt',\nyaml: 'optional - dump as parsed yaml hash (default: true)'\n\n)\n"}]}
955
- {"messages":[{"role":"user","content":"PWN::Plugins::Vault.edit Usage"},{"role":"assistant","content":"`PWN::Plugins::Vault.edit`: Supported Method Parameters\n\nPWN::Plugins::Vault.edit(\n\nfile: 'required - file to edit',\nkey: 'required - key to decrypt',\niv: 'required - iv to decrypt'\n\n)\n"}]}
955
+ {"messages":[{"role":"user","content":"PWN::Plugins::Vault.edit Usage"},{"role":"assistant","content":"`PWN::Plugins::Vault.edit`: Supported Method Parameters\n\nPWN::Plugins::Vault.edit(\n\nfile: 'required - file to edit',\nkey: 'required - key to decrypt',\niv: 'required - iv to decrypt',\neditor: 'optional - editor to use (default: \"/usr/bin/vim\")'\n\n)\n"}]}
956
956
  {"messages":[{"role":"user","content":"PWN::Plugins::Vault.encrypt Usage"},{"role":"assistant","content":"`PWN::Plugins::Vault.encrypt`: Supported Method Parameters\n\nPWN::Plugins::Vault.encrypt(\n\nfile: 'required - file to encrypt',\nkey: 'required - key to decrypt',\niv: 'required - iv to decrypt'\n\n)\n"}]}
957
957
  {"messages":[{"role":"user","content":"PWN::Plugins::Vault.file_encrypted? Usage"},{"role":"assistant","content":"`PWN::Plugins::Vault.file_encrypted?`: Supported Method Parameters\n\nPWN::Plugins::Vault.file_encrypted?(\n\nfile: 'required - file to check if encrypted'\n\n)\n"}]}
958
958
  {"messages":[{"role":"user","content":"PWN::Plugins::Vault.help Usage"},{"role":"assistant","content":"`PWN::Plugins::Vault.help`: "}]}
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pwn
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.227
4
+ version: 0.5.229
5
5
  platform: ruby
6
- original_platform: ''
7
6
  authors:
8
7
  - 0day Inc.
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-12-16 00:00:00.000000000 Z
10
+ date: 2025-01-14 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: activesupport
@@ -100,14 +99,14 @@ dependencies:
100
99
  requirements:
101
100
  - - '='
102
101
  - !ruby/object:Gem::Version
103
- version: 6.2.2
102
+ version: 7.0.0
104
103
  type: :runtime
105
104
  prerelease: false
106
105
  version_requirements: !ruby/object:Gem::Requirement
107
106
  requirements:
108
107
  - - '='
109
108
  - !ruby/object:Gem::Version
110
- version: 6.2.2
109
+ version: 7.0.0
111
110
  - !ruby/object:Gem::Dependency
112
111
  name: bson
113
112
  requirement: !ruby/object:Gem::Requirement
@@ -128,14 +127,14 @@ dependencies:
128
127
  requirements:
129
128
  - - ">="
130
129
  - !ruby/object:Gem::Version
131
- version: 2.6.0
130
+ version: 2.6.2
132
131
  type: :development
133
132
  prerelease: false
134
133
  version_requirements: !ruby/object:Gem::Requirement
135
134
  requirements:
136
135
  - - ">="
137
136
  - !ruby/object:Gem::Version
138
- version: 2.6.0
137
+ version: 2.6.2
139
138
  - !ruby/object:Gem::Dependency
140
139
  name: bundler-audit
141
140
  requirement: !ruby/object:Gem::Requirement
@@ -254,14 +253,14 @@ dependencies:
254
253
  requirements:
255
254
  - - '='
256
255
  - !ruby/object:Gem::Version
257
- version: 1.17.0
256
+ version: 1.17.1
258
257
  type: :runtime
259
258
  prerelease: false
260
259
  version_requirements: !ruby/object:Gem::Requirement
261
260
  requirements:
262
261
  - - '='
263
262
  - !ruby/object:Gem::Version
264
- version: 1.17.0
263
+ version: 1.17.1
265
264
  - !ruby/object:Gem::Dependency
266
265
  name: fftw3
267
266
  requirement: !ruby/object:Gem::Requirement
@@ -310,14 +309,14 @@ dependencies:
310
309
  requirements:
311
310
  - - '='
312
311
  - !ruby/object:Gem::Version
313
- version: 1.8.4
312
+ version: 1.8.5
314
313
  type: :runtime
315
314
  prerelease: false
316
315
  version_requirements: !ruby/object:Gem::Requirement
317
316
  requirements:
318
317
  - - '='
319
318
  - !ruby/object:Gem::Version
320
- version: 1.8.4
319
+ version: 1.8.5
321
320
  - !ruby/object:Gem::Dependency
322
321
  name: gist
323
322
  requirement: !ruby/object:Gem::Requirement
@@ -408,14 +407,14 @@ dependencies:
408
407
  requirements:
409
408
  - - '='
410
409
  - !ruby/object:Gem::Version
411
- version: 2.9.0
410
+ version: 2.9.1
412
411
  type: :runtime
413
412
  prerelease: false
414
413
  version_requirements: !ruby/object:Gem::Requirement
415
414
  requirements:
416
415
  - - '='
417
416
  - !ruby/object:Gem::Version
418
- version: 2.9.0
417
+ version: 2.9.1
419
418
  - !ruby/object:Gem::Dependency
420
419
  name: jsonpath
421
420
  requirement: !ruby/object:Gem::Requirement
@@ -436,14 +435,14 @@ dependencies:
436
435
  requirements:
437
436
  - - '='
438
437
  - !ruby/object:Gem::Version
439
- version: 2.9.3
438
+ version: 2.10.1
440
439
  type: :runtime
441
440
  prerelease: false
442
441
  version_requirements: !ruby/object:Gem::Requirement
443
442
  requirements:
444
443
  - - '='
445
444
  - !ruby/object:Gem::Version
446
- version: 2.9.3
445
+ version: 2.10.1
447
446
  - !ruby/object:Gem::Dependency
448
447
  name: libusb
449
448
  requirement: !ruby/object:Gem::Requirement
@@ -492,14 +491,14 @@ dependencies:
492
491
  requirements:
493
492
  - - '='
494
493
  - !ruby/object:Gem::Version
495
- version: 0.0.78
494
+ version: 0.0.81
496
495
  type: :runtime
497
496
  prerelease: false
498
497
  version_requirements: !ruby/object:Gem::Requirement
499
498
  requirements:
500
499
  - - '='
501
500
  - !ruby/object:Gem::Version
502
- version: 0.0.78
501
+ version: 0.0.81
503
502
  - !ruby/object:Gem::Dependency
504
503
  name: metasm
505
504
  requirement: !ruby/object:Gem::Requirement
@@ -618,14 +617,14 @@ dependencies:
618
617
  requirements:
619
618
  - - '='
620
619
  - !ruby/object:Gem::Version
621
- version: 1.17.2
620
+ version: 1.18.1
622
621
  type: :runtime
623
622
  prerelease: false
624
623
  version_requirements: !ruby/object:Gem::Requirement
625
624
  requirements:
626
625
  - - '='
627
626
  - !ruby/object:Gem::Version
628
- version: 1.17.2
627
+ version: 1.18.1
629
628
  - !ruby/object:Gem::Dependency
630
629
  name: nokogiri-diff
631
630
  requirement: !ruby/object:Gem::Requirement
@@ -716,14 +715,14 @@ dependencies:
716
715
  requirements:
717
716
  - - '='
718
717
  - !ruby/object:Gem::Version
719
- version: 3.3.3
718
+ version: 4.0.0
720
719
  type: :runtime
721
720
  prerelease: false
722
721
  version_requirements: !ruby/object:Gem::Requirement
723
722
  requirements:
724
723
  - - '='
725
724
  - !ruby/object:Gem::Version
726
- version: 3.3.3
725
+ version: 4.0.0
727
726
  - !ruby/object:Gem::Dependency
728
727
  name: pdf-reader
729
728
  requirement: !ruby/object:Gem::Requirement
@@ -758,14 +757,14 @@ dependencies:
758
757
  requirements:
759
758
  - - '='
760
759
  - !ruby/object:Gem::Version
761
- version: 0.15.0
760
+ version: 0.15.2
762
761
  type: :runtime
763
762
  prerelease: false
764
763
  version_requirements: !ruby/object:Gem::Requirement
765
764
  requirements:
766
765
  - - '='
767
766
  - !ruby/object:Gem::Version
768
- version: 0.15.0
767
+ version: 0.15.2
769
768
  - !ruby/object:Gem::Dependency
770
769
  name: pry-doc
771
770
  requirement: !ruby/object:Gem::Requirement
@@ -828,14 +827,14 @@ dependencies:
828
827
  requirements:
829
828
  - - '='
830
829
  - !ruby/object:Gem::Version
831
- version: 6.9.1
830
+ version: 6.10.0
832
831
  type: :development
833
832
  prerelease: false
834
833
  version_requirements: !ruby/object:Gem::Requirement
835
834
  requirements:
836
835
  - - '='
837
836
  - !ruby/object:Gem::Version
838
- version: 6.9.1
837
+ version: 6.10.0
839
838
  - !ruby/object:Gem::Dependency
840
839
  name: rest-client
841
840
  requirement: !ruby/object:Gem::Requirement
@@ -926,14 +925,14 @@ dependencies:
926
925
  requirements:
927
926
  - - '='
928
927
  - !ruby/object:Gem::Version
929
- version: 1.69.2
928
+ version: 1.70.0
930
929
  type: :runtime
931
930
  prerelease: false
932
931
  version_requirements: !ruby/object:Gem::Requirement
933
932
  requirements:
934
933
  - - '='
935
934
  - !ruby/object:Gem::Version
936
- version: 1.69.2
935
+ version: 1.70.0
937
936
  - !ruby/object:Gem::Dependency
938
937
  name: rubocop-rake
939
938
  requirement: !ruby/object:Gem::Requirement
@@ -1046,20 +1045,6 @@ dependencies:
1046
1045
  - - '='
1047
1046
  - !ruby/object:Gem::Version
1048
1047
  version: 0.131.0
1049
- - !ruby/object:Gem::Dependency
1050
- name: serialport
1051
- requirement: !ruby/object:Gem::Requirement
1052
- requirements:
1053
- - - '='
1054
- - !ruby/object:Gem::Version
1055
- version: 1.3.2
1056
- type: :runtime
1057
- prerelease: false
1058
- version_requirements: !ruby/object:Gem::Requirement
1059
- requirements:
1060
- - - '='
1061
- - !ruby/object:Gem::Version
1062
- version: 1.3.2
1063
1048
  - !ruby/object:Gem::Dependency
1064
1049
  name: slack-ruby-client
1065
1050
  requirement: !ruby/object:Gem::Requirement
@@ -1108,14 +1093,14 @@ dependencies:
1108
1093
  requirements:
1109
1094
  - - '='
1110
1095
  - !ruby/object:Gem::Version
1111
- version: 2.4.1
1096
+ version: 2.5.0
1112
1097
  type: :runtime
1113
1098
  prerelease: false
1114
1099
  version_requirements: !ruby/object:Gem::Requirement
1115
1100
  requirements:
1116
1101
  - - '='
1117
1102
  - !ruby/object:Gem::Version
1118
- version: 2.4.1
1103
+ version: 2.5.0
1119
1104
  - !ruby/object:Gem::Dependency
1120
1105
  name: thin
1121
1106
  requirement: !ruby/object:Gem::Requirement
@@ -1158,6 +1143,20 @@ dependencies:
1158
1143
  - - '='
1159
1144
  - !ruby/object:Gem::Version
1160
1145
  version: 0.9.3
1146
+ - !ruby/object:Gem::Dependency
1147
+ name: uart
1148
+ requirement: !ruby/object:Gem::Requirement
1149
+ requirements:
1150
+ - - '='
1151
+ - !ruby/object:Gem::Version
1152
+ version: 1.0.0
1153
+ type: :runtime
1154
+ prerelease: false
1155
+ version_requirements: !ruby/object:Gem::Requirement
1156
+ requirements:
1157
+ - - '='
1158
+ - !ruby/object:Gem::Version
1159
+ version: 1.0.0
1161
1160
  - !ruby/object:Gem::Dependency
1162
1161
  name: watir
1163
1162
  requirement: !ruby/object:Gem::Requirement
@@ -2343,7 +2342,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
2343
2342
  - !ruby/object:Gem::Version
2344
2343
  version: '0'
2345
2344
  requirements: []
2346
- rubygems_version: 3.6.0
2345
+ rubygems_version: 3.6.2
2347
2346
  specification_version: 4
2348
2347
  summary: Automated Security Testing for CI/CD Pipelines & Beyond
2349
2348
  test_files: []