nexposecli 0.2.8 → 0.2.9

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
  SHA1:
3
- metadata.gz: d2600f716f565ba39880a04fac81dcfbf020da2f
4
- data.tar.gz: 42100610ee2c841a9228f2d030605a27544f9dfa
3
+ metadata.gz: 508d45deb081adeadbe112de9e2c9a6eeefc2fc1
4
+ data.tar.gz: e618ca548f3778c78d7b9cedfed4a2ed577ee01a
5
5
  SHA512:
6
- metadata.gz: 29a4f6751333290493c6c9f85fd86316978df295bb089b90347c20dc3dc79c9092e8ea40b2e82b8422990ae1fd370595e124599becf28d1c552d95eefcc1bff2
7
- data.tar.gz: 454045409cc51ec66e798f893c16ba0895699e704f69f4fad1c418864fd74d1a955e85c5c147ffcba5c10438bc70a8aeefe8d8ddb139229605503f3ad44b5583
6
+ metadata.gz: 26180fda35b563f09fcf1a431fb9a587e5b86e688b11e46980ded12e0c1fec906092c983800fb9df5607e73eefb3fc5140933a9ca02126167b828df6e70ee6dc
7
+ data.tar.gz: 27b4a184bd4a74e984a838209eff88fbe5e6393e6dee0f5307d16cf6a887bb1e222f74396e17f5f87a595bf5b7a03bb813075a0c2c7afb09d85b9d678b7b843c
data/bin/nexposecli CHANGED
@@ -1,4 +1,4 @@
1
- #!/usr/bin/env ruby
1
+ #!/usr/bin/env ruby -W0
2
2
  ##############################################################################
3
3
  #
4
4
  # File: nexposecli
@@ -260,6 +260,12 @@ def validate_searchstring(sfstr)
260
260
  end
261
261
  end
262
262
 
263
+ def days_since_str(date_string)
264
+ # Parse a date string and calculate the number of days since the date
265
+ days = Date.today - Date.parse(date_string)
266
+ return days.to_i
267
+ end
268
+
263
269
  ##############################################################################
264
270
  #
265
271
  # Main
@@ -630,11 +636,26 @@ when 2 # TARGET ENGINE
630
636
  filterv = "#{args.filterv}"
631
637
  end
632
638
  engines = @nsc.engine_versions
633
- puts '%25s' % "Name" + ' ' + '%10s' % "Status" + ' ' + '%10s' % "Version" + ' ' + '%25s' % "Last Product Update ID" + ' ' + '%25s' % "Last Content Update ID"
639
+ puts '%45s' % "Name" + ' ' + '%18s' % "Status" + ' ' + '%10s' % "Version" + ' ' + '%25s' % "Last Product Update ID" + ' ' + '%25s' % "Last Content Update ID"
634
640
  engines.each do |engine|
641
+ daysProduct = 0
642
+ daysContent = 0
643
+ daysNote = ''
644
+
635
645
  if engine[filter].match(filterv)
636
646
  upp engine
637
- puts '%25s' % engine["Name"] + ' ' + '%10s' % engine["Status"] + ' ' + '%10s' % engine["Version"] + ' ' + '%25s' % engine["Last Product Update ID"] + ' ' + '%25s' % engine["Last Content Update ID"]
647
+ if args.days != nil
648
+ daysProduct = days_since_str(engine["Last Product Update ID"])
649
+ daysContent = days_since_str(engine["Last Content Update ID"])
650
+ if daysProduct >= args.days.to_i
651
+ daysNote = " PRODUCT UPDATES ARE OLD BY #{daysProduct} DAYS"
652
+ elsif daysContent >= args.days.to_i
653
+ daysNote = " CONTENT UPDATES ARE OLD BY #{daysContent} DAYS"
654
+ else
655
+ next
656
+ end
657
+ end
658
+ puts '%45s' % engine["Name"] + ' ' + '%18s' % engine["Status"] + ' ' + '%10s' % engine["Version"] + ' ' + '%25s' % engine["Last Product Update ID"] + ' ' + '%25s' % engine["Last Content Update ID"] + daysNote
638
659
  end
639
660
  end
640
661
  else
@@ -999,7 +1020,7 @@ when 8 # TARGET SCAN
999
1020
  puts "End of a single scan task\n"
1000
1021
 
1001
1022
  end
1002
- logout_success = @nsc.logout
1023
+ # logout_success = @nsc.logout
1003
1024
  # END of Target Ranges loop
1004
1025
  if targets_sha2
1005
1026
  File.open("." + targets_sha2, 'w') {|f| f.write("COMPLETED") }
@@ -157,6 +157,10 @@ module Nexposecli
157
157
  desc : The target role name
158
158
  required : true
159
159
 
160
+ - name : days
161
+ desc : The number of days since updated or last login
162
+ required : true
163
+
160
164
  - name : email
161
165
  desc : The target email address
162
166
  required : true
@@ -1,3 +1,3 @@
1
1
  module Nexposecli
2
- VERSION = "0.2.8"
2
+ VERSION = "0.2.9"
3
3
  end
data/nexposecli.gemspec CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
18
18
  spec.require_paths = ["lib"]
19
19
 
20
20
  spec.required_ruby_version = '>= 2.1'
21
- spec.add_runtime_dependency "nexpose", '>= 4.0.4'
21
+ spec.add_runtime_dependency 'nexpose', '~> 5.3', '>= 5.3.1'
22
22
  spec.add_runtime_dependency "netaddr", '~> 1.5', '>= 1.5.1'
23
23
  spec.add_runtime_dependency "net-ldap", '~> 0.14', '>= 0.14.0'
24
24
 
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.2.8
4
+ version: 0.2.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erik Gomez
@@ -9,22 +9,28 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-03-22 00:00:00.000000000 Z
12
+ date: 2017-03-29 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: nexpose
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
+ - - "~>"
19
+ - !ruby/object:Gem::Version
20
+ version: '5.3'
18
21
  - - ">="
19
22
  - !ruby/object:Gem::Version
20
- version: 4.0.4
23
+ version: 5.3.1
21
24
  type: :runtime
22
25
  prerelease: false
23
26
  version_requirements: !ruby/object:Gem::Requirement
24
27
  requirements:
28
+ - - "~>"
29
+ - !ruby/object:Gem::Version
30
+ version: '5.3'
25
31
  - - ">="
26
32
  - !ruby/object:Gem::Version
27
- version: 4.0.4
33
+ version: 5.3.1
28
34
  - !ruby/object:Gem::Dependency
29
35
  name: netaddr
30
36
  requirement: !ruby/object:Gem::Requirement