pwn 0.4.920 → 0.4.922
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/Gemfile +2 -2
- data/README.md +4 -4
- data/bin/pwn_bdba_scan +17 -5
- data/lib/pwn/plugins/black_duck_binary_analysis.rb +2 -24
- data/lib/pwn/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2dd0df4df7e699b6d8878a7dd533fb323d8a040c42947d2834ee53aee350e429
|
4
|
+
data.tar.gz: 4a883894dd0ce7916fce48cecc184e1cf0da8c2f8c3ebb9fe62d44bbc807cff3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2e0d6dbb056ac39599fdb7760be4af50228f4fa4e846834b5cedc5d16436a219f7114a0fd7db5ba17934bd7dd9a924a4ff15a8e8f1144000c0539adcf033952b
|
7
|
+
data.tar.gz: bb51c3da5a0fe2d01004b42cbe420ffb74351fd1ff550451c482e7a4c8f9ccc087a6b23de8f9a016b0b925a8ac42300958c57c75a701c5510d5beb15e782af27
|
data/Gemfile
CHANGED
@@ -28,7 +28,7 @@ gem 'eventmachine', '1.2.7'
|
|
28
28
|
gem 'executable-hooks', '1.6.1'
|
29
29
|
gem 'faker', '3.2.1'
|
30
30
|
gem 'faye-websocket', '0.11.3'
|
31
|
-
gem 'ffi', '1.16.
|
31
|
+
gem 'ffi', '1.16.3'
|
32
32
|
gem 'fftw3', '0.3'
|
33
33
|
gem 'gdb', '1.0.0'
|
34
34
|
gem 'gem-wrappers', '1.4.0'
|
@@ -68,7 +68,7 @@ gem 'rex', '2.0.13'
|
|
68
68
|
gem 'rmagick', '5.3.0'
|
69
69
|
gem 'rqrcode', '2.2.0'
|
70
70
|
gem 'rspec', '3.12.0'
|
71
|
-
gem 'rtesseract', '3.1.
|
71
|
+
gem 'rtesseract', '3.1.3'
|
72
72
|
gem 'rubocop', '1.56.4'
|
73
73
|
gem 'rubocop-rake', '0.6.0'
|
74
74
|
gem 'rubocop-rspec', '2.24.1'
|
data/README.md
CHANGED
@@ -37,7 +37,7 @@ $ rvm use ruby-3.2.2@pwn
|
|
37
37
|
$ rvm list gemsets
|
38
38
|
$ gem install --verbose pwn
|
39
39
|
$ pwn
|
40
|
-
pwn[v0.4.
|
40
|
+
pwn[v0.4.922]:001 >>> PWN.help
|
41
41
|
```
|
42
42
|
|
43
43
|
If you're using a multi-user install of RVM do:
|
@@ -48,7 +48,7 @@ $ rvm use ruby-3.2.2@pwn
|
|
48
48
|
$ rvm list gemsets
|
49
49
|
$ rvmsudo gem install --verbose pwn
|
50
50
|
$ pwn
|
51
|
-
pwn[v0.4.
|
51
|
+
pwn[v0.4.922]:001 >>> PWN.help
|
52
52
|
```
|
53
53
|
|
54
54
|
[](https://youtu.be/G7iLUY4FzsI)
|
@@ -63,7 +63,7 @@ $ rvm use ruby-3.2.2@pwn
|
|
63
63
|
$ gem uninstall --all --executables pwn
|
64
64
|
$ gem install --verbose pwn
|
65
65
|
$ pwn
|
66
|
-
pwn[v0.4.
|
66
|
+
pwn[v0.4.922]:001 >>> PWN.help
|
67
67
|
```
|
68
68
|
|
69
69
|
If you're using a multi-user install of RVM do:
|
@@ -73,7 +73,7 @@ $ rvm use ruby-3.2.2@pwn
|
|
73
73
|
$ rvmsudo gem uninstall --all --executables pwn
|
74
74
|
$ rvmsudo gem install --verbose pwn
|
75
75
|
$ pwn
|
76
|
-
pwn[v0.4.
|
76
|
+
pwn[v0.4.922]:001 >>> PWN.help
|
77
77
|
```
|
78
78
|
|
79
79
|
|
data/bin/pwn_bdba_scan
CHANGED
@@ -4,7 +4,6 @@
|
|
4
4
|
require 'cgi'
|
5
5
|
require 'optparse'
|
6
6
|
require 'pwn'
|
7
|
-
require 'timeout'
|
8
7
|
require 'yaml'
|
9
8
|
|
10
9
|
opts = {}
|
@@ -33,7 +32,7 @@ OptionParser.new do |options|
|
|
33
32
|
opts[:queue_timeout] = q
|
34
33
|
end
|
35
34
|
|
36
|
-
options.on('-a', '--scan-attempts', '<Optional - Number of Attempts to Scan a File if the Scan was Aborted Due to Queue Timeouts (Default: 3)>') do |a|
|
35
|
+
options.on('-a', '--scan-attempts', '<Optional - Number of Attempts to Scan a File if the Scan was Aborted Due to Queue Timeouts or RestClient Exceptions (Default: 3)>') do |a|
|
37
36
|
opts[:scan_attempts] = a
|
38
37
|
end
|
39
38
|
|
@@ -120,7 +119,7 @@ begin
|
|
120
119
|
)
|
121
120
|
end
|
122
121
|
|
123
|
-
raise
|
122
|
+
raise IO::TimeoutError, "ERROR: BDBA Scan Aborted: #{target_file}"
|
124
123
|
end
|
125
124
|
|
126
125
|
10.times do
|
@@ -140,10 +139,23 @@ begin
|
|
140
139
|
)
|
141
140
|
|
142
141
|
puts "\nReport Saved to: #{report_path}"
|
143
|
-
rescue
|
142
|
+
rescue IO::TimeoutError,
|
143
|
+
RestClient::Unauthorized,
|
144
|
+
RestClient::Forbidden,
|
145
|
+
RestClient::BadRequest,
|
146
|
+
RestClient::ResourceNotFound,
|
147
|
+
RestClient::InternalServerError,
|
148
|
+
RestClient::BadGateway,
|
149
|
+
RestClient::ServiceUnavailable,
|
150
|
+
RestClient::GatewayTimeout
|
151
|
+
|
144
152
|
abort_total += 1
|
145
153
|
|
146
|
-
|
154
|
+
if abort_total <= scan_attempts.to_i
|
155
|
+
puts 'Sleeping for 60 Seconds and Retrying...'
|
156
|
+
sleep 60
|
157
|
+
retry
|
158
|
+
end
|
147
159
|
|
148
160
|
puts 'Scan Attempts Reached - Goodbye.'
|
149
161
|
exit 1
|
@@ -81,32 +81,10 @@ module PWN
|
|
81
81
|
if e.response
|
82
82
|
puts "HTTP RESPONSE CODE: #{e.response.code}"
|
83
83
|
puts "HTTP RESPONSE HEADERS:\n#{e.response.headers}"
|
84
|
-
puts "HTTP RESPONSE BODY:\n#{e.response.body}"
|
84
|
+
puts "HTTP RESPONSE BODY:\n#{e.response.body.inspect}\n\n\n"
|
85
85
|
end
|
86
86
|
|
87
|
-
|
88
|
-
# type of RestClient::ExceptionWithResponse
|
89
|
-
# and handle accordingly.
|
90
|
-
case e
|
91
|
-
when RestClient::Unauthorized
|
92
|
-
raise "ERROR: #{e.message} - Invalid token."
|
93
|
-
when RestClient::Forbidden
|
94
|
-
raise "ERROR: #{e.message} - Insufficient permissions."
|
95
|
-
when RestClient::BadRequest
|
96
|
-
raise "ERROR: #{e.message} - Invalid request."
|
97
|
-
when RestClient::ResourceNotFound
|
98
|
-
raise "ERROR: #{e.message} - Resource not found."
|
99
|
-
when RestClient::InternalServerError
|
100
|
-
raise "ERROR: #{e.message} - Internal server error."
|
101
|
-
when RestClient::BadGateway
|
102
|
-
raise "ERROR: #{e.message} - Bad gateway."
|
103
|
-
when RestClient::ServiceUnavailable
|
104
|
-
raise "ERROR: #{e.message} - Service unavailable."
|
105
|
-
when RestClient::GatewayTimeout
|
106
|
-
raise "ERROR: #{e.message} - Gateway timeout."
|
107
|
-
else
|
108
|
-
raise e
|
109
|
-
end
|
87
|
+
raise e
|
110
88
|
rescue StandardError => e
|
111
89
|
case e.message
|
112
90
|
when '400 Bad Request', '404 Resource Not Found'
|
data/lib/pwn/version.rb
CHANGED
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.4.
|
4
|
+
version: 0.4.922
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- 0day Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-10-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -240,14 +240,14 @@ dependencies:
|
|
240
240
|
requirements:
|
241
241
|
- - '='
|
242
242
|
- !ruby/object:Gem::Version
|
243
|
-
version: 1.16.
|
243
|
+
version: 1.16.3
|
244
244
|
type: :runtime
|
245
245
|
prerelease: false
|
246
246
|
version_requirements: !ruby/object:Gem::Requirement
|
247
247
|
requirements:
|
248
248
|
- - '='
|
249
249
|
- !ruby/object:Gem::Version
|
250
|
-
version: 1.16.
|
250
|
+
version: 1.16.3
|
251
251
|
- !ruby/object:Gem::Dependency
|
252
252
|
name: fftw3
|
253
253
|
requirement: !ruby/object:Gem::Requirement
|
@@ -800,14 +800,14 @@ dependencies:
|
|
800
800
|
requirements:
|
801
801
|
- - '='
|
802
802
|
- !ruby/object:Gem::Version
|
803
|
-
version: 3.1.
|
803
|
+
version: 3.1.3
|
804
804
|
type: :runtime
|
805
805
|
prerelease: false
|
806
806
|
version_requirements: !ruby/object:Gem::Requirement
|
807
807
|
requirements:
|
808
808
|
- - '='
|
809
809
|
- !ruby/object:Gem::Version
|
810
|
-
version: 3.1.
|
810
|
+
version: 3.1.3
|
811
811
|
- !ruby/object:Gem::Dependency
|
812
812
|
name: rubocop
|
813
813
|
requirement: !ruby/object:Gem::Requirement
|