nexpose 2.2.0 → 2.3.0

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: e4353ffa0b47b791fee6d6b61637214b26c3db4a
4
- data.tar.gz: e71be2c82494f0832a07f3e2896ca31ea14bee51
3
+ metadata.gz: b700cb98e385100a28c8b58f7952a9d26644c24a
4
+ data.tar.gz: 8595c6416a6b61a6855e2fcc19f3427e9ccd1301
5
5
  SHA512:
6
- metadata.gz: f241d4267bb92c7222bd0c80879800ef3038d55d9febee9fa897cf78d58972fbaf6ebe687eb24b9735f86340c905dfd1a44d21991b8be92151b193aed64c5dcc
7
- data.tar.gz: b12d8098aa6609a688a8750e790023336fe732cb7b68f434b468a2d07fdef1fe0d15376beb5ab4d00711b47709a877c74779c7be159d252aae5e84873a5b961d
6
+ metadata.gz: cd9cadc253fd186e47dd8bcde7a653c3926759e401e8a5a79babf869da3c2f434ab7ffecb51354f668c17626e82f0e21233068dd082d15305632ad69c4fed4f8
7
+ data.tar.gz: 57e46c5e4cc26e7ed85057e3081556776f3320dfe1dd18f1ab7544966112b878df6190736077ab0b4ce3143c0fa2f90183b570f19c61a435b61c8a566ad170f9
@@ -6,6 +6,9 @@ module Nexpose
6
6
  # all sites.
7
7
  attr_accessor :asset_exclusions
8
8
 
9
+ # Whether asset linking in enabled.
10
+ attr_accessor :asset_linking
11
+
9
12
  # Whether control scanning in enabled. A feature tied to ControlsInsight
10
13
  # integration.
11
14
  attr_accessor :control_scanning
@@ -18,6 +21,7 @@ module Nexpose
18
21
  def initialize(xml)
19
22
  @xml = xml
20
23
 
24
+ @asset_linking = parse_asset_linking_from_xml(xml)
21
25
  @asset_exclusions = HostOrIP.parse(xml)
22
26
  @control_scanning = parse_control_scanning_from_xml(xml)
23
27
  end
@@ -41,6 +45,7 @@ module Nexpose
41
45
 
42
46
  replace_exclusions(xml, asset_exclusions)
43
47
  add_control_scanning_to_xml(xml, control_scanning)
48
+ add_asset_linking_to_xml(xml, asset_linking)
44
49
 
45
50
  response = AJAX.post(nsc, '/data/admin/global-settings', xml)
46
51
  XMLUtils.success? response
@@ -115,5 +120,22 @@ module Nexpose
115
120
  'enabled' => enabled ? '1' : '0')
116
121
  end
117
122
  end
123
+
124
+ # Internal method for parsing XML for whether asset linking in enabled.
125
+ def parse_asset_linking_from_xml(xml)
126
+ enabled = true
127
+ if elem = REXML::XPath.first(xml, '//AssetCorrelation[@enabled]')
128
+ enabled = elem.attribute('enabled').value.to_i == 1
129
+ end
130
+ enabled
131
+ end
132
+
133
+ # Internal method for updating asset linking before saving.
134
+ def add_asset_linking_to_xml(xml, enabled)
135
+ elem = REXML::XPath.first(xml, '//AssetCorrelation')
136
+ return nil unless elem
137
+
138
+ elem.attributes['enabled'] = enabled ? '1' : '0'
139
+ end
118
140
  end
119
141
  end
@@ -1,4 +1,4 @@
1
1
  module Nexpose
2
2
  # The latest version of the Nexpose gem
3
- VERSION = '2.2.0'
3
+ VERSION = '2.3.0'
4
4
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nexpose
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.0
4
+ version: 2.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - HD Moore
@@ -13,7 +13,7 @@ authors:
13
13
  autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
- date: 2015-12-02 00:00:00.000000000 Z
16
+ date: 2015-12-10 00:00:00.000000000 Z
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
19
19
  name: rex