pwn 0.5.178 → 0.5.179
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +3 -3
- data/lib/pwn/plugins/transparent_browser.rb +24 -20
- data/lib/pwn/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3c731dd165a8e1944b7fab3438d92d3ce475bbeda7e198589413cc141beac5d3
|
4
|
+
data.tar.gz: 4d69eb7d8a1c966b71e5d6d6e8f111f36f700c5549b7c0a8fb2e0f0822114b79
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b49202e6895e994720a12ab5995ce3b5e0c1147c1461dbd1e0437f1ddad0b255a5510f8d60aa2138b28648a151f45519c9743539e5d434a90e8e680dd84755ec
|
7
|
+
data.tar.gz: 65d5f85e931196f99a6d13a3360c5f0e9c2628566a7369aa7c43b6ebe3521dd712e9cb84e27e2f48bea909c9919ecd1f2b248021d27daeb624a9154d9bc7c418
|
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.
|
40
|
+
pwn[v0.5.179]: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.3@pwn
|
|
52
52
|
$ gem uninstall --all --executables pwn
|
53
53
|
$ gem install --verbose pwn
|
54
54
|
$ pwn
|
55
|
-
pwn[v0.5.
|
55
|
+
pwn[v0.5.179]: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.3@pwn
|
|
62
62
|
$ rvmsudo gem uninstall --all --executables pwn
|
63
63
|
$ rvmsudo gem install --verbose pwn
|
64
64
|
$ pwn
|
65
|
-
pwn[v0.5.
|
65
|
+
pwn[v0.5.179]: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:
|
@@ -58,7 +58,9 @@ module PWN
|
|
58
58
|
browser_obj[:tor_obj] = tor_obj
|
59
59
|
end
|
60
60
|
|
61
|
+
devtools_supported = %i[chrome headless_chrome firefox headless_firefox headless]
|
61
62
|
with_devtools = opts[:with_devtools] ||= true
|
63
|
+
with_devtools = false unless devtools_supported.include?(browser_type)
|
62
64
|
|
63
65
|
# Let's crank up the default timeout from 30 seconds to 15 min for slow sites
|
64
66
|
Watir.default_timeout = 900
|
@@ -277,32 +279,34 @@ module PWN
|
|
277
279
|
browser_obj[:browser] = Faye::WebSocket::Client.new('')
|
278
280
|
end
|
279
281
|
else
|
280
|
-
puts 'Error: browser_type only supports :firefox, :chrome, :headless, :
|
282
|
+
puts 'Error: browser_type only supports :firefox, :chrome, :headless, :headless_chrome, :headless_firefox, :rest, :websocket'
|
281
283
|
return nil
|
282
284
|
end
|
283
285
|
|
284
|
-
browser_type
|
285
|
-
supported = %i[chrome headless_chrome firefox headless_firefox headless]
|
286
|
-
if with_devtools && supported.include?(browser_type)
|
287
|
-
browser_obj[:browser].goto('about:blank')
|
286
|
+
if devtools_supported.include?(browser_type)
|
288
287
|
rand_tab = SecureRandom.hex(8)
|
288
|
+
browser_obj[:browser].goto('about:about')
|
289
289
|
browser_obj[:browser].execute_script("document.title = '#{rand_tab}'")
|
290
290
|
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
291
|
+
if with_devtools
|
292
|
+
browser_obj[:devtools] = browser_obj[:browser].driver.devtools
|
293
|
+
|
294
|
+
browser_obj[:devtools].send_cmd('DOM.enable')
|
295
|
+
browser_obj[:devtools].send_cmd('Log.enable')
|
296
|
+
browser_obj[:devtools].send_cmd('Network.enable')
|
297
|
+
browser_obj[:devtools].send_cmd('Page.enable')
|
298
|
+
browser_obj[:devtools].send_cmd('Runtime.enable')
|
299
|
+
browser_obj[:devtools].send_cmd('Security.enable')
|
300
|
+
|
301
|
+
chrome_browser_types = %i[chrome headless_chrome]
|
302
|
+
if chrome_browser_types.include?(browser_type)
|
303
|
+
browser_obj[:devtools].send_cmd('Debugger.enable')
|
304
|
+
browser_obj[:devtools].send_cmd('DOMStorage.enable')
|
305
|
+
browser_obj[:devtools].send_cmd('DOMSnapshot.enable')
|
306
|
+
end
|
307
|
+
|
308
|
+
# browser_obj[:bidi] = browser_obj[:browser].driver.bidi
|
309
|
+
end
|
306
310
|
end
|
307
311
|
|
308
312
|
browser_obj
|
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.5.
|
4
|
+
version: 0.5.179
|
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-06-
|
11
|
+
date: 2024-06-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|