pwn 0.4.426 → 0.4.427

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c040740347b6c2375346fb115355031199992c5f02263428cd756440fd7dbc12
4
- data.tar.gz: 3f8ca5c17fdaec78f73a144de847b5d57b69577b2b706068a48bd27479aaa60a
3
+ metadata.gz: c5f15a780e9624b97ab5c97f6893867c10e063404f58cb5ffbfd7b9a60a0a203
4
+ data.tar.gz: 1288494c82fd238638268e1449fa8871d95b3f110d2fd9c5b33c4383fcc7003b
5
5
  SHA512:
6
- metadata.gz: 27f3bdb7886d993e395827ce5ccc36d8caad53fbf369b0f62f35b50d95a5cb85af7e7c6d12f0424ab8e33d92db3a2382268269016ac928e4081239c319f7f323
7
- data.tar.gz: 1fbb164ede263fea348c824c522ae22ced698afca0ccbead95bf2a77d38e38f73b033e637ff191b56d991d4498feadd5f558584fd9b278fc3e43071c31f1a68c
6
+ metadata.gz: 05aacaf69830d42724ed1d48c510f5c5c4245a9ce8631f85c93597cf577e0be34cc8645462ab7bd36c81c7872633eca5b6c0ade1fa0d234e38fef29ddfa4bc9c
7
+ data.tar.gz: 44a6c433320b1e721408b711f09a6a39eb3eba26924547cd74ebaa2dcebfafd74d15fb18a41d557283fe9f45f19665264a10a9754565e8f4fe821b881dd9a7c5
data/Gemfile CHANGED
@@ -61,7 +61,7 @@ gem 'rspec', '3.11.0'
61
61
  gem 'rtesseract', '3.1.2'
62
62
  gem 'rubocop', '1.29.1'
63
63
  gem 'rubocop-rake', '0.6.0'
64
- gem 'rubocop-rspec', '2.10.0'
64
+ gem 'rubocop-rspec', '2.11.0'
65
65
  gem 'ruby-audio', '1.6.1'
66
66
  gem 'ruby-nmap', '0.10.0'
67
67
  gem 'ruby-saml', '1.14.0'
data/README.md CHANGED
@@ -37,7 +37,7 @@ $ rvm use ruby-3.1.2@pwn
37
37
  $ rvm list gemsets
38
38
  $ gem install --verbose pwn
39
39
  $ pwn
40
- pwn[v0.4.426]:001 >>> PWN.help
40
+ pwn[v0.4.427]: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.2@pwn
52
52
  $ gem uninstall --all --executables pwn
53
53
  $ gem install --verbose pwn
54
54
  $ pwn
