pwn 0.4.376 → 0.4.380

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: 44816c0131b0b811c384aab18addb9ae4912c36818821c3f5553bc63380f1e04
4
- data.tar.gz: 6ea9f0b5f128cb8ed416a0bf11e5339b8da7fef8aafaaf9939f17a27d2575bff
3
+ metadata.gz: 436c3b9f3cf8a42c77689b35c419040e57d2679b741e67c67a5c059385f90525
4
+ data.tar.gz: 63a6f54c84a7843210a946a9bb7f58ccb11aec080a392b720768683246b37d40
5
5
  SHA512:
6
- metadata.gz: 749a1163282ddc924c2b66209f4a37c53f6f26e50e4b398b187a11023470b71b283c5f31d4fc13e4db4755633e268c9d8a3a0c70f025b5fe35dfc2163c0f1b0a
7
- data.tar.gz: 94c9434d68e360851884a6476b4a36cbd85d62b3773eb57be239b05ebb5bb9c232df1fb25db298c08f273624b637b419cf881dce0de62e90fceed5ef0c6d4ef4
6
+ metadata.gz: 2380842a421a513281358038c6d2265c96c70145af30ada7c42cd7524ca0d8f36b5b23a5ef5b67f5a802e179f5b9d1511020b258d6414e4a80f5b0f9f492bd2c
7
+ data.tar.gz: 148835d469163b4a574bd60f7a2c494cb880ecebd6a91b53078091ded9b2f9e6b7b437d30ac5baf78af6d3056ffc1babc56120befc07145a5fa0b02407771c5d
data/README.md CHANGED
@@ -36,7 +36,7 @@ $ rvm list gemsets
36
36
  $ rvm use ruby-<VERSION>@pwn
37
37
  $ gem install --verbose pwn
38
38
  $ pwn
39
- pwn[v0.4.376]:001 >>> PWN.help
39
+ pwn[v0.4.380]:001 >>> PWN.help
40
40
  ```
41
41
 
42
42
  [![Installing the pwn Security Automation Framework](https://raw.githubusercontent.com/0dayInc/pwn/master/documentation/pwn_install.png)](https://youtu.be/G7iLUY4FzsI)
@@ -51,7 +51,7 @@ $ rvm use ruby-<VERSION>@pwn
51
51
  $ gem uninstall --all --executables pwn
52
52
  $ gem install --verbose pwn
53
53
  $ pwn
54
- pwn[v0.4.376]:001 >>> PWN.help
54
+ pwn[v0.4.380]:001 >>> PWN.help
55
55
  ```
56
56
 
57
57
 
@@ -315,6 +315,9 @@ module PWN
315
315
  with_devtools: 'optional - boolean (defaults to false)'
316
316
  )
317
317
  puts browser_obj1.public_methods
318
+ * Only works w/ Chrome
319
+ * All DevTools Commands can be found here:
320
+ * https://chromedevtools.github.io/devtools-protocol/
318
321
  devtools = browser_obj1.driver.devtools
319
322
  puts devtools.public_methods
320
323
  puts devtools.instance_variables
@@ -323,8 +326,10 @@ module PWN
323
326
  devtools.send_cmd('Tracing.requestMemoryDump')
324
327
  devtools.send_cmd('Tracing.end')
325
328
  puts devtools.instance_variable_get('@messages')
326
- * All DevTools Commands can be found here:
327
- https://chromedevtools.github.io/devtools-protocol/
329
+ devtools.send_cmd('Network.enable')
330
+ last_ws_resp = devtools.instance_variable_get('@messages').last if devtools.instance_variable_get('@messages')['method'] == 'Network.webSocketFrameReceived'
331
+ puts last_ws_resp
332
+ devtools.send_cmd('Network.disable')
328
333
 
329
334
  browser_obj1 = #{self}.linkout(
330
335
  browser_obj: 'required - browser_obj returned from #open method)'
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.376'
4
+ VERSION = '0.4.380'
5
5
  end
@@ -14,38 +14,7 @@ module PWN
14
14
  # )
15
15
 
16
16
  public_class_method def self.open(opts = {})
