pwn 0.5.212 → 0.5.214

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f0fd8f1da78a3b405f9035174e85290c7f98530788978420b9549dbfd1fd339f
4
- data.tar.gz: fe9f18e11d3b7724c9fc850d4d50fd5f95b7cc0c02a01faa4127a31a5b20f3e2
3
+ metadata.gz: cf8c18174e0582e704ef4ad4b758fe218cc2ce4d9c69211a420c964da49e2b00
4
+ data.tar.gz: d8c701366ce80bbb415b7e928d664ef929ee13c32de8d93a808fb53c01dea53b
5
5
  SHA512:
6
- metadata.gz: 5dfe45db1a08de1d032cfac8b2e3e87c5389bca6662fc0632776cc520ef02bad74d09d7f9811b8c83bdfcdc758f7bd519424ae41ec785824339c523c2ce8421d
7
- data.tar.gz: 3af1b7b7b8387998f8c7524ec7294eecc8bbdf9775435803e03c86914171047f2af0473688b76655e806fe6921a07e3fc86e27962f2ea05212407248f18e417c
6
+ metadata.gz: '085db33d8f83e2542f1d849c8a1e1f53838d3e3ab9395bc4859e604df903ea8f8ff41238aa3ca346973ca544268d113aed41ba743dad7ffc394e92ee506511d7'
7
+ data.tar.gz: 8ee91de47dae9a8e86f1aca3b4502967c85e16c3ef71aa53cfa3362c0a2c0a18174b0a54f72377d2fef63b954029bb142db1a0c4bc6d66da9bb93657241ae542
data/.rubocop_todo.yml CHANGED
@@ -1,6 +1,6 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2024-09-13 00:23:29 UTC using RuboCop version 1.66.1.
3
+ # on 2024-10-30 18:35:44 UTC using RuboCop version 1.66.1.
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
@@ -41,7 +41,7 @@ Lint/NestedMethodDefinition:
41
41
  Exclude:
42
42
  - 'lib/pwn/plugins/repl.rb'
43
43
 
44
- # Offense count: 309
44
+ # Offense count: 312
45
45
  # This cop supports safe autocorrection (--autocorrect).
46
46
  # Configuration parameters: AutoCorrect.
47
47
  Lint/UselessAssignment:
@@ -89,13 +89,14 @@ Metrics/MethodLength:
89
89
  Exclude:
90
90
  - 'lib/pwn/banner/code_cave.rb'
91
91
 
92
- # Offense count: 10
92
+ # Offense count: 11
93
93
  # Configuration parameters: CountComments, Max, CountAsOne.
94
94
  Metrics/ModuleLength:
95
95
  Exclude:
96
96
  - 'lib/pwn/banner/code_cave.rb'
97
97
  - 'lib/pwn/plugins/android.rb'
98
98
  - 'lib/pwn/plugins/black_duck_binary_analysis.rb'
99
+ - 'lib/pwn/plugins/defect_dojo.rb'
99
100
  - 'lib/pwn/plugins/gqrx.rb'
100
101
  - 'lib/pwn/plugins/msr206.rb'
101
102
  - 'lib/pwn/plugins/nessus_cloud.rb'
@@ -116,7 +117,7 @@ Style/Alias:
116
117
  Style/ClassVars:
117
118
  Enabled: false
118
119
 
119
- # Offense count: 281
120
+ # Offense count: 282
120
121
  # This cop supports safe autocorrection (--autocorrect).
121
122
  # Configuration parameters: EnforcedStyle, SingleLineConditionsOnly, IncludeTernaryExpressions.
122
123
  # SupportedStyles: assign_to_condition, assign_inside_condition
data/Gemfile CHANGED
@@ -11,23 +11,23 @@ gemspec
11
11
  # In some circumstances custom flags are passed to gems in order
12
12
  # to build appropriately. Defer to ./reinstall_pwn_gemset.sh
13
13
  # to review these custom flags (e.g. pg, serialport, etc).
14
- gem 'activesupport', '7.2.1'
14
+ gem 'activesupport', '7.2.1.2'
15
15
  gem 'anemone', '0.7.2'
16
16
  gem 'authy', '3.0.1'
17
17
  gem 'aws-sdk', '3.2.0'
18
18
  # gem 'bettercap', '1.6.2'
19
- gem 'barby', '0.6.9'
19
+ gem 'barby', '0.7.0'
20
20
  gem 'base32', '0.3.4'
21
- gem 'brakeman', '6.2.1'
21
+ gem 'brakeman', '6.2.2'
22
22
  gem 'bson', '5.0.1'
23
- gem 'bundler', '>=2.5.20'
23
+ gem 'bundler', '>=2.5.22'
24
24
  gem 'bundler-audit', '0.9.2'
25
25
  gem 'bunny', '2.23.0'
