pwn 0.4.385 → 0.4.386

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: 75736869902b7c6f459eba755d600c32701d7dbc7195aaf9d38219575fbf3f03
4
- data.tar.gz: 47e399e9a118b2213dcc69273b8c21ecd9d57e2954c36cc90abb0dd9767ec1fb
3
+ metadata.gz: d9b485665b5ab58c1b6a395b6a3612ad1d9d0674d4f20a1243c7b76eb1995595
4
+ data.tar.gz: 5ff53b97446a9c0face611d86bf3e328cb424a832b9136e6d2ecb64c821a3bac
5
5
  SHA512:
6
- metadata.gz: c24ab122a7f3973a06b53593e3da3fe2ff230afcfd379f0fcfd07150ef1a5abe7f16b7158d1ff26b19b6f0b9ca04241740d0a052f02a08ab2d49ddb65bebc863
7
- data.tar.gz: e33a0711c81d27e1889038d8fbde16a564bd179d6f0f49a277f8a457c0ae57d05d37afd808b93dd4a7e715a009f59e36537ee71e41d87b79a958b0ab8cff19a2
6
+ metadata.gz: 2c8aed63d10f28f5f80326e94df77d21192db771bc8f326006c496a2968d079be1d0a445a1a8dd7f9a38fe35fe70746edbb8538e0acd74d71124aa775fe1cac0
7
+ data.tar.gz: 8d3fa53f9340dedbfc147e2a0d61520180f382b69ab41b42363b51fea34500e67f4afdf8ce6ff63162b8d2a5e1cc898a96ef845ab89fba243d5462e0a9a1c1d2
data/Gemfile CHANGED
@@ -34,7 +34,7 @@ gem 'jsonpath', '1.1.0'
34
34
  gem 'jwt', '2.3.0'
35
35
  gem 'luhn', '1.0.2'
36
36
  gem 'mail', '2.7.1'
37
- gem 'mongo', '2.17.0'
37
+ gem 'mongo', '2.17.1'
38
38
  gem 'msfrpc-client', '1.1.2'
39
39
  gem 'net-ldap', '0.17.0'
40
40
  gem 'net-openvpn', '0.8.7'
@@ -45,7 +45,7 @@ gem 'oily_png', '1.2.1'
45
45
  gem 'os', '1.1.4'
46
46
  gem 'packetfu', '1.1.13'
47
47
  gem 'pdf-reader', '2.9.2'
48
- gem 'pg', '1.3.4'
48
+ gem 'pg', '1.3.5'
49
49
  gem 'pry', '0.14.1'
50
50
  gem 'pry-doc', '1.3.0'
51
51
  gem 'rake', '13.0.6'
@@ -65,7 +65,7 @@ gem 'ruby-nmap', '0.10.0'
65
65
  gem 'ruby-saml', '1.14.0'
66
66
  gem 'rvm', '1.11.3.9'
67
67
  gem 'savon', '2.12.1'
68
- gem 'selenium-devtools', '0.99.1'
68
+ gem 'selenium-devtools', '0.100.0'
69
69
  gem 'serialport', '1.3.2'
70
70
  gem 'sinatra', '2.2.0'
71
71
  gem 'slack-ruby-client', '1.0.0'
data/README.md CHANGED
@@ -37,7 +37,7 @@ $ rvm use ruby-3.1.1@pwn
37
37
  $ rvm list gemsets
38
38
  $ gem install --verbose pwn
39
39
  $ pwn
40
- pwn[v0.4.385]:001 >>> PWN.help
40
+ pwn[v0.4.386]: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.1@pwn
52
52
  $ gem uninstall --all --executables pwn
53
53
  $ gem install --verbose pwn
54
54
  $ pwn