17
- browser_type = if opts[:browser_type].nil?
18
- :firefox
19
- else
20
- opts[:browser_type]
21
- end
22
-
23
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
24
-
25
- with_tor = if opts[:with_tor]
26
- true
27
- else
28
- false
29
- end
30
-
31
- if proxy
32
- if with_tor
33
- browser_obj = PWN::Plugins::TransparentBrowser.open(
34
- browser_type: browser_type,
35
- proxy: proxy,
36
- with_tor: with_tor
37
- )
38
- else
39
- browser_obj = PWN::Plugins::TransparentBrowser.open(
40
- browser_type: browser_type,
41
- proxy: proxy
42
- )
43
- end
44
- else
45
- browser_obj = PWN::Plugins::TransparentBrowser.open(
46
- browser_type: browser_type
47
- )
48
- end
17
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
49
18
 
50
19
  browser_obj.goto('https://app.cobalt.io')
51
20
 
data/lib/pwn/www/bing.rb CHANGED
@@ -12,38 +12,8 @@ module PWN
12
12
  # )
13
13
 
14
14
  public_class_method def self.open(opts = {})
15
- browser_type = if opts[:browser_type].nil?
16
- :firefox
17
- else
18
- opts[:browser_type]
19
- end
20
-
21
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
22
-
23
- with_tor = if opts[:with_tor]
24
- true
25
- else
26
- false
27
- end
28
-
29
- if proxy
30
- if with_tor
31
- browser_obj = PWN::Plugins::TransparentBrowser.open(
32
- browser_type: browser_type,
33
- proxy: proxy,
34
- with_tor: with_tor
35
- )
36
- else
37
- browser_obj = PWN::Plugins::TransparentBrowser.open(
38
- browser_type: browser_type,
39
- proxy: proxy
40
- )
41
- end
42
- else
43
- browser_obj = PWN::Plugins::TransparentBrowser.open(
44
- browser_type: browser_type
45
- )
46
- end
15
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
16
+
47
17
  browser_obj.goto('https://www.bing.com')
48
18
 
49
19
  browser_obj
@@ -14,38 +14,7 @@ module PWN
14
14
  # )
15
15
 
16
16
  public_class_method def self.open(opts = {})
17
- browser_type = if opts[:browser_type].nil?
18
- :firefox
19
- else
20
- opts[:browser_type]
21
- end
22
-
23
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
24
-
25
- with_tor = if opts[:with_tor]
26
- true
27
- else
28
- false
29
- end
30
-
31
- if proxy
32
- if with_tor
33
- browser_obj = PWN::Plugins::TransparentBrowser.open(
34
- browser_type: browser_type,
35
- proxy: proxy,
36
- with_tor: with_tor
37
- )
38
- else
39
- browser_obj = PWN::Plugins::TransparentBrowser.open(
40
- browser_type: browser_type,
41
- proxy: proxy
42
- )
43
- end
44
- else
45
- browser_obj = PWN::Plugins::TransparentBrowser.open(
46
- browser_type: browser_type
47
- )
48
- end
17
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
49
18
 
50
19
  browser_obj.goto('https://bugcrowd.com')
51
20
 
@@ -15,38 +15,8 @@ module PWN
15
15
  # )
16
16
 
17
17
  public_class_method def self.open(opts = {})
18
- browser_type = if opts[:browser_type].nil?
19
- :firefox
20
- else
21
- opts[:browser_type]
22
- end
18
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
23
19
 
24
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
25
-
26
- with_tor = if opts[:with_tor]
27
- true
28
- else
29
- false
30
- end
31
-
32
- if proxy
33
- if with_tor
34
- browser_obj = PWN::Plugins::TransparentBrowser.open(
35
- browser_type: browser_type,
36
- proxy: proxy,
37
- with_tor: with_tor
38
- )
39
- else
40
- browser_obj = PWN::Plugins::TransparentBrowser.open(
41
- browser_type: browser_type,
42
- proxy: proxy
43
- )
44
- end
45
- else
46
- browser_obj = PWN::Plugins::TransparentBrowser.open(
47
- browser_type: browser_type
48
- )
49
- end
50
20
  browser_obj.goto('http://checkip.amazonaws.com')
51
21
  public_ip_address = Nokogiri::HTML.parse(browser_obj.html).xpath('//pre').text.chomp
52
22
  puts "PUBLIC IP: #{public_ip_address}"
@@ -12,38 +12,8 @@ module PWN
12
12
  # )
13
13
 
14
14
  public_class_method def self.open(opts = {})