26
26
  gem 'colorize', '1.1.0'
27
27
  gem 'credit_card_validations', '6.3.0'
28
28
  gem 'eventmachine', '1.2.7'
29
29
  gem 'executable-hooks', '1.7.1'
30
- gem 'faker', '3.4.2'
30
+ gem 'faker', '3.5.1'
31
31
  gem 'faye-websocket', '0.11.3'
32
32
  gem 'ffi', '1.17.0'
33
33
  gem 'fftw3', '0.3'
@@ -41,10 +41,10 @@ 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.7.2'
44
+ gem 'json', '2.7.5'
45
45
  gem 'jsonpath', '1.1.5'
46
- gem 'jwt', '2.9.1'
47
- gem 'libusb', '0.7.1'
46
+ gem 'jwt', '2.9.3'
47
+ gem 'libusb', '0.7.2'
48
48
  gem 'luhn', '1.0.2'
49
49
  gem 'mail', '2.8.1'
50
50
  gem 'meshtastic', '0.0.77'
@@ -66,7 +66,7 @@ gem 'ostruct', '0.6.0'
66
66
  gem 'packetfu', '2.0.0'
67
67
  gem 'packetgen', '3.3.3'
68
68
  gem 'pdf-reader', '2.12.0'
69
- gem 'pg', '1.5.8'
69
+ gem 'pg', '1.5.9'
70
70
  gem 'pry', '0.14.2'
71
71
  gem 'pry-doc', '1.5.0'
72
72
  gem 'rake', '13.2.1'
@@ -79,21 +79,21 @@ 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.66.1'
82
+ gem 'rubocop', '1.67.0'
83
83
  gem 'rubocop-rake', '0.6.0'
84
- gem 'rubocop-rspec', '3.1.0'
84
+ gem 'rubocop-rspec', '3.2.0'
85
85
  gem 'ruby-audio', '1.6.1'
86
86
  gem 'ruby-nmap', '1.0.3'
87
87
  gem 'ruby-saml', '1.17.0'
88
88
  gem 'rvm', '1.11.3.9'
89
89
  gem 'savon', '2.15.1'
90
- gem 'selenium-devtools', '0.129.0'
90
+ gem 'selenium-devtools', '0.130.0'
91
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.1'
96
- gem 'sqlite3', '2.1.0'
96
+ gem 'sqlite3', '2.2.0'
97
97
  gem 'thin', '1.8.2'
98
98
  gem 'tty-prompt', '0.23.1'
99
99
  gem 'tty-spinner', '0.9.3'
@@ -102,5 +102,5 @@ gem 'waveform', '0.1.3'
102
102
  gem 'webrick', '1.8.2'
103
103
  gem 'whois', '6.0.0'
104
104
  gem 'whois-parser', '2.0.0'
105
- gem 'wicked_pdf', '2.8.1'
105
+ gem 'wicked_pdf', '2.8.2'
106
106
  gem 'yard', '0.9.37'
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.207]:001 >>> PWN.help
40
+ pwn[v0.5.214]: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-3.3.5@pwn
52
52
  $ gem uninstall --all --executables pwn
53
53
  $ gem install --verbose pwn
54
54
  $ pwn
55
- pwn[v0.5.207]:001 >>> PWN.help
55
+ pwn[v0.5.214]: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-3.3.5@pwn
62
62
  $ rvmsudo gem uninstall --all --executables pwn
63
63
  $ rvmsudo gem install --verbose pwn
64
64
  $ pwn
65
- pwn[v0.5.207]:001 >>> PWN.help
65
+ pwn[v0.5.214]: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:
@@ -2,6 +2,7 @@
2
2
 
3
3
  require 'json'
4
4
  require 'securerandom'
5
+ require 'uri'
5
6
 
6
7
  module PWN
7
8
  module Plugins
@@ -204,13 +205,44 @@ module PWN
204
205
  dd_obj = opts[:dd_obj]
205
206
  opts[:id] ? (rest_call = "engagements/#{opts[:id].to_i}") : (rest_call = 'engagements')
206
207
 
208
+ params = {
209
+ o: 'name',
210
+ limit: 25
211
+ }
212
+
213
+ # Aggregate all engagements into a single hash
207
214
  response = rest_call(
208
215
  dd_obj: dd_obj,
209
- rest_call: rest_call
216
+ rest_call: rest_call,
217
+ params: params
210
218
  )
211
219
 
