pwn 0.4.536 → 0.4.539

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: 75a3c44b4d258c5aa1c21cb66446b0031c76ec030df627c710239613fb956fe1
4
- data.tar.gz: 151e3aeadc5f56d92f8c4da1c9fa1261c9b73dee8a54791a9600a61e3372cd7d
3
+ metadata.gz: c77a67e15fb91b4692811c34abe3e3afe3ad69d22dcf7a9d01b5b98915edb64d
4
+ data.tar.gz: cb6fdef97a465f89ec32e4f56460fd4ab3100faa06d4e2ce52758af07ebc1ea0
5
5
  SHA512:
6
- metadata.gz: 99cc15bbea7f10d2499b117fc537d514b5263885e1029df369355a603430d26ecb03bd73768b31f619a4325ff98599fa3f3adfb70f5e161ff71ff4da2daff152
7
- data.tar.gz: 98dee6ed4c6151fde6467c55e900039bf63c7386851b596f17d1f1a20f19e2b15a9e189a871ff43395d3882fc48ce97d52463df9e88e79fa3697774fd2ff47f5
6
+ metadata.gz: bb307006843ea074f7439c946cb5931a60a14937dc58d1141a58f6c9729e16afb9f9e98de385cc15edb82185bd025f5a0847e2f8586b844456bfd8a3d6caf7dd
7
+ data.tar.gz: 1d0b9cb85f3e7f1ab413355028a40b869eb654475f11ab5ce98263e5c283d027402459bcf1567ee8704844451c5fe84423d148482b7939faedaf65f8ff02ef91
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.536]:001 >>> PWN.help
40
+ pwn[v0.4.539]: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.1.2@pwn
52
52
  $ gem uninstall --all --executables pwn
53
53
  $ gem install --verbose pwn
54
54
  $ pwn
55
- pwn[v0.4.536]:001 >>> PWN.help
55
+ pwn[v0.4.539]:001 >>> PWN.help
56
56
  ```
57
57
 
58
58
 
@@ -25,6 +25,10 @@ OptionParser.new do |options|
25
25
  opts[:http_request_headers] = h
26
26
  end
27
27
 
28
+ options.on('-pPROXY', '--proxy=PROXY', '<Optional - Proxy SCHEME://ADDRESS:PORT>') do |p|
29
+ opts[:proxy] = p
30
+ end
31
+
28
32
  options.on('-tTHREADS', '--max-threads=THREADS', '<Optional # HTTP Requests to Run Simultaneously (Default 100)>') do |t|
29
33
  opts[:max_threads] = t
30
34
  end
@@ -59,6 +63,8 @@ begin
59
63
 
60
64
  http_request_headers = opts[:http_request_headers]
61
65
 
66
+ proxy = opts[:proxy]
67
+
62
68
  max_threads = opts[:max_threads]
63
69
  max_threads ||= 100
64
70
 
@@ -95,7 +101,16 @@ begin
95
101
  print '.'
96
102
  http_uri = "#{target_url}/#{wordlist_line}"
97
103
  rest_client_resp_hash = {}
98
- rest_client = PWN::Plugins::TransparentBrowser.open(browser_type: :rest)::Request
104
+ if proxy
105
+ rest_client = PWN::Plugins::TransparentBrowser.open(
106
+ browser_type: :rest,
107
+ proxy: proxy
108
+ )::Request
109
+ else
110
+ rest_client = PWN::Plugins::TransparentBrowser.open(
111
+ browser_type: :rest
112
+ )::Request
113
+ end
99
114
 
100
115
  headers = nil
101
116
  if http_request_headers
@@ -117,7 +132,8 @@ begin
117
132
  http_uri: http_uri,
118
133
  http_method: http_method,
119
134
  http_resp_code: response.code,
120
- http_resp: response.body[0..300]
135
+ http_resp_length: response.body.length,
136
+ http_resp: "#{response.body[0..300]}..."
121
137
  }
122
138
  rescue RestClient::ExceptionWithResponse => e
123
139
  rest_client_resp_hash = {
@@ -125,7 +141,8 @@ begin
125
141
  http_uri: http_uri,
126
142
  http_method: http_method,
127
143
  http_resp_code: e.response.code,
128
- http_resp: e.response.body[0..300]
144
+ http_resp_length: e.response.body.length,
145
+ http_resp: "#{e.response.body[0..300]}..."
129
146
  }
130
147
  next
131
148
  rescue URI::InvalidURIError
@@ -98,7 +98,8 @@ module PWN
98
98
  <a class="toggle-vis" data-column="2" href="#">URI</a>&nbsp;|&nbsp;
99
99
  <a class="toggle-vis" data-column="3" href="#">HTTP Method</a>&nbsp;|&nbsp;
100
100
  <a class="toggle-vis" data-column="4" href="#">HTTP Response Code</a>&nbsp;|&nbsp;
101
- <a class="toggle-vis" data-column="5" href="#">HTTP Response</a>&nbsp;|&nbsp;
101
+ <a class="toggle-vis" data-column="5" href="#">HTTP Response Length</a>&nbsp;|&nbsp;
102
+ <a class="toggle-vis" data-column="6" href="#">HTTP Response</a>&nbsp;|&nbsp;
102
103
  </div>
103
104
  <br /><br />
104
105
 
@@ -111,7 +112,8 @@ module PWN
111
112
  <th>URI</th>
112
113
  <th>HTTP Method</th>
113
114
  <th>HTTP Response Code</th>
114
- <th>HTTP Response</th>
115
+ <th>HTTP Response Length</th>
116
+ <th>HTTP Response (300 bytes)</th>
115
117
  </tr>
116
118
  </thead>
117
119
  <!-- DataTables <tbody> -->
@@ -163,7 +165,9 @@ module PWN
163
165
  },
164
166
  {
165
167
  "data": "http_uri",
166
- "render": $.fn.dataTable.render.text()
168
+ "render": function (data, type, row, meta) {
169
+ return '<a href="' + data + '" target="_blank">' + data + '</a>';
170
+ }
167
171
  },
168
172
  {
169
173
  "data": "http_method",
@@ -173,6 +177,10 @@ module PWN
173
177
  "data": "http_resp_code",
174
178
  "render": $.fn.dataTable.render.text()
175
179
  },
180
+ {
181
+ "data": "http_resp_length",
182
+ "render": $.fn.dataTable.render.text()
183
+ },
176
184
  {
177
185
  "data": "http_resp",
178
186
  "render": $.fn.dataTable.render.text()
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.4.536'
4
+ VERSION = '0.4.539'
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.4.536
4
+ version: 0.4.539
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.