15
- browser_type = if opts[:browser_type].nil?
16
- :firefox
17
- else
18
- opts[:browser_type]
19
- end
20
-
21
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
22
-
23
- with_tor = if opts[:with_tor]
24
- true
25
- else
26
- false
27
- end
28
-
29
- if proxy
30
- if with_tor
31
- browser_obj = PWN::Plugins::TransparentBrowser.open(
32
- browser_type: browser_type,
33
- proxy: proxy,
34
- with_tor: true
35
- )
36
- else
37
- browser_obj = PWN::Plugins::TransparentBrowser.open(
38
- browser_type: browser_type,
39
- proxy: proxy
40
- )
41
- end
42
- else
43
- browser_obj = PWN::Plugins::TransparentBrowser.open(
44
- browser_type: browser_type
45
- )
46
- end
15
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
16
+
47
17
  browser_obj.goto('https://duckduckgo.com')
48
18
 
49
19
  browser_obj
@@ -14,38 +14,7 @@ module PWN
14
14
  # )
15
15
 
16
16
  public_class_method def self.open(opts = {})
17
- browser_type = if opts[:browser_type].nil?
18
- :firefox
19
- else
20
- opts[:browser_type]
21
- end
22
-
23
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
24
-
25
- with_tor = if opts[:with_tor]
26
- true
27
- else
28
- false
29
- end
30
-
31
- if proxy
32
- if with_tor
33
- browser_obj = PWN::Plugins::TransparentBrowser.open(
34
- browser_type: browser_type,
35
- proxy: proxy,
36
- with_tor: with_tor
37
- )
38
- else
39
- browser_obj = PWN::Plugins::TransparentBrowser.open(
40
- browser_type: browser_type,
41
- proxy: proxy
42
- )
43
- end
44
- else
45
- browser_obj = PWN::Plugins::TransparentBrowser.open(
46
- browser_type: browser_type
47
- )
48
- end
17
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
49
18
 
50
19
  browser_obj.goto('https://www.facebook.com')
51
20
 
@@ -12,38 +12,7 @@ module PWN
12
12
  # )
13
13
 
14
14
  public_class_method def self.open(opts = {})
15
- browser_type = if opts[:browser_type].nil?
16
- :firefox
17
- else
18
- opts[:browser_type]
19
- end
20
-
21
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
22
-
23
- with_tor = if opts[:with_tor]
24
- true
25
- else
26
- false
27
- end
28
-
29
- if proxy
30
- if with_tor
31
- browser_obj = PWN::Plugins::TransparentBrowser.open(
32
- browser_type: browser_type,
33
- proxy: proxy,
34
- with_tor: with_tor
35
- )
36
- else
37
- browser_obj = PWN::Plugins::TransparentBrowser.open(
38
- browser_type: browser_type,
39
- proxy: proxy
40
- )
41
- end
42
- else
43
- browser_obj = PWN::Plugins::TransparentBrowser.open(
44
- browser_type: browser_type
45
- )
46
- end
15
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
47
16
 
48
17
  browser_obj.goto('https://www.google.com')
49
18
 
@@ -14,38 +14,7 @@ module PWN
14
14
  # )
15
15
 
16
16
  public_class_method def self.open(opts = {})
17
- browser_type = if opts[:browser_type].nil?
18
- :firefox
19
- else
20
- opts[:browser_type]
21
- end
22
-
23
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
24
-
25
- with_tor = if opts[:with_tor]
26
- true
27
- else
28
- false
29
- end
30
-
31
- if proxy
32
- if with_tor
33
- browser_obj = PWN::Plugins::TransparentBrowser.open(
34
- browser_type: browser_type,
35
- proxy: proxy,
36
- with_tor: with_tor
37
- )
38
- else
39
- browser_obj = PWN::Plugins::TransparentBrowser.open(
40
- browser_type: browser_type,
41
- proxy: proxy
42
- )
43
- end
44
- else
45
- browser_obj = PWN::Plugins::TransparentBrowser.open(
46
- browser_type: browser_type
47
- )
48
- end
17
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
49
18
 
50
19
  browser_obj.goto('https://www.hackerone.com')
51
20
 
@@ -14,38 +14,7 @@ module PWN
14
14
  # )
15
15
 
16
16
  public_class_method def self.open(opts = {})