55
- pwn[v0.4.426]:001 >>> PWN.help
55
+ pwn[v0.4.427]:001 >>> PWN.help
56
56
  ```
57
57
 
58
58
 
@@ -15,8 +15,16 @@ OptionParser.new do |options|
15
15
  opts[:yaml_config] = c
16
16
  end
17
17
 
18
- options.on('-nVALUE', '--scan-template-name=VALUE', '<Optional - Name of Canned Scan Template to Use for Scan Creation (Defaults to "Basic Network Scan">') do |n|
19
- opts[:scan_template_name] = n
18
+ options.on('-nNAME', '--scan-name=NAME', '<Required - YAML Name of Scan to Create>') do |n|
19
+ opts[:scan_name] = n
20
+ end
21
+
22
+ options.on('-pPOLICY', '--policy-name=POLICY', '<Optional - Policy to Use to Create the Scan (Defaults to "")>') do |p|
23
+ opts[:policy_name] = p
24
+ end
25
+
26
+ options.on('-tVALUE', '--scan-template=VALUE', '<Optional - Canned Scan Template to Use for Scan Creation (Defaults to "Basic Network Scan">') do |t|
27
+ opts[:scan_template] = t
20
28
  end
21
29
  end.parse!
22
30
 
@@ -38,26 +46,35 @@ begin
38
46
  access_key = yaml[:access_key]
39
47
  secret_key = yaml[:secret_key]
40
48
 
41
- scan_template_name = opts[:scan_template_name]
42
- scan_template_name ||= 'Basic Network Scan'
49
+ scan_name = opts[:scan_name]
50
+
51
+ policy_name = opts[:policy_name]
52
+ policy_name ||= ''
53
+
54
+ scan_template = opts[:scan_template]
55
+ scan_template ||= 'Basic Network Scan'
43
56
 
44
57
  nessus_obj = PWN::Plugins::NessusCloud.login(
45
58
  access_key: access_key,
46
59
  secret_key: secret_key
47
60
  )
48
61
 
62
+ policy_list = PWN::Plugins::NessusCloud.get_policies(
63
+ nessus_obj: nessus_obj
64
+ )
65
+ puts policy_list.inspect
66
+
49
67
  scan_template_list = PWN::Plugins::NessusCloud.get_canned_scan_templates(
50
68
  nessus_obj: nessus_obj
51
69
  )
52
70
 
53
- puts scan_template_list.inspect
54
71
  selected_scan_template = scan_template_list[:templates].select do |scan_template|
55
- scan_template[:title] == scan_template_name
72
+ scan_template[:title] == scan_template
56
73
  end
57
- puts selected_scan_template.inspect
58
74
 
59
75
  scan_template_id = selected_scan_template.first[:uuid]
60
- puts scan_template_id
76
+
77
+
61
78
  rescue Interrupt
62
79
  puts 'CTRL+C detected...goodbye.'
63
80
  rescue StandardError => e
@@ -110,6 +110,42 @@ module PWN
110
110
  raise e
111
111
  end
112
112
 
113
+ # Supported Method Parameters::
114
+ # PWN::Plugins::NessusCloud.get_policies(
115
+ # nessus_obj: 'required - nessus_obj returned from #login method'
116
+ # )
117
+
118
+ public_class_method def self.get_policies(opts = {})
119
+ nessus_obj = opts[:nessus_obj]
120
+
121
+ scan_templates_resp = nessus_cloud_rest_call(
122
+ nessus_obj: nessus_obj,
123
+ rest_call: 'policies'
124
+ ).body
125
+
126
+ JSON.parse(scan_templates_resp, symbolize_names: true)
127
+ rescue StandardError, SystemExit, Interrupt => e
128
+ raise e
129
+ end
130
+
131
+ # Supported Method Parameters::
132
+ # PWN::Plugins::NessusCloud.get_policies(
133
+ # nessus_obj: 'required - nessus_obj returned from #login method'
134
+ # )
135
+
136
+ public_class_method def self.get_folders(opts = {})
137
+ nessus_obj = opts[:nessus_obj]
138
+
139
+ scan_templates_resp = nessus_cloud_rest_call(
140
+ nessus_obj: nessus_obj,
141
+ rest_call: 'policies'
142
+ ).body
143
+
144
+ JSON.parse(scan_templates_resp, symbolize_names: true)
145
+ rescue StandardError, SystemExit, Interrupt => e
146
+ raise e
147
+ end
148
+
113
149
  # Supported Method Parameters::
114
150
  # PWN::Plugins::NessusCloud.get_scans(
115
151
  # nessus_obj: 'required - nessus_obj returned from #login method'
@@ -305,6 +341,14 @@ module PWN
305
341
  nessus_obj: 'required - nessus_obj returned from #login method'
306
342
  )
307
343
 
344
+ #{self}.get_policies(
345
+ nessus_obj: 'required - nessus_obj returned from #login method'
346
+ )
347
+
348
+ #{self}.get_folders(
349
+ nessus_obj: 'required - nessus_obj returned from #login method'
350
+ )
351
+
308
352
  #{self}.get_scans(
309
353
  nessus_obj: 'required - nessus_obj returned from #login method'
310
354
  )
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.426'
4
+ VERSION = '0.4.427'
5
5
  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.426
4
+ version: 0.4.427
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-05-17 00:00:00.000000000 Z
11
+ date: 2022-05-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -702,14 +702,14 @@ dependencies:
702
702
  requirements:
703
703
  - - '='
704
704
  - !ruby/object:Gem::Version
705
- version: 2.10.0
705
+ version: 2.11.0
706
706
  type: :runtime
707
707
  prerelease: false
708
708
  version_requirements: !ruby/object:Gem::Requirement
709
709
  requirements:
710
710
  - - '='
711
711
  - !ruby/object:Gem::Version
712
- version: 2.10.0
712
+ version: 2.11.0
713
713
  - !ruby/object:Gem::Dependency
714
714
  name: ruby-audio
715
715
  requirement: !ruby/object:Gem::Requirement