pwn 0.4.701 → 0.4.702
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/README.md +2 -2
- data/bin/pwn_burp_suite_pro_active_scan +2 -1
- data/bin/pwn_domain_reversewhois +7 -6
- data/bin/pwn_owasp_zap_active_scan +3 -2
- data/bin/pwn_pastebin_sample_filter +5 -3
- data/bin/pwn_web_cache_deception +10 -7
- data/bin/pwn_www_checkip +5 -4
- data/bin/pwn_www_uri_buster +5 -4
- data/bin/pwn_xss_dom_vectors +11 -8
- data/lib/pwn/plugins/baresip.rb +3 -2
- data/lib/pwn/plugins/beef.rb +5 -2
- data/lib/pwn/plugins/burp_suite.rb +7 -5
- data/lib/pwn/plugins/defect_dojo.rb +5 -3
- data/lib/pwn/plugins/github.rb +2 -1
- data/lib/pwn/plugins/hacker_one.rb +4 -2
- data/lib/pwn/plugins/ibm_appscan.rb +13 -6
- data/lib/pwn/plugins/ip_info.rb +4 -2
- data/lib/pwn/plugins/jira_server.rb +2 -1
- data/lib/pwn/plugins/nessus_cloud.rb +2 -1
- data/lib/pwn/plugins/open_ai.rb +3 -1
- data/lib/pwn/plugins/owasp_zap.rb +2 -1
- data/lib/pwn/plugins/shodan.rb +2 -1
- data/lib/pwn/plugins/transparent_browser.rb +22 -32
- data/lib/pwn/plugins/twitter_api.rb +5 -2
- data/lib/pwn/plugins/vsphere.rb +1 -2
- data/lib/pwn/version.rb +1 -1
- data/lib/pwn/www/app_cobalt_io.rb +17 -11
- data/lib/pwn/www/bing.rb +7 -4
- data/lib/pwn/www/bug_crowd.rb +17 -11
- data/lib/pwn/www/checkip.rb +5 -3
- data/lib/pwn/www/coinbase_pro.rb +16 -10
- data/lib/pwn/www/duckduckgo.rb +13 -6
- data/lib/pwn/www/facebook.rb +14 -8
- data/lib/pwn/www/google.rb +10 -6
- data/lib/pwn/www/hacker_one.rb +14 -8
- data/lib/pwn/www/linkedin.rb +14 -8
- data/lib/pwn/www/pandora.rb +14 -8
- data/lib/pwn/www/pastebin.rb +7 -3
- data/lib/pwn/www/paypal.rb +34 -26
- data/lib/pwn/www/synack.rb +17 -11
- data/lib/pwn/www/torch.rb +10 -5
- data/lib/pwn/www/trading_view.rb +17 -11
- data/lib/pwn/www/twitter.rb +18 -10
- data/lib/pwn/www/uber.rb +14 -8
- data/lib/pwn/www/upwork.rb +14 -8
- data/lib/pwn/www/youtube.rb +7 -4
- metadata +2 -6
- data/bin/pwn_arachni +0 -157
- data/bin/pwn_arachni_rest +0 -174
data/lib/pwn/www/paypal.rb
CHANGED
@@ -15,7 +15,8 @@ module PWN
|
|
15
15
|
public_class_method def self.open(opts = {})
|
16
16
|
browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
|
17
17
|
|
18
|
-
browser_obj
|
18
|
+
browser = browser_obj[:browser]
|
19
|
+
browser.goto('https://www.paypal.com')
|
19
20
|
|
20
21
|
browser_obj
|
21
22
|
rescue StandardError => e
|
@@ -48,6 +49,8 @@ module PWN
|
|
48
49
|
username = opts[:username].to_s.scrub.strip.chomp
|
49
50
|
password = opts[:password]
|
50
51
|
|
52
|
+
browser = browser_obj[:browser]
|
53
|
+
|
51
54
|
if password.nil?
|
52
55
|
password = PWN::Plugins::AuthenticationHelper.mask_password
|
53
56
|
else
|
@@ -55,21 +58,21 @@ module PWN
|
|
55
58
|
end
|
56
59
|
mfa = opts[:mfa]
|
57
60
|
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
61
|
+
browser.goto('https://www.paypal.com/signup/account')
|
62
|
+
|
63
|
+
browser.text_field(id: 'email').wait_until(&:present?).set(username)
|
64
|
+
browser.text_field(id: 'password').wait_until(&:present?).set(password)
|
65
|
+
browser.text_field(id: 'confirmPassword').wait_until(&:present?).set(password)
|
66
|
+
browser.button(id: '_eventId_personal').wait_until(&:present?).click!
|
67
|
+
browser.text_field(id: 'firstName').wait_until(&:present?).set(first_name)
|
68
|
+
browser.text_field(id: 'lastName').wait_until(&:present?).set(last_name)
|
69
|
+
browser.text_field(id: 'address1').wait_until(&:present?).set(address)
|
70
|
+
browser.text_field(id: 'city').wait_until(&:present?).set(city)
|
71
|
+
browser.select(id: 'state').wait_until(&:present?).select_value(state)
|
72
|
+
browser.text_field(id: 'postalCode').wait_until(&:present?).set(zip_code)
|
73
|
+
browser.text_field(id: 'phoneNumber').wait_until(&:present?).set(mobile_phone)
|
74
|
+
browser.span(index: 7).wait_until(&:present?).click! # Agree to ToS
|
75
|
+
browser.button(id: 'submitBtn').wait_until(&:present?).click!
|
73
76
|
|
74
77
|
puts "Confirmation email sent to: #{username}"
|
75
78
|
|
@@ -91,6 +94,8 @@ module PWN
|
|
91
94
|
username = opts[:username].to_s.scrub.strip.chomp
|
92
95
|
password = opts[:password]
|
93
96
|
|
97
|
+
browser = browser_obj[:browser]
|
98
|
+
|
94
99
|
if password.nil?
|
95
100
|
password = PWN::Plugins::AuthenticationHelper.mask_password
|
96
101
|
else
|
@@ -98,18 +103,18 @@ module PWN
|
|
98
103
|
end
|
99
104
|
mfa = opts[:mfa]
|
100
105
|
|
101
|
-
|
106
|
+
browser.goto('https://www.paypal.com/signin')
|
102
107
|
|
103
|
-
|
104
|
-
|
105
|
-
|
108
|
+
browser.text_field(id: 'email').wait_until(&:present?).set(username)
|
109
|
+
browser.text_field(id: 'password').wait_until(&:present?).set(password)
|
110
|
+
browser.button(id: 'btnLogin').click!
|
106
111
|
|
107
112
|
if mfa
|
108
113
|
# Send code to SMS
|
109
|
-
|
110
|
-
until
|
111
|
-
|
112
|
-
|
114
|
+
browser.button(id: 'btnSelectSoftToken').wait_until(&:present?).click!
|
115
|
+
until browser.url == 'https://www.paypal.com/myaccount/home'
|
116
|
+
browser.text_field(id: 'security-code').wait_until(&:present?).set(PWN::Plugins::AuthenticationHelper.mfa(prompt: 'enter mfa token'))
|
117
|
+
browser.button(id: 'btnCodeSubmit').click!
|
113
118
|
sleep 3
|
114
119
|
end
|
115
120
|
print "\n"
|
@@ -127,7 +132,9 @@ module PWN
|
|
127
132
|
|
128
133
|
public_class_method def self.logout(opts = {})
|
129
134
|
browser_obj = opts[:browser_obj]
|
130
|
-
|
135
|
+
|
136
|
+
browser = browser_obj[:browser]
|
137
|
+
browser.link(index: 13).wait_until(&:present?).click!
|
131
138
|
|
132
139
|
browser_obj
|
133
140
|
rescue StandardError => e
|
@@ -164,7 +171,8 @@ module PWN
|
|
164
171
|
browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)',
|
165
172
|
proxy: 'optional - scheme://proxy_host:port || tor'
|
166
173
|
)
|
167
|
-
|
174
|
+
browser = browser_obj[:browser]
|
175
|
+
puts browser.public_methods
|
168
176
|
|
169
177
|
browser_obj = #{self}.signup(
|
170
178
|
browser_obj: 'required - browser_obj returned from #open method',
|
data/lib/pwn/www/synack.rb
CHANGED
@@ -15,7 +15,8 @@ module PWN
|
|
15
15
|
public_class_method def self.open(opts = {})
|
16
16
|
browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
|
17
17
|
|
18
|
-
browser_obj
|
18
|
+
browser = browser_obj[:browser]
|
19
|
+
browser.goto('https://www.synack.com')
|
19
20
|
|
20
21
|
browser_obj
|
21
22
|
rescue StandardError => e
|
@@ -35,6 +36,8 @@ module PWN
|
|
35
36
|
username = opts[:username].to_s.scrub.strip.chomp
|
36
37
|
password = opts[:password]
|
37
38
|
|
39
|
+
browser = browser_obj[:browser]
|
40
|
+
|
38
41
|
if password.nil?
|
39
42
|
password = PWN::Plugins::AuthenticationHelper.mask_password
|
40
43
|
else
|
@@ -42,16 +45,16 @@ module PWN
|
|
42
45
|
end
|
43
46
|
mfa = opts[:mfa]
|
44
47
|
|
45
|
-
|
48
|
+
browser.goto('https://login.synack.com')
|
46
49
|
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
+
browser.text_field(name: 'email').wait_until(&:present?).set(username)
|
51
|
+
browser.text_field(name: 'password').wait_until(&:present?).set(password)
|
52
|
+
browser.button(class: 'btn').click!
|
50
53
|
|
51
54
|
if mfa
|
52
|
-
until
|
53
|
-
|
54
|
-
|
55
|
+
until browser.url.include?('https://platform.synack.com')
|
56
|
+
browser.text_field(name: 'authy_token').wait_until(&:present?).set(PWN::Plugins::AuthenticationHelper.mfa(prompt: 'enter mfa token'))
|
57
|
+
browser.button(class: 'btn').click!
|
55
58
|
sleep 3
|
56
59
|
end
|
57
60
|
print "\n"
|
@@ -69,8 +72,10 @@ module PWN
|
|
69
72
|
|
70
73
|
public_class_method def self.logout(opts = {})
|
71
74
|
browser_obj = opts[:browser_obj]
|
72
|
-
|
73
|
-
browser_obj
|
75
|
+
|
76
|
+
browser = browser_obj[:browser]
|
77
|
+
browser.img(class: 'navbar-avatar-img').wait_until(&:present?).click!
|
78
|
+
browser.button(text: 'Logout').wait_until(&:present?).click!
|
74
79
|
|
75
80
|
browser_obj
|
76
81
|
rescue StandardError => e
|
@@ -107,7 +112,8 @@ module PWN
|
|
107
112
|
browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)',
|
108
113
|
proxy: 'optional - scheme://proxy_host:port || tor'
|
109
114
|
)
|
110
|
-
|
115
|
+
browser = browser_obj[:browser]
|
116
|
+
puts browser.public_methods
|
111
117
|
|
112
118
|
browser_obj = #{self}.login(
|
113
119
|
browser_obj: 'required - browser_obj returned from #open method',
|
data/lib/pwn/www/torch.rb
CHANGED
@@ -13,7 +13,8 @@ module PWN
|
|
13
13
|
public_class_method def self.open(opts = {})
|
14
14
|
browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
|
15
15
|
|
16
|
-
browser_obj
|
16
|
+
browser = browser_obj[:browser]
|
17
|
+
browser.goto('http://www.torchtorsearch.com')
|
17
18
|
|
18
19
|
browser_obj
|
19
20
|
rescue StandardError => e
|
@@ -30,8 +31,9 @@ module PWN
|
|
30
31
|
browser_obj = opts[:browser_obj]
|
31
32
|
q = opts[:q].to_s
|
32
33
|
|
33
|
-
browser_obj
|
34
|
-
|
34
|
+
browser = browser_obj[:browser]
|
35
|
+
browser.text_field(name: 'q').wait_until(&:present?).set(q)
|
36
|
+
browser.button(name: 'cmd').click!
|
35
37
|
|
36
38
|
browser_obj
|
37
39
|
rescue StandardError => e
|
@@ -45,7 +47,9 @@ module PWN
|
|
45
47
|
|
46
48
|
public_class_method def self.onion
|
47
49
|
browser_obj = opts[:browser_obj]
|
48
|
-
|
50
|
+
|
51
|
+
browser = browser_obj[:browser]
|
52
|
+
browser.goto('http://xmh57jrzrnw6insl.onion')
|
49
53
|
|
50
54
|
browser_obj
|
51
55
|
rescue StandardError => e
|
@@ -82,7 +86,8 @@ module PWN
|
|
82
86
|
browser_type: 'optional :firefox|:chrome|:ie|:headless (Defaults to :firefox)',
|
83
87
|
proxy: 'optional - scheme://proxy_host:port || tor'
|
84
88
|
)
|
85
|
-
|
89
|
+
browser = browser_obj[:browser]
|
90
|
+
puts browser.public_methods
|
86
91
|
|
87
92
|
browser_obj = #{self}.open(
|
88
93
|
q: 'required search string'
|
data/lib/pwn/www/trading_view.rb
CHANGED
@@ -15,7 +15,8 @@ module PWN
|
|
15
15
|
public_class_method def self.open(opts = {})
|
16
16
|
browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
|
17
17
|
|
18
|
-
browser_obj
|
18
|
+
browser = browser_obj[:browser]
|
19
|
+
browser.goto('https://tradingview.com')
|
19
20
|
|
20
21
|
browser_obj
|
21
22
|
rescue StandardError => e
|
@@ -34,20 +35,22 @@ module PWN
|
|
34
35
|
username = opts[:username].to_s.scrub.strip.chomp
|
35
36
|
password = opts[:password]
|
36
37
|
|
38
|
+
browser = browser_obj[:browser]
|
39
|
+
|
37
40
|
if password.nil?
|
38
41
|
password = PWN::Plugins::AuthenticationHelper.mask_password
|
39
42
|
else
|
40
43
|
password = opts[:password].to_s.scrub.strip.chomp
|
41
44
|
end
|
42
45
|
|
43
|
-
|
46
|
+
browser.goto('https://tradingview.com')
|
44
47
|
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
48
|
+
browser.button(index: 3).wait_until(&:present?).click
|
49
|
+
browser.div(text: 'Sign in').wait_until(&:present?).click
|
50
|
+
browser.span(text: 'Email').wait_until(&:present?).click
|
51
|
+
browser.text_field(name: 'username').wait_until(&:present?).set(username)
|
52
|
+
browser.text_field(name: 'password').wait_until(&:present?).set(password)
|
53
|
+
browser.button(text: 'Sign in').click!
|
51
54
|
|
52
55
|
browser_obj
|
53
56
|
rescue StandardError => e
|
@@ -61,8 +64,10 @@ module PWN
|
|
61
64
|
|
62
65
|
public_class_method def self.logout(opts = {})
|
63
66
|
browser_obj = opts[:browser_obj]
|
64
|
-
|
65
|
-
browser_obj
|
67
|
+
|
68
|
+
browser = browser_obj[:browser]
|
69
|
+
browser.button(index: 4).wait_until(&:present?).click
|
70
|
+
browser.div(text: 'Sign Out').wait_until(&:present?).click!
|
66
71
|
|
67
72
|
browser_obj
|
68
73
|
rescue StandardError => e
|
@@ -99,7 +104,8 @@ module PWN
|
|
99
104
|
browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)',
|
100
105
|
proxy: 'optional - scheme://proxy_host:port || tor'
|
101
106
|
)
|
102
|
-
|
107
|
+
browser = browser_obj[:browser]
|
108
|
+
puts browser.public_methods
|
103
109
|
|
104
110
|
browser_obj = #{self}.login(
|
105
111
|
browser_obj: 'required - browser_obj returned from #open method',
|
data/lib/pwn/www/twitter.rb
CHANGED
@@ -15,7 +15,8 @@ module PWN
|
|
15
15
|
public_class_method def self.open(opts = {})
|
16
16
|
browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
|
17
17
|
|
18
|
-
browser_obj
|
18
|
+
browser = browser_obj[:browser]
|
19
|
+
browser.goto('https://twitter.com')
|
19
20
|
|
20
21
|
browser_obj
|
21
22
|
rescue StandardError => e
|
@@ -35,6 +36,8 @@ module PWN
|
|
35
36
|
username = opts[:username].to_s.scrub.strip.chomp
|
36
37
|
password = opts[:password]
|
37
38
|
|
39
|
+
browser = browser_obj[:browser]
|
40
|
+
|
38
41
|
if password.nil?
|
39
42
|
password = PWN::Plugins::AuthenticationHelper.mask_password
|
40
43
|
else
|
@@ -44,14 +47,16 @@ module PWN
|
|
44
47
|
|
45
48
|
browser_obj.goto('https://twitter.com/login')
|
46
49
|
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
+
browser.text_field(index: 2).wait_until(&:present?).set(username)
|
51
|
+
browser.text_field(index: 3).wait_until(&:present?).set(password)
|
52
|
+
browser.button(index: 1).click!
|
50
53
|
|
51
54
|
if mfa
|
52
|
-
until
|
53
|
-
|
54
|
-
|
55
|
+
until browser.url == 'https://twitter.com/' ||
|
56
|
+
browser.url == 'https://twitter.com/home'
|
57
|
+
|
58
|
+
browser.text_field(id: 'challenge_response').wait_until(&:present?).set(PWN::Plugins::AuthenticationHelper.mfa(prompt: 'enter mfa token'))
|
59
|
+
browser.button(id: 'email_challenge_submit').click!
|
55
60
|
sleep 3
|
56
61
|
end
|
57
62
|
print "\n"
|
@@ -69,8 +74,10 @@ module PWN
|
|
69
74
|
|
70
75
|
public_class_method def self.logout(opts = {})
|
71
76
|
browser_obj = opts[:browser_obj]
|
72
|
-
|
73
|
-
browser_obj
|
77
|
+
|
78
|
+
browser = browser_obj[:browser]
|
79
|
+
browser.li(id: 'user-dropdown').wait_until(&:present?).click!
|
80
|
+
browser.button(text: 'Log out').wait_until(&:present?).click!
|
74
81
|
|
75
82
|
browser_obj
|
76
83
|
rescue StandardError => e
|
@@ -107,7 +114,8 @@ module PWN
|
|
107
114
|
browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)',
|
108
115
|
proxy: 'optional - scheme://proxy_host:port || tor'
|
109
116
|
)
|
110
|
-
|
117
|
+
browser = browser_obj[:browser]
|
118
|
+
puts browser.public_methods
|
111
119
|
|
112
120
|
browser_obj = #{self}.login(
|
113
121
|
browser_obj: 'required - browser_obj returned from #open method',
|
data/lib/pwn/www/uber.rb
CHANGED
@@ -15,7 +15,8 @@ module PWN
|
|
15
15
|
public_class_method def self.open(opts = {})
|
16
16
|
browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
|
17
17
|
|
18
|
-
browser_obj
|
18
|
+
browser = browser_obj[:browser]
|
19
|
+
browser.goto('https://www.uber.com')
|
19
20
|
|
20
21
|
browser_obj
|
21
22
|
rescue StandardError => e
|
@@ -34,17 +35,19 @@ module PWN
|
|
34
35
|
username = opts[:username].to_s.scrub.strip.chomp
|
35
36
|
password = opts[:password]
|
36
37
|
|
38
|
+
browser = browser_obj[:browser]
|
39
|
+
|
37
40
|
if password.nil?
|
38
41
|
password = PWN::Plugins::AuthenticationHelper.mask_password
|
39
42
|
else
|
40
43
|
password = opts[:password].to_s.scrub.strip.chomp
|
41
44
|
end
|
42
45
|
|
43
|
-
|
46
|
+
browser.goto('https://login.uber.com/login')
|
44
47
|
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
+
browser.text_field(id: 'email').wait_until(&:present?).set(username)
|
49
|
+
browser.text_field(id: 'password').wait_until(&:present?).set(password)
|
50
|
+
browser.button(id: 'login-submit-btn').click!
|
48
51
|
|
49
52
|
browser_obj
|
50
53
|
rescue StandardError => e
|
@@ -58,8 +61,10 @@ module PWN
|
|
58
61
|
|
59
62
|
public_class_method def self.logout(opts = {})
|
60
63
|
browser_obj = opts[:browser_obj]
|
61
|
-
|
62
|
-
browser_obj
|
64
|
+
|
65
|
+
browser = browser_obj[:browser]
|
66
|
+
browser.span(index: 5).wait_until(&:present?).hover
|
67
|
+
browser.link(index: 13).wait_until(&:present?).click!
|
63
68
|
|
64
69
|
browser_obj
|
65
70
|
rescue StandardError => e
|
@@ -96,7 +101,8 @@ module PWN
|
|
96
101
|
browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)',
|
97
102
|
proxy: 'optional - scheme://proxy_host:port || tor'
|
98
103
|
)
|
99
|
-
|
104
|
+
browser = browser_obj[:browser]
|
105
|
+
puts browser.public_methods
|
100
106
|
|
101
107
|
browser_obj = #{self}.login(
|
102
108
|
browser_obj: 'required - browser_obj returned from #open method',
|
data/lib/pwn/www/upwork.rb
CHANGED
@@ -15,7 +15,8 @@ module PWN
|
|
15
15
|
public_class_method def self.open(opts = {})
|
16
16
|
browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
|
17
17
|
|
18
|
-
browser_obj
|
18
|
+
browser = browser_obj[:browser]
|
19
|
+
browser.goto('https://www.upwork.com')
|
19
20
|
|
20
21
|
browser_obj
|
21
22
|
rescue StandardError => e
|
@@ -34,17 +35,19 @@ module PWN
|
|
34
35
|
username = opts[:username].to_s.scrub.strip.chomp
|
35
36
|
password = opts[:password]
|
36
37
|
|
38
|
+
browser = browser_obj[:browser]
|
39
|
+
|
37
40
|
if password.nil?
|
38
41
|
password = PWN::Plugins::AuthenticationHelper.mask_password
|
39
42
|
else
|
40
43
|
password = opts[:password].to_s.scrub.strip.chomp
|
41
44
|
end
|
42
45
|
|
43
|
-
|
46
|
+
browser.goto('https://www.upwork.com/ab/account-security/login')
|
44
47
|
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
+
browser.text_field(id: 'login_username').wait_until(&:present?).set(username)
|
49
|
+
browser.text_field(id: 'login_password').wait_until(&:present?).set(password)
|
50
|
+
browser.button(text: 'Log In').click!
|
48
51
|
|
49
52
|
browser_obj
|
50
53
|
rescue StandardError => e
|
@@ -58,8 +61,10 @@ module PWN
|
|
58
61
|
|
59
62
|
public_class_method def self.logout(opts = {})
|
60
63
|
browser_obj = opts[:browser_obj]
|
61
|
-
|
62
|
-
browser_obj
|
64
|
+
|
65
|
+
browser = browser_obj[:browser]
|
66
|
+
browser.span(class: 'organization-selector').wait_until(&:present?).click!
|
67
|
+
browser.link(index: 39).wait_until(&:present?).click!
|
63
68
|
|
64
69
|
browser_obj
|
65
70
|
rescue StandardError => e
|
@@ -96,7 +101,8 @@ module PWN
|
|
96
101
|
browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)',
|
97
102
|
proxy: 'optional - scheme://proxy_host:port || tor'
|
98
103
|
)
|
99
|
-
|
104
|
+
browser = browser_obj[:browser]
|
105
|
+
puts browser.public_methods
|
100
106
|
|
101
107
|
browser_obj = #{self}.login(
|
102
108
|
browser_obj: 'required - browser_obj returned from #open method',
|
data/lib/pwn/www/youtube.rb
CHANGED
@@ -13,7 +13,8 @@ module PWN
|
|
13
13
|
public_class_method def self.open(opts = {})
|
14
14
|
browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
|
15
15
|
|
16
|
-
browser_obj
|
16
|
+
browser = browser_obj[:browser]
|
17
|
+
browser.goto('https://www.youtube.com')
|
17
18
|
|
18
19
|
browser_obj
|
19
20
|
rescue StandardError => e
|
@@ -30,8 +31,9 @@ module PWN
|
|
30
31
|
browser_obj = opts[:browser_obj]
|
31
32
|
q = opts[:q].to_s
|
32
33
|
|
33
|
-
browser_obj
|
34
|
-
|
34
|
+
browser = browser_obj[:browser]
|
35
|
+
browser.text_field(name: 'search_query').wait_until(&:present?).set(q)
|
36
|
+
browser.button(id: 'search-btn').click!
|
35
37
|
|
36
38
|
browser_obj
|
37
39
|
rescue StandardError => e
|
@@ -68,7 +70,8 @@ module PWN
|
|
68
70
|
browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)',
|
69
71
|
proxy: 'optional - scheme://proxy_host:port || tor'
|
70
72
|
)
|
71
|
-
|
73
|
+
browser = browser_obj[:browser]
|
74
|
+
puts 'browser.public_methods'
|
72
75
|
|
73
76
|
browser_obj =#{self}.search(
|
74
77
|
browser_obj: 'required - browser_obj returned from #open method',
|
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.702
|
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-05-
|
11
|
+
date: 2023-05-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -1150,8 +1150,6 @@ email:
|
|
1150
1150
|
executables:
|
1151
1151
|
- pwn
|
1152
1152
|
- pwn_android_war_dialer
|
1153
|
-
- pwn_arachni
|
1154
|
-
- pwn_arachni_rest
|
1155
1153
|
- pwn_autoinc_version
|
1156
1154
|
- pwn_aws_describe_resources
|
1157
1155
|
- pwn_burp_suite_pro_active_scan
|
@@ -1217,8 +1215,6 @@ files:
|
|
1217
1215
|
- Vagrantfile
|
1218
1216
|
- bin/pwn
|
1219
1217
|
- bin/pwn_android_war_dialer
|
1220
|
-
- bin/pwn_arachni
|
1221
|
-
- bin/pwn_arachni_rest
|
1222
1218
|
- bin/pwn_autoinc_version
|
1223
1219
|
- bin/pwn_aws_describe_resources
|
1224
1220
|
- bin/pwn_burp_suite_pro_active_scan
|