nexposecli 0.3.7 → 0.3.8

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
  SHA1:
3
- metadata.gz: 05c2cc0355b4dc4ede9179fc311ccd917adfce18
4
- data.tar.gz: b8d3ec7afc4ca6ef6bd6507929e49799ac228f8b
3
+ metadata.gz: 20cc0d58f0e199196e4a392b772de131da8b835b
4
+ data.tar.gz: 26df3b18e96f0eeaea0043d650caa8821718b908
5
5
  SHA512:
6
- metadata.gz: cfd29b590e995b68b35f9a092c784878b126412b4985b03c3c36d87924bd935bd554b03e0b05d1ddf716dfb255046528f7f5dc313b3c6a8d0ad4ed17e821ed8c
7
- data.tar.gz: 9456bc9dc1a979c8ceb40518bf1d1c83fe2a5f8fca1b548e425c4e16e8149457cf74976c33ff710eae51efee4f36d8407d222aa62107955956d73870483bea74
6
+ metadata.gz: 2502c699fc34efcb63d6f2bc46af06a3a8dddc64f0e85046981ce74ea4ed5a41f99d26a278ffe5bea62734842c5294aa5ed5e25bfec17e5c3342913f3ad1c20b
7
+ data.tar.gz: 3e36ea32e913443a2ee291b90a9a17f280734da0c586360f1b5e77538296b69dd83fd4bc01f0594bf981322755c9ca10fe034897b05bf63ef09b2109ad1a31c3
data/bin/nexposecli CHANGED
@@ -354,8 +354,9 @@ uputs("CLI", "Checking for the requested action")
354
354
  @action |= 256 if args.download
355
355
  @action |= 512 if args.status
356
356
  @action |= 1024 if args.exception
357
+ @action |= 2048 if args.schedule
357
358
  uputs("ACTION", "The requested action value is: #{@action.to_s}")
358
- raise "You can only submit one action per task, see --help (action submitted: #{@action.to_s})" unless [1,2,4,8,16,32,64,128,256,512,1024].include?(@action)
359
+ raise "You can only submit one action per task, see --help (action submitted: #{@action.to_s})" unless [1,2,4,8,16,32,64,128,256,512,1024.2048].include?(@action)
359
360
 
360
361
  uputs("TARGET", "Checking for the requested target")
361
362
  @target = 0
@@ -642,9 +643,29 @@ when 2 # TARGET ENGINE
642
643
  end
643
644
  when 4 # show
644
645
  uputs("ACTION", 'show ENGINE action requested')
645
- puts 'Not yet implemented'
646
- engine = Nexpose::Engine.load(@nsc, args.id)
647
- upp engine
646
+ begin
647
+ engine = Nexpose::Engine.load(@nsc, args.id)
648
+ upp engine
649
+ rescue Nexpose::APIError => e
650
+ STDERR.puts " ERROR [ For Engine Id[#{args.id}] The engine id provided is actually a Scan Engine Pool. Try using --POOL vs --ENGINE. ]"
651
+ exit(-1)
652
+ end
653
+ puts " Scan Engine id: #{engine.id}\tName: #{engine.name}\tAddress: #{engine.address}:#{engine.port}"
654
+ puts "-- Sites using this engine:"
655
+
656
+ @nsc.sites.each do |site|
657
+ siteDetails = Nexpose::Site.load(@nsc, site.id)
658
+ upp siteDetails
659
+ if engine.id == siteDetails.engine_id
660
+ puts("\t(default engine) Site: id:#{site.id}\t name:'#{site.name}'")
661
+ end
662
+ # siteDetails.schedules.each do |schedule|
663
+ # if engine.id == schedule.engine_id
664
+ # puts("\t(schedule engine) Site: id:#{site.id}\t name:'#{site.name}'")
665
+ # end
666
+ # end
667
+ end
668
+
648
669
  when 8 # update
649
670
  uputs("ACTION", 'update ENGINE action requested')
650
671
  puts 'Not yet implemented'
@@ -715,7 +736,10 @@ when 4 # TARGET POOL
715
736
  end
716
737
  when 4 # show
717
738
  uputs("ACTION", 'show POOL action requested')
718
- raise 'Please submit the Scan Engine Pool Id and Pool Name, see --help' unless ( args.id && args.name )
739
+ unless ( args.id && args.name )
740
+ puts 'ERROR: [ Please submit the Scan Engine Pool Id and Pool Name, try --POOL --list to get the pool name OR see --help ]'
741
+ exit(-1)
742
+ end
719
743
  pool_name = args.name
720
744
  pool_id = args.id
721
745
  pool = Nexpose::EnginePool.load(@nsc, pool_name)
@@ -723,6 +747,13 @@ when 4 # TARGET POOL
723
747
  pool.engines.each do |engine|