212
- # Return array containing the post-authenticated DefectDojo REST API token
213
- JSON.parse(response, symbolize_names: true)
220
+ engagements = JSON.parse(response, symbolize_names: true)
221
+ total_engagements_avail = engagements[:count]
222
+ total_enagements_aggregated = engagements[:results]
223
+
224
+ while total_engagements_avail != total_enagements_aggregated.length
225
+ next_page = URI.parse(engagements[:next].to_s)
226
+ next_page_params = URI.decode_www_form(next_page.query).to_h
227
+ response = rest_call(
228
+ dd_obj: dd_obj,
229
+ rest_call: rest_call,
230
+ params: next_page_params
231
+ )
232
+ engagements = JSON.parse(response, symbolize_names: true)
233
+
234
+ # Append the next page of engagements to the existing total_enagements_aggregated array
235
+ total_enagements_aggregated += engagements[:results]
236
+ end
237
+
238
+ # Return all the engagements
239
+ {
240
+ count: total_engagements_avail,
241
+ next: nil,
242
+ previous: nil,
243
+ results: total_enagements_aggregated,
244
+ prefetch: {}
245
+ }
214
246
  rescue StandardError => e
215
247
  raise e
216
248
  end
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.212'
4
+ VERSION = '0.5.214'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pwn
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.212
4
+ version: 0.5.214
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-10-02 00:00:00.000000000 Z
11
+ date: 2024-10-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 7.2.1
19
+ version: 7.2.1.2
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 7.2.1
26
+ version: 7.2.1.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: anemone
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -72,14 +72,14 @@ dependencies:
72
72
  requirements:
73
73
  - - '='
74
74
  - !ruby/object:Gem::Version
75
- version: 0.6.9
75
+ version: 0.7.0
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - '='
81
81
  - !ruby/object:Gem::Version
82
- version: 0.6.9
82
+ version: 0.7.0
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: base32
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -100,14 +100,14 @@ dependencies:
100
100
  requirements:
101
101
  - - '='
102
102
  - !ruby/object:Gem::Version
103
- version: 6.2.1
103
+ version: 6.2.2
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - '='
109
109
  - !ruby/object:Gem::Version
110
- version: 6.2.1
110
+ version: 6.2.2
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: bson
113
113
  requirement: !ruby/object:Gem::Requirement
@@ -128,14 +128,14 @@ dependencies:
128
128
  requirements:
129
129
  - - ">="
130
130
  - !ruby/object:Gem::Version
131
- version: 2.5.20
131
+ version: 2.5.22
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - ">="
137
137
  - !ruby/object:Gem::Version
138
- version: 2.5.20
138
+ version: 2.5.22
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: bundler-audit
141
141
  requirement: !ruby/object:Gem::Requirement
@@ -226,14 +226,14 @@ dependencies:
226
226
  requirements:
227
227
  - - '='
228
228
  - !ruby/object:Gem::Version
229
- version: 3.4.2
229
+ version: 3.5.1
230
230
  type: :runtime
231
231
  prerelease: false
232
232
  version_requirements: !ruby/object:Gem::Requirement
233
233
  requirements:
234
234
  - - '='
235
235
  - !ruby/object:Gem::Version
236
- version: 3.4.2
236
+ version: 3.5.1
237
237
  - !ruby/object:Gem::Dependency
238
238
  name: faye-websocket
239
239
  requirement: !ruby/object:Gem::Requirement
@@ -408,14 +408,14 @@ dependencies:
408
408
  requirements:
409
409
  - - '='
410
410
  - !ruby/object:Gem::Version
411
- version: 2.7.2
411
+ version: 2.7.5
412
412
  type: :runtime
413
413
  prerelease: false
414
414
  version_requirements: !ruby/object:Gem::Requirement
415
415
  requirements:
416
416
  - - '='
417
417
  - !ruby/object:Gem::Version
418
- version: 2.7.2
418
+ version: 2.7.5
419
419
  - !ruby/object:Gem::Dependency
420
420
  name: jsonpath
421
421
  requirement: !ruby/object:Gem::Requirement
@@ -436,28 +436,28 @@ dependencies:
436
436
  requirements:
437
437
  - - '='
438
438
  - !ruby/object:Gem::Version
439
- version: 2.9.1
439
+ version: 2.9.3
440
440
  type: :runtime
441
441
  prerelease: false
442
442
  version_requirements: !ruby/object:Gem::Requirement
443
443
  requirements:
444
444
  - - '='
445
445
  - !ruby/object:Gem::Version
446
- version: 2.9.1
446
+ version: 2.9.3
447
447
  - !ruby/object:Gem::Dependency
448
448
  name: libusb
449
449
  requirement: !ruby/object:Gem::Requirement
450
450
  requirements:
451
451
  - - '='
452
452
  - !ruby/object:Gem::Version
453
- version: 0.7.1
453
+ version: 0.7.2
454
454
  type: :runtime
455
455
  prerelease: false
456
456
  version_requirements: !ruby/object:Gem::Requirement
457
457
  requirements:
458
458
  - - '='
459
459
  - !ruby/object:Gem::Version