17
- browser_type = if opts[:browser_type].nil?
18
- :firefox
19
- else
20
- opts[:browser_type]
21
- end
22
-
23
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
24
-
25
- with_tor = if opts[:with_tor]
26
- true
27
- else
28
- false
29
- end
30
-
31
- if proxy
32
- if with_tor
33
- browser_obj = PWN::Plugins::TransparentBrowser.open(
34
- browser_type: browser_type,
35
- proxy: proxy,
36
- with_tor: with_tor
37
- )
38
- else
39
- browser_obj = PWN::Plugins::TransparentBrowser.open(
40
- browser_type: browser_type,
41
- proxy: proxy
42
- )
43
- end
44
- else
45
- browser_obj = PWN::Plugins::TransparentBrowser.open(
46
- browser_type: browser_type
47
- )
48
- end
17
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
49
18
 
50
19
  browser_obj.goto('https://www.linkedin.com')
51
20
 
@@ -14,38 +14,7 @@ module PWN
14
14
  # )
15
15
 
16
16
  public_class_method def self.open(opts = {})
17
- browser_type = if opts[:browser_type].nil?
18
- :firefox
19
- else
20
- opts[:browser_type]
21
- end
22
-
23
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
24
-
25
- with_tor = if opts[:with_tor]
26
- true
27
- else
28
- false
29
- end
30
-
31
- if proxy
32
- if with_tor
33
- browser_obj = PWN::Plugins::TransparentBrowser.open(
34
- browser_type: browser_type,
35
- proxy: proxy,
36
- with_tor: with_tor
37
- )
38
- else
39
- browser_obj = PWN::Plugins::TransparentBrowser.open(
40
- browser_type: browser_type,
41
- proxy: proxy
42
- )
43
- end
44
- else
45
- browser_obj = PWN::Plugins::TransparentBrowser.open(
46
- browser_type: browser_type
47
- )
48
- end
17
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
49
18
 
50
19
  browser_obj.goto('https://www.pandora.com')
51
20
 
@@ -12,38 +12,8 @@ module PWN
12
12
  # )
13
13
 
14
14
  public_class_method def self.open(opts = {})
15
- browser_type = if opts[:browser_type].nil?
16
- :firefox
17
- else
18
- opts[:browser_type]
19
- end
20
-
21
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
22
-
23
- with_tor = if opts[:with_tor]
24
- true
25
- else
26
- false
27
- end
28
-
29
- if proxy
30
- if with_tor
31
- browser_obj = PWN::Plugins::TransparentBrowser.open(
32
- browser_type: browser_type,
33
- proxy: proxy,
34
- with_tor: with_tor
35
- )
36
- else
37
- browser_obj = PWN::Plugins::TransparentBrowser.open(
38
- browser_type: browser_type,
39
- proxy: proxy
40
- )
41
- end
42
- else
43
- browser_obj = PWN::Plugins::TransparentBrowser.open(
44
- browser_type: browser_type
45
- )
46
- end
15
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
16
+
47
17
  browser_obj.goto('https://pastebin.com')
48
18
 
49
19
  browser_obj
@@ -14,38 +14,7 @@ module PWN
14
14
  # )
15
15
 
16
16
  public_class_method def self.open(opts = {})
17
- browser_type = if opts[:browser_type].nil?
18
- :firefox
19
- else
20
- opts[:browser_type]
21
- end
22
-
23
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
24
-
25
- with_tor = if opts[:with_tor]
26
- true
27
- else
28
- false
29
- end
30
-
31
- if proxy
32
- if with_tor
33
- browser_obj = PWN::Plugins::TransparentBrowser.open(
34
- browser_type: browser_type,
35
- proxy: proxy,
36
- with_tor: with_tor
37
- )
38
- else
39
- browser_obj = PWN::Plugins::TransparentBrowser.open(
40
- browser_type: browser_type,
41
- proxy: proxy
42
- )
43
- end
44
- else
45
- browser_obj = PWN::Plugins::TransparentBrowser.open(
46
- browser_type: browser_type
47
- )
48
- end
17
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
49
18
 
50
19
  browser_obj.goto('https://www.paypal.com')
51
20
 
@@ -14,38 +14,7 @@ module PWN
14
14
  # )
15
15
 
16
16
  public_class_method def self.open(opts = {})
17
- browser_type = if opts[:browser_type].nil?
18
- :firefox
19
- else
20
- opts[:browser_type]
21
- end
22
-
23
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
24
-
25
- with_tor = if opts[:with_tor]
26
- true
27
- else
28
- false
29
- end
30
-
31
- if proxy
32
- if with_tor
33
- browser_obj = PWN::Plugins::TransparentBrowser.open(
34
- browser_type: browser_type,
35
- proxy: proxy,
36
- with_tor: with_tor
37
- )
38
- else
39
- browser_obj = PWN::Plugins::TransparentBrowser.open(
40
- browser_type: browser_type,
41
- proxy: proxy
42
- )
43
- end
44
- else
45
- browser_obj = PWN::Plugins::TransparentBrowser.open(
46
- browser_type: browser_type
47
- )
48
- end
17
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
49
18
 