724
748
  puts "\t- Scan Engine name: [#{engine.name}] id: [#{engine.id}] at: [#{engine.address}]\n"
725
749
  end
750
+ puts "\n- This Scan Engine Pool is being used by the following Sites:\n"
751
+ @nsc.sites.each do |site|
752
+ siteDetails = Nexpose::Site.load(@nsc, site.id)
753
+ if pool_id == siteDetails.engine_id
754
+ puts("\t(default) Site: id:#{site.id}\t name:'#{site.name}'")
755
+ end
756
+ end
726
757
  puts "\n"
727
758
  upp pool
728
759
  when 8 # update
@@ -1181,12 +1212,12 @@ when 16 # TARGET SITE
1181
1212
 
1182
1213
  site_listing.each do |site|
1183
1214
  if site.public_send(filter).match(filterv)
1184
- puts("Site: id:#{site.id}\t name:'#{site.name}'\t--description:#{site.description}\n")
1185
- upp site
1215
+ siteDetails = Nexpose::Site.load(@nsc, site.id)
1216
+ puts("Site: id:#{site.id}\t name:'#{site.name}'\ttemplate:#{siteDetails.scan_template_id}\t--description:#{site.description}\n")
1217
+ upp siteDetails
1186
1218
  end
1187
1219
  end
1188
1220
 
1189
-
1190
1221
  when 4 # show
1191
1222
  uputs("ACTION", 'show SITE action requested')
1192
1223
  site = ""
@@ -1357,6 +1388,25 @@ when 16 # TARGET SITE
1357
1388
  when 16 # delete
1358
1389
  uputs("ACTION", 'delete SITE action requested')
1359
1390
  puts 'Not yet implemented'
1391
+ when 2048 # schedule
1392
+ uputs("ACTION", 'schedule SITE action requested')
1393
+ filter = "name"
1394
+ filterv = ".*"
1395
+
1396
+ if args.filter != nil && args.filterv != nil
1397
+ filter = "#{args.filter}"
1398
+ filterv = "#{args.filterv}"
1399
+ end
1400
+
1401
+ site_listing = @nsc.list_sites
1402
+
1403
+ site_listing.each do |site|
1404
+ if site.public_send(filter).match(filterv)
1405
+ puts("Site: id:#{site.id}\t name:'#{site.name}'\t--description:#{site.description}\n")
1406
+ upp site
1407
+ end
1408
+ end
1409
+
1360
1410
  else
1361
1411
  uputs("ACTION", 'The action requested is not implemented for target')
1362
1412
  puts 'The action requested is not implemented for target'
@@ -2058,6 +2108,24 @@ when 4096 # TARGET TEMPLATE
2058
2108
  puts "Scan Template Id: #{scan_template.id} \tScan Template Name: #{scan_template.name}"
2059
2109
  upp scan_template
2060
2110
  end
2111
+ when 4 # show
2112
+ scan_template = Nexpose::ScanTemplate.load(@nsc, "#{args.id}")
2113
+ puts "Scan Template Id: #{scan_template.id} \tScan Template Name: #{scan_template.name}"
2114
+ site_listing = @nsc.list_sites
2115
+ puts "-- Sites using this template:"
2116
+
2117
+ site_listing.each do |site|
2118
+ siteDetails = Nexpose::Site.load(@nsc, site.id)
2119
+ if scan_template.id == siteDetails.scan_template_id
2120
+ puts("\t(default template) Site: id:#{site.id}\t name:'#{site.name}'")
2121
+ end
2122
+ siteDetails.schedules.each do |schedule|
2123
+ if scan_template.id == schedule.scan_template_id
2124
+ puts("\t(schedule template) Site: id:#{site.id}\t name:'#{site.name}'")
2125
+ end
2126
+ end
2127
+ end
2128
+
2061
2129
  when 128 # copy
2062
2130
  uputs("ACTION", 'copy TEMPLATE action requested')
2063
2131
  new_scan_template = Nexpose::ScanTemplate.load(@nsc, "#{args.id}")
@@ -36,6 +36,9 @@ module Nexposecli
36
36
  short : c
37
37
  desc : The create action is used for new objects
38
38
 
39
+ - name : schedule
40
+ desc : The exception action is used for vuln objects
41
+
39
42
  - name : exception
40
43
  short : x
41
44
  desc : The exception action is used for vuln objects
@@ -1,3 +1,3 @@
1
1
  module Nexposecli
2
- VERSION = "0.3.7"
2
+ VERSION = "0.3.8"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nexposecli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.7
4
+ version: 0.3.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erik Gomez
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-05-08 00:00:00.000000000 Z
12
+ date: 2017-06-13 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: nexpose