460
- version: 0.7.1
460
+ version: 0.7.2
461
461
  - !ruby/object:Gem::Dependency
462
462
  name: luhn
463
463
  requirement: !ruby/object:Gem::Requirement
@@ -744,14 +744,14 @@ dependencies:
744
744
  requirements:
745
745
  - - '='
746
746
  - !ruby/object:Gem::Version
747
- version: 1.5.8
747
+ version: 1.5.9
748
748
  type: :runtime
749
749
  prerelease: false
750
750
  version_requirements: !ruby/object:Gem::Requirement
751
751
  requirements:
752
752
  - - '='
753
753
  - !ruby/object:Gem::Version
754
- version: 1.5.8
754
+ version: 1.5.9
755
755
  - !ruby/object:Gem::Dependency
756
756
  name: pry
757
757
  requirement: !ruby/object:Gem::Requirement
@@ -926,14 +926,14 @@ dependencies:
926
926
  requirements:
927
927
  - - '='
928
928
  - !ruby/object:Gem::Version
929
- version: 1.66.1
929
+ version: 1.67.0
930
930
  type: :runtime
931
931
  prerelease: false
932
932
  version_requirements: !ruby/object:Gem::Requirement
933
933
  requirements:
934
934
  - - '='
935
935
  - !ruby/object:Gem::Version
936
- version: 1.66.1
936
+ version: 1.67.0
937
937
  - !ruby/object:Gem::Dependency
938
938
  name: rubocop-rake
939
939
  requirement: !ruby/object:Gem::Requirement
@@ -954,14 +954,14 @@ dependencies:
954
954
  requirements:
955
955
  - - '='
956
956
  - !ruby/object:Gem::Version
957
- version: 3.1.0
957
+ version: 3.2.0
958
958
  type: :runtime
959
959
  prerelease: false
960
960
  version_requirements: !ruby/object:Gem::Requirement
961
961
  requirements:
962
962
  - - '='
963
963
  - !ruby/object:Gem::Version
964
- version: 3.1.0
964
+ version: 3.2.0
965
965
  - !ruby/object:Gem::Dependency
966
966
  name: ruby-audio
967
967
  requirement: !ruby/object:Gem::Requirement
@@ -1038,14 +1038,14 @@ dependencies:
1038
1038
  requirements:
1039
1039
  - - '='
1040
1040
  - !ruby/object:Gem::Version
1041
- version: 0.129.0
1041
+ version: 0.130.0
1042
1042
  type: :runtime
1043
1043
  prerelease: false
1044
1044
  version_requirements: !ruby/object:Gem::Requirement
1045
1045
  requirements:
1046
1046
  - - '='
1047
1047
  - !ruby/object:Gem::Version
1048
- version: 0.129.0
1048
+ version: 0.130.0
1049
1049
  - !ruby/object:Gem::Dependency
1050
1050
  name: serialport
1051
1051
  requirement: !ruby/object:Gem::Requirement
@@ -1108,14 +1108,14 @@ dependencies:
1108
1108
  requirements:
1109
1109
  - - '='
1110
1110
  - !ruby/object:Gem::Version
1111
- version: 2.1.0
1111
+ version: 2.2.0
1112
1112
  type: :runtime
1113
1113
  prerelease: false
1114
1114
  version_requirements: !ruby/object:Gem::Requirement
1115
1115
  requirements:
1116
1116
  - - '='
1117
1117
  - !ruby/object:Gem::Version
1118
- version: 2.1.0
1118
+ version: 2.2.0
1119
1119
  - !ruby/object:Gem::Dependency
1120
1120
  name: thin
1121
1121
  requirement: !ruby/object:Gem::Requirement
@@ -1234,14 +1234,14 @@ dependencies:
1234
1234
  requirements:
1235
1235
  - - '='
1236
1236
  - !ruby/object:Gem::Version
1237
- version: 2.8.1
1237
+ version: 2.8.2
1238
1238
  type: :runtime
1239
1239
  prerelease: false
1240
1240
  version_requirements: !ruby/object:Gem::Requirement
1241
1241
  requirements:
1242
1242
  - - '='
1243
1243
  - !ruby/object:Gem::Version
1244
- version: 2.8.1
1244
+ version: 2.8.2
1245
1245
  - !ruby/object:Gem::Dependency
1246
1246
  name: yard
1247
1247
  requirement: !ruby/object:Gem::Requirement
@@ -2341,7 +2341,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
2341
2341
  - !ruby/object:Gem::Version
2342
2342
  version: '0'
2343
2343
  requirements: []
2344
- rubygems_version: 3.5.20
2344
+ rubygems_version: 3.5.22
2345
2345
  signing_key:
2346
2346
  specification_version: 4
2347
2347
  summary: Automated Security Testing for CI/CD Pipelines & Beyond