55
- pwn[v0.4.385]:001 >>> PWN.help
55
+ pwn[v0.4.386]:001 >>> PWN.help
56
56
  ```
57
57
 
58
58
 
@@ -346,13 +346,14 @@ module PWN
346
346
  devtools.send_cmd('Console.enable')
347
347
  devtools.send_cmd('DOM.enable')
348
348
  devtools.send_cmd('Page.enable')
349
- devtools.send_cmd('Network.enable')
350
349
  devtools.send_cmd('Log.enable')
351
350
  devtools.send_cmd('Debugger.enable')
352
351
  devtools.send_cmd('Debugger.pause')
353
352
  step = 1
354
353
  next_step = 60
355
354
  loop do
355
+ devtools.send_cmd('Console.clearMessages')
356
+ devtools.send_cmd('Log.clear')
356
357
  console_events = []
357
358
  b.driver.on_log_event(:console) { |event| console_events.push(event) }
358
359
 
@@ -388,7 +389,6 @@ module PWN
388
389
 
389
390
  devtools.send_cmd('Debugger.disable')
390
391
  devtools.send_cmd('Log.disable')
391
- devtools.send_cmd('Network.disable')
392
392
  devtools.send_cmd('Page.disable')
393
393
  devtools.send_cmd('DOM.disable')
394
394
  devtools.send_cmd('Console.disable')
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.385'
4
+ VERSION = '0.4.386'
5
5
  end
@@ -0,0 +1,135 @@
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 CoinbasePro
9
+ # Supported Method Parameters::
10
+ # browser_obj = PWN::WWW::CoinbasePro.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://pro.coinbase.com')
20
+
21
+ browser_obj
22
+ rescue StandardError => e
23
+ raise e
24
+ end
25
+
26
+ # Supported Method Parameters::
27
+ # browser_obj = PWN::WWW::CoinbasePro.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
+ mfa = opts[:mfa]
44
+
45
+ browser_obj.goto('https://pro.coinbase.com')
46
+
47
+ # In case window is really small,
48
+ # click on hamburger menu
49
+ browser_obj.div(index: 9).click if browser_obj.div(index: 9).visible?
50
+ browser_obj.span(text: 'Sign in').wait_until(&:present?).click
51
+ browser_obj.text_field(name: 'email').wait_until(&:present?).set(username)
52
+ browser_obj.text_field(name: 'password').wait_until(&:present?).set(password)
53
+ browser_obj.button(text: 'Sign In').click!
54
+
55
+ if mfa
56
+ until browser_obj.url.include?('https://pro.coinbase.com')
57
+ browser_obj.text_field(name: 'token').wait_until(&:present?).set(PWN::Plugins::AuthenticationHelper.mfa(prompt: 'enter mfa token'))
58
+ browser_obj.button(text: 'Verify').click!
59
+ sleep 3
60
+ end
61
+ print "\n"
62
+ end
63
+
64
+ browser_obj
65
+ rescue StandardError => e
66
+ raise e
67
+ end
68
+
69
+ # Supported Method Parameters::
70
+ # browser_obj = PWN::WWW::CoinbasePro.logout(
71
+ # browser_obj: 'required - browser_obj returned from #open method'
72
+ # )
73
+
74
+ public_class_method def self.logout(opts = {})
75
+ browser_obj = opts[:browser_obj]
76
+ browser_obj.goto('https://pro.coinbase.com/signout')
77
+
78
+ browser_obj
79
+ rescue StandardError => e
80
+ raise e
81
+ end
82
+
83
+ # Supported Method Parameters::
84
+ # browser_obj = PWN::WWW::CoinbasePro.close(
85
+ # browser_obj: 'required - browser_obj returned from #open method'
86
+ # )
87
+
88
+ public_class_method def self.close(opts = {})
89
+ browser_obj = opts[:browser_obj]
90
+ PWN::Plugins::TransparentBrowser.close(
91
+ browser_obj: browser_obj
92
+ )
93
+ rescue StandardError => e
94
+ raise e
95
+ end
96
+
97
+ # Author(s):: 0day Inc. <request.pentest@0dayinc.com>
98
+
99
+ public_class_method def self.authors
100
+ "AUTHOR(S):
101
+ 0day Inc. <request.pentest@0dayinc.com>
102
+ "
103
+ end
104
+
105
+ # Display Usage for this Module
106
+
107
+ public_class_method def self.help
108
+ puts "USAGE:
109
+ browser_obj = #{self}.open(
110
+ browser_type: 'optional - :firefox|:chrome|:ie|:headless (Defaults to :firefox)',
111
+ proxy: 'optional - scheme://proxy_host:port',
112
+ with_tor: 'optional - boolean (defaults to false)'
113
+ )
114
+ puts browser_obj.public_methods
115
+
116
+ browser_obj = #{self}.login(
117
+ browser_obj: 'required - browser_obj returned from #open method',
118
+ username: 'required - username',
119
+ password: 'optional - passwd (will prompt if blank),
120
+ )
121
+
122
+ browser_obj = #{self}.logout(
123
+ browser_obj: 'required - browser_obj returned from #open method'
124
+ )
125
+
126
+ #{self}.close(
127
+ browser_obj: 'required - browser_obj returned from #open method'
128
+ )
129
+
130
+ #{self}.authors
131
+ "
132
+ end
133
+ end
134
+ end
135
+ end
data/lib/pwn/www.rb CHANGED
@@ -9,6 +9,7 @@ module PWN
9
9
  autoload :Bing, 'pwn/www/bing'
10
10
  autoload :BugCrowd, 'pwn/www/bug_crowd'
11
11
  autoload :Checkip, 'pwn/www/checkip.rb'
12
+ autoload :CoinbasePro, 'pwn/www/coinbase_pro.rb'
12
13
  autoload :Duckduckgo, 'pwn/www/duckduckgo'
13
14
  autoload :Facebook, 'pwn/www/facebook'
14
15
  autoload :Google, 'pwn/www/google'
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ describe PWN::WWW::CoinbasePro do
6
+ it 'should display information for authors' do
7
+ authors_response = PWN::WWW::CoinbasePro
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::CoinbasePro
13
+ expect(help_response).to respond_to :help
14
+ end
15
+ end
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.385
4
+ version: 0.4.386
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-03-30 00:00:00.000000000 Z
11
+ date: 2022-03-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -310,14 +310,14 @@ dependencies:
310
310
  requirements:
311
311
  - - '='
312
312
  - !ruby/object:Gem::Version
313
- version: 2.17.0
313
+ version: 2.17.1
314
314
  type: :runtime
315
315
  prerelease: false
316
316
  version_requirements: !ruby/object:Gem::Requirement
317
317
  requirements:
318
318
  - - '='
319
319
  - !ruby/object:Gem::Version
320
- version: 2.17.0
320
+ version: 2.17.1
321
321
  - !ruby/object:Gem::Dependency
322
322
  name: msfrpc-client
323
323
  requirement: !ruby/object:Gem::Requirement
@@ -464,14 +464,14 @@ dependencies:
464
464
  requirements:
465
465
  - - '='
466
466
  - !ruby/object:Gem::Version
467
- version: 1.3.4
467
+ version: 1.3.5
468
468
  type: :runtime
469
469
  prerelease: false
470
470
  version_requirements: !ruby/object:Gem::Requirement
471
471
  requirements:
472
472
  - - '='
473
473
  - !ruby/object:Gem::Version
474
- version: 1.3.4
474
+ version: 1.3.5
475
475
  - !ruby/object:Gem::Dependency
476
476
  name: pry
477
477
  requirement: !ruby/object:Gem::Requirement
@@ -744,14 +744,14 @@ dependencies:
744
744
  requirements:
745
745
  - - '='
746
746
  - !ruby/object:Gem::Version
747
- version: 0.99.1
747
+ version: 0.100.0
748
748
  type: :runtime
749
749
  prerelease: false
750
750
  version_requirements: !ruby/object:Gem::Requirement
751
751
  requirements:
752
752
  - - '='
753
753
  - !ruby/object:Gem::Version
754
- version: 0.99.1
754
+ version: 0.100.0
755
755
  - !ruby/object:Gem::Dependency
756
756
  name: serialport
757
757
  requirement: !ruby/object:Gem::Requirement
@@ -1539,6 +1539,7 @@ files:
1539
1539
  - lib/pwn/www/bing.rb
1540
1540
  - lib/pwn/www/bug_crowd.rb
1541
1541
  - lib/pwn/www/checkip.rb
1542
+ - lib/pwn/www/coinbase_pro.rb
1542
1543
  - lib/pwn/www/duckduckgo.rb
1543
1544
  - lib/pwn/www/facebook.rb
1544
1545
  - lib/pwn/www/google.rb
@@ -1823,6 +1824,7 @@ files:
1823
1824
  - spec/lib/pwn/www/bing_spec.rb
1824
1825
  - spec/lib/pwn/www/bug_crowd.rb
1825
1826
  - spec/lib/pwn/www/checkip_spec.rb
1827
+ - spec/lib/pwn/www/coinbase_pro_spec.rb
1826
1828
  - spec/lib/pwn/www/duckduckgo_spec.rb
1827
1829
  - spec/lib/pwn/www/facebook_spec.rb
1828
1830
  - spec/lib/pwn/www/google_spec.rb
@@ -2083,6 +2085,7 @@ test_files:
2083
2085
  - spec/lib/pwn/www/bing_spec.rb
2084
2086
  - spec/lib/pwn/www/bug_crowd.rb
2085
2087
  - spec/lib/pwn/www/checkip_spec.rb
2088
+ - spec/lib/pwn/www/coinbase_pro_spec.rb
2086
2089
  - spec/lib/pwn/www/duckduckgo_spec.rb
2087
2090
  - spec/lib/pwn/www/facebook_spec.rb
2088
2091
  - spec/lib/pwn/www/google_spec.rb