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 +4 -4
- data/bin/nexposecli +76 -8
- data/lib/nexposecli/args.rb +3 -0
- data/lib/nexposecli/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 20cc0d58f0e199196e4a392b772de131da8b835b
|
4
|
+
data.tar.gz: 26df3b18e96f0eeaea0043d650caa8821718b908
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
|
-
|
646
|
-
|
647
|
-
|
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
|
-
|
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
|
-
|
1185
|
-
|
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}")
|
data/lib/nexposecli/args.rb
CHANGED
data/lib/nexposecli/version.rb
CHANGED
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.
|
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-
|
12
|
+
date: 2017-06-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: nexpose
|