50
19
  browser_obj.goto('https://www.synack.com')
51
20
 
data/lib/pwn/www/torch.rb CHANGED
@@ -12,40 +12,8 @@ module PWN
12
12
  # )
13
13
 
14
14
  public_class_method def self.open(opts = {})
15
- browser_type = if opts[:browser_type].nil?
16
- :firefox
17
- else
18
- opts[:browser_type]
19
- end
20
-
21
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
22
-
23
- with_tor = if opts[:with_tor]
24
- true
25
- else
26
- false
27
- end
28
-
29
- with_tor = opts[:with_tor].nil?
30
-
31
- if proxy
32
- if with_tor
33
- browser_obj = PWN::Plugins::TransparentBrowser.open(
34
- browser_type: browser_type,
35
- proxy: proxy,
36
- with_tor: true
37
- )
38
- else
39
- browser_obj = PWN::Plugins::TransparentBrowser.open(
40
- browser_type: browser_type,
41
- proxy: proxy
42
- )
43
- end
44
- else
45
- browser_obj = PWN::Plugins::TransparentBrowser.open(
46
- browser_type: browser_type
47
- )
48
- end
15
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
16
+
49
17
  browser_obj.goto('http://www.torchtorsearch.com')
50
18
 
51
19
  browser_obj
@@ -0,0 +1,125 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'yaml'
4
+
5
+ module PWN
6
+ module WWW
7
+ # This plugin supports tradingview.com actions.
8
+ module TradingView
9
+ # Supported Method Parameters::
10
+ # browser_obj = PWN::WWW::TradingView.open(
11
+ # browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)',
12
+ # proxy: 'optional - scheme://proxy_host:port',
13
+ # with_tor: 'optional - boolean (defaults to false)'
14
+ # )
15
+
16
+ public_class_method def self.open(opts = {})
17
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
18
+
19
+ browser_obj.goto('https://tradingview.com')
20
+
21
+ browser_obj
22
+ rescue StandardError => e
23
+ raise e
24
+ end
25
+
26
+ # Supported Method Parameters::
27
+ # browser_obj = PWN::WWW::TradingView.login(
28
+ # browser_obj: 'required - browser_obj returned from #open method',
29
+ # username: 'required - username',
30
+ # password: 'optional - passwd (will prompt if blank)'
31
+ # )
32
+
33
+ public_class_method def self.login(opts = {})
34
+ browser_obj = opts[:browser_obj]
35
+ username = opts[:username].to_s.scrub.strip.chomp
36
+ password = opts[:password]
37
+
38
+ if password.nil?
39
+ password = PWN::Plugins::AuthenticationHelper.mask_password
40
+ else
41
+ password = opts[:password].to_s.scrub.strip.chomp
42
+ end
43
+
44
+ browser_obj.goto('https://tradingview.com')
45
+
46
+ browser_obj.button(index: 3).wait_until(&:present?).click
47
+ browser_obj.div(text: 'Sign in').wait_until(&:present?).click
48
+ browser_obj.span(text: 'Email').wait_until(&:present?).click
49
+ browser_obj.text_field(name: 'username').wait_until(&:present?).set(username)
50
+ browser_obj.text_field(name: 'password').wait_until(&:present?).set(password)
51
+ browser_obj.button(text: 'Sign in').click!
52
+
53
+ browser_obj
54
+ rescue StandardError => e
55
+ raise e
56
+ end
57
+
58
+ # Supported Method Parameters::
59
+ # browser_obj = PWN::WWW::TradingView.logout(
60
+ # browser_obj: 'required - browser_obj returned from #open method'
61
+ # )
62
+
63
+ public_class_method def self.logout(opts = {})
64
+ browser_obj = opts[:browser_obj]
65
+ browser_obj.button(index: 4).wait_until(&:present?).click
66
+ browser_obj.div(text: 'Sign Out').wait_until(&:present?).click!
67
+
68
+ browser_obj
69
+ rescue StandardError => e
70
+ raise e
71
+ end
72
+
73
+ # Supported Method Parameters::
74
+ # browser_obj = PWN::WWW::TradingView.close(
75
+ # browser_obj: 'required - browser_obj returned from #open method'
76
+ # )
77
+
78
+ public_class_method def self.close(opts = {})
79
+ browser_obj = opts[:browser_obj]
80
+ PWN::Plugins::TransparentBrowser.close(
81
+ browser_obj: browser_obj
82
+ )
83
+ rescue StandardError => e
84
+ raise e
85
+ end
86
+
87
+ # Author(s):: 0day Inc. <request.pentest@0dayinc.com>
88
+
89
+ public_class_method def self.authors
90
+ "AUTHOR(S):
91
+ 0day Inc. <request.pentest@0dayinc.com>
92
+ "
93
+ end
94
+
95
+ # Display Usage for this Module
96
+
97
+ public_class_method def self.help
98
+ puts "USAGE:
99
+ browser_obj = #{self}.open(
100
+ browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)',
101
+ proxy: 'optional - scheme://proxy_host:port',
102
+ with_tor: 'optional - boolean (defaults to false)'
103
+ )
104
+ puts browser_obj.public_methods
105
+
106
+ browser_obj = #{self}.login(
107
+ browser_obj: 'required - browser_obj returned from #open method',
108
+ username: 'required - username',
109
+ password: 'optional - passwd (will prompt if blank),
110
+ )
111
+
112
+ browser_obj = #{self}.logout(
113
+ browser_obj: 'required - browser_obj returned from #open method'
114
+ )
115
+
116
+ #{self}.close(
117
+ browser_obj: 'required - browser_obj returned from #open method'
118
+ )
119
+
120
+ #{self}.authors
121
+ "
122
+ end
123
+ end
124
+ end
125
+ end
@@ -14,38 +14,7 @@ module PWN
14
14
  # )
