pwn 0.4.815 → 0.4.816

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: 6566c8553bc576ffce7cf5388d204c51da03a4d3e1202ad41e1325909d3de0f4
4
- data.tar.gz: d69f58605f938a6f7d3449b1afea1b24a562299a10e3d944f71130f5c9d218b2
3
+ metadata.gz: b5c14fe59cd32320e6844e72d3ec8500b1f8ce50cbc35595803db984d01928ec
4
+ data.tar.gz: 68ddbb213bce2f59402f3c0fa2da48bbc19f521ca09bc6c36e093d24d0138ba2
5
5
  SHA512:
6
- metadata.gz: cb244f903461ac2c7b5cc66beb392a1158f1c0ecb412713d712ae53380b044f7055b272383f28a319ae58fdee10779a01d18ac5222f473b26f17372e0f06ef6a
7
- data.tar.gz: 4927eacf5a4e8656a0bfe327c43c3b731026bd08ed8ffeef30a087d2e7077092ac06e6350d1c1f8b7dcd89916ea40e5d6f680ea97e7225ebd16ca67e7acd2796
6
+ metadata.gz: 5b0c5568f3abfb6b758a0aba028fa6fc577c31c682635e912627692487357a7d2caa7974376a0354fa38a9f6df8790330c1c127f787a4303a09e01be7cdc8bf5
7
+ data.tar.gz: cc8ce6722c8627711cb895a9373060fc1e815adf8c876edd67fb559d364df77a8733992ed2a954b69f58fb24c573a59d4e53069ddc8c984357434d23c924c3ce
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.815]:001 >>> PWN.help
40
+ pwn[v0.4.816]: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.2.2@pwn
52
52
  $ gem uninstall --all --executables pwn
53
53
  $ gem install --verbose pwn
54
54
  $ pwn
55
- pwn[v0.4.815]:001 >>> PWN.help
55
+ pwn[v0.4.816]:001 >>> PWN.help
56
56
  ```
57
57
 
58
58
 
@@ -52,6 +52,10 @@ OptionParser.new do |options|
52
52
  options.on('-s', '--[no-]start-reporting-server', '<Optional - Start Simple HTTP Server for Reporting>') do |s|
53
53
  opts[:start_reporting_server] = s
54
54
  end
55
+
56
+ options.on('-T', '--tor', '<Optional - Source Scans from Tor Nodes>') do |t|
57
+ opts[:with_tor] = t
58
+ end
55
59
  end.parse!
56
60
 
57
61
  if opts.empty?
@@ -184,6 +188,15 @@ begin
184
188
 
185
189
  start_reporting_server = opts[:start_reporting_server]
186
190
 
191
+ with_tor = true if opts[:with_tor]
192
+ with_tor ||= false
193
+
194
+ tor_obj = nil
195
+ if with_tor
196
+ tor_obj = PWN::Plugins::Tor.start
197
+ proxy = "socks5://#{tor_obj[:ip]}:#{tor_obj[:port]}"
198
+ end
199
+
187
200
  mutex = Mutex.new
188
201
 
189
202
  results_hash = {
@@ -204,6 +217,8 @@ begin
204
217
 
205
218
  http_methods = %i[DELETE GET HEAD OPTIONS PATCH POST PUT TRACE]
206
219
  http_methods.each do |http_method|
220
+ PWN::Plugins::Tor.switch_exit_node(tor_obj: tor_obj) if with_tor
221
+
207
222
  rest_client_resp_hash = request_path(
208
223
  target_url: target_url,
209
224
  proxy: proxy,
@@ -255,4 +270,6 @@ rescue SystemExit, Interrupt
255
270
  puts "\nGoodbye."
256
271
  rescue StandardError => e
257
272
  raise e
273
+ ensure
274
+ tor_obj = PWN::Plugins::Tor.stop(tor_obj: tor_obj) if with_tor && tor_obj
258
275
  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.4.815'
4
+ VERSION = '0.4.816'
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.815
4
+ version: 0.4.816
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.