nexposecli 0.3.7 → 0.3.8
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 +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
|