15
15
 
16
16
  public_class_method def self.open(opts = {})
17
- browser_type = if opts[:browser_type].nil?
18
- :firefox
19
- else
20
- opts[:browser_type]
21
- end
22
-
23
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
24
-
25
- with_tor = if opts[:with_tor]
26
- true
27
- else
28
- false
29
- end
30
-
31
- if proxy
32
- if with_tor
33
- browser_obj = PWN::Plugins::TransparentBrowser.open(
34
- browser_type: browser_type,
35
- proxy: proxy,
36
- with_tor: with_tor
37
- )
38
- else
39
- browser_obj = PWN::Plugins::TransparentBrowser.open(
40
- browser_type: browser_type,
41
- proxy: proxy
42
- )
43
- end
44
- else
45
- browser_obj = PWN::Plugins::TransparentBrowser.open(
46
- browser_type: browser_type
47
- )
48
- end
17
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
49
18
 
50
19
  browser_obj.goto('https://twitter.com')
51
20
 
data/lib/pwn/www/uber.rb CHANGED
@@ -14,38 +14,7 @@ module PWN
14
14
  # )
15
15
 
16
16
  public_class_method def self.open(opts = {})
17
- browser_type = if opts[:browser_type].nil?
18
- :firefox
19
- else
20
- opts[:browser_type]
21
- end
22
-
23
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
24
-
25
- with_tor = if opts[:with_tor]
26
- true
27
- else
28
- false
29
- end
30
-
31
- if proxy
32
- if with_tor
33
- browser_obj = PWN::Plugins::TransparentBrowser.open(
34
- browser_type: browser_type,
35
- proxy: proxy,
36
- with_tor: with_tor
37
- )
38
- else
39
- browser_obj = PWN::Plugins::TransparentBrowser.open(
40
- browser_type: browser_type,
41
- proxy: proxy
42
- )
43
- end
44
- else
45
- browser_obj = PWN::Plugins::TransparentBrowser.open(
46
- browser_type: browser_type
47
- )
48
- end
17
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
49
18
 
50
19
  browser_obj.goto('https://www.uber.com')
51
20
 
@@ -14,38 +14,7 @@ module PWN
14
14
  # )
15
15
 
16
16
  public_class_method def self.open(opts = {})
17
- browser_type = if opts[:browser_type].nil?
18
- :firefox
19
- else
20
- opts[:browser_type]
21
- end
22
-
23
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
24
-
25
- with_tor = if opts[:with_tor]
26
- true
27
- else
28
- false
29
- end
30
-
31
- if proxy
32
- if with_tor
33
- browser_obj = PWN::Plugins::TransparentBrowser.open(
34
- browser_type: browser_type,
35
- proxy: proxy,
36
- with_tor: with_tor
37
- )
38
- else
39
- browser_obj = PWN::Plugins::TransparentBrowser.open(
40
- browser_type: browser_type,
41
- proxy: proxy
42
- )
43
- end
44
- else
45
- browser_obj = PWN::Plugins::TransparentBrowser.open(
46
- browser_type: browser_type
47
- )
48
- end
17
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
49
18
 
50
19
  browser_obj.goto('https://www.upwork.com')
51
20
 
@@ -12,38 +12,8 @@ module PWN
12
12
  # )
13
13
 
14
14
  public_class_method def self.open(opts = {})
15
- browser_type = if opts[:browser_type].nil?
16
- :firefox
17
- else
18
- opts[:browser_type]
19
- end
20
-
21
- proxy = opts[:proxy].to_s unless opts[:proxy].nil?
22
-
23
- with_tor = if opts[:with_tor]
24
- true
25
- else
26
- false
27
- end
28
-
29
- if proxy
30
- if with_tor
31
- browser_obj = PWN::Plugins::TransparentBrowser.open(
32
- browser_type: browser_type,
33
- proxy: proxy,
34
- with_tor: with_tor
35
- )
36
- else
37
- browser_obj = PWN::Plugins::TransparentBrowser.open(
38
- browser_type: browser_type,
39
- proxy: proxy
40
- )
41
- end
42
- else
43
- browser_obj = PWN::Plugins::TransparentBrowser.open(
44
- browser_type: browser_type
45
- )
46
- end
15
+ browser_obj = PWN::Plugins::TransparentBrowser.open(opts)
16
+
47
17
  browser_obj.goto('https://www.youtube.com')
48
18
 
49
19
  browser_obj
data/lib/pwn/www.rb CHANGED
@@ -19,6 +19,7 @@ module PWN
19
19
  autoload :Paypal, 'pwn/www/paypal'
20
20
  autoload :Synack, 'pwn/www/synack'
21
21
  autoload :Torch, 'pwn/www/torch'
22
+ autoload :TradingView, 'pwn/www/trading_view'
22
23
  autoload :Twitter, 'pwn/www/twitter'
23
24
  autoload :Uber, 'pwn/www/uber'
24
25
  autoload :Upwork, 'pwn/www/upwork'
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ describe PWN::WWW::TradingView do
6
+ it 'should display information for authors' do
7
+ authors_response = PWN::WWW::TradingView
8
+ expect(authors_response).to respond_to :authors
9
+ end
10
+
11
+ it 'should display information for existing help method' do
12
+ help_response = PWN::WWW::TradingView
13
+ expect(help_response).to respond_to :help
14
+ end
15
+ 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.376
4
+ version: 0.4.380
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.
@@ -1549,6 +1549,7 @@ files:
1549
1549
  - lib/pwn/www/paypal.rb
1550
1550
  - lib/pwn/www/synack.rb
1551
1551
  - lib/pwn/www/torch.rb
1552
+ - lib/pwn/www/trading_view.rb
1552
1553
  - lib/pwn/www/twitter.rb
1553
1554
  - lib/pwn/www/uber.rb
1554
1555
  - lib/pwn/www/upwork.rb
@@ -1832,6 +1833,7 @@ files:
1832
1833
  - spec/lib/pwn/www/paypal_spec.rb
1833
1834
  - spec/lib/pwn/www/synack_spec.rb
1834
1835
  - spec/lib/pwn/www/torch_spec.rb
1836
+ - spec/lib/pwn/www/trading_view_spec.rb
1835
1837
  - spec/lib/pwn/www/twitter_spec.rb
1836
1838
  - spec/lib/pwn/www/uber_spec.rb
1837
1839
  - spec/lib/pwn/www/upwork_spec.rb
@@ -2091,6 +2093,7 @@ test_files:
2091
2093
  - spec/lib/pwn/www/paypal_spec.rb
2092
2094
  - spec/lib/pwn/www/synack_spec.rb
2093
2095
  - spec/lib/pwn/www/torch_spec.rb
2096
+ - spec/lib/pwn/www/trading_view_spec.rb
2094
2097
  - spec/lib/pwn/www/twitter_spec.rb
2095
2098
  - spec/lib/pwn/www/uber_spec.rb
2096
2099
  - spec/lib/pwn/www/upwork_spec.rb