dradis-nessus 4.12.0 → 4.13.0
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/CHANGELOG.md +4 -0
- data/dradis-nessus.gemspec +1 -1
- data/lib/dradis/plugins/nessus/gem_version.rb +2 -2
- data/lib/dradis/plugins/nessus/mapping.rb +2 -1
- data/lib/nessus/report_item.rb +8 -1
- data/spec/dradis/plugins/nessus/importer_spec.rb +29 -7
- data/spec/fixtures/files/vpr_score.xml +37 -0
- data/spec/fixtures/files/vulnerability_priority_rating.xml +37 -0
- data/templates/report_item.sample +2 -1
- metadata +8 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5b1cd71866a497daa6b69caeab52f5a5931e5797a91641919a20b0f88f966444
|
4
|
+
data.tar.gz: 6d2afaa4bf0cdeb5a07043b418e759d039e373614abfa7899a77b2f14fa9cdc8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d51ec219b303d14569ed0a43af65ed2761c465a634c4b2fc2b7957b696ad809cb44505a58d90b067054516d5ec5e6c007a2e3a5929d795da971df3cfa2c1f221
|
7
|
+
data.tar.gz: 935990184cec4b2a2870edd44ba4bc62821ce02d5181d9996332d5974ab6bd981131a16c08d9cbdd1bac9b8f070795433807238806f7c9e85d2b1b8b789d1c43
|
data/CHANGELOG.md
CHANGED
data/dradis-nessus.gemspec
CHANGED
@@ -26,7 +26,7 @@ Gem::Specification.new do |spec|
|
|
26
26
|
spec.add_dependency 'dradis-plugins', '~> 4.0'
|
27
27
|
spec.add_dependency 'nokogiri'
|
28
28
|
|
29
|
-
spec.add_development_dependency 'bundler', '~>
|
29
|
+
spec.add_development_dependency 'bundler', '~> 2.0'
|
30
30
|
spec.add_development_dependency 'rake', '~> 10.0'
|
31
31
|
spec.add_development_dependency 'rspec-rails'
|
32
32
|
spec.add_development_dependency 'combustion', '~> 0.5.2'
|
@@ -13,7 +13,7 @@ module Dradis::Plugins::Nessus
|
|
13
13
|
report_item: {
|
14
14
|
'Title' => '{{ nessus[report_item.plugin_name] }}',
|
15
15
|
'CVSSv3.BaseScore' => '{{ nessus[report_item.cvss3_base_score] }}',
|
16
|
-
'
|
16
|
+
'CVSSv3.Vector' => '{{ nessus[report_item.cvss3_vector] }}',
|
17
17
|
'Type' => 'Internal',
|
18
18
|
'Description' => '{{ nessus[report_item.description] }}',
|
19
19
|
'Solution' => '{{ nessus[report_item.solution] }}',
|
@@ -55,6 +55,7 @@ module Dradis::Plugins::Nessus
|
|
55
55
|
'report_item.age_of_vuln',
|
56
56
|
'report_item.bid_entries',
|
57
57
|
'report_item.cve_entries',
|
58
|
+
'report_item.cwe_entries',
|
58
59
|
'report_item.cvss3_base_score',
|
59
60
|
'report_item.cvss3_impact_score',
|
60
61
|
'report_item.cvss3_temporal_score',
|
data/lib/nessus/report_item.rb
CHANGED
@@ -31,7 +31,7 @@ module Nessus
|
|
31
31
|
:risk_factor, :solution, :synopsis, :threat_intensity_last_28, :threat_recency,
|
32
32
|
:threat_sources_last_28, :vpr_score, :vuln_publication_date,
|
33
33
|
# multiple tags
|
34
|
-
:bid_entries, :cve_entries, :see_also_entries, :xref_entries,
|
34
|
+
:bid_entries, :cve_entries, :cwe_entries, :see_also_entries, :xref_entries,
|
35
35
|
# compliance tags
|
36
36
|
:cm_actual_value, :cm_audit_file, :cm_check_id, :cm_check_name, :cm_info,
|
37
37
|
:cm_output, :cm_policy_value, :cm_reference, :cm_result, :cm_see_also,
|
@@ -102,11 +102,18 @@ module Nessus
|
|
102
102
|
end
|
103
103
|
end
|
104
104
|
|
105
|
+
# older versions of Nessus use <vpr_score> while newer versions of Nessus
|
106
|
+
# use <vulnerability_priority_rating>. This allows either tag to be
|
107
|
+
# pulled in to the vpr_score mapping
|
108
|
+
if method_name == 'vpr_score'
|
109
|
+
return @xml.at_xpath('./vulnerability_priority_rating | ./vpr_score')&.text
|
110
|
+
end
|
105
111
|
|
106
112
|
# finally the enumerations: bid_entries, cve_entries, xref_entries
|
107
113
|
translations_table = {
|
108
114
|
:bid_entries => 'bid',
|
109
115
|
:cve_entries => 'cve',
|
116
|
+
:cwe_entries => 'cwe',
|
110
117
|
:see_also_entries => 'see_also',
|
111
118
|
:xref_entries => 'xref'
|
112
119
|
}
|
@@ -2,13 +2,10 @@ require 'spec_helper'
|
|
2
2
|
require 'ostruct'
|
3
3
|
|
4
4
|
describe Dradis::Plugins::Nessus::Importer do
|
5
|
-
|
6
5
|
before(:each) do
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
.to receive(:default_templates_dir).and_return(templates_dir)
|
11
|
-
|
6
|
+
mapping_service = double('Dradis::Plugins::MappingService')
|
7
|
+
allow(mapping_service).to receive(:apply_mapping).and_return('')
|
8
|
+
allow(Dradis::Plugins::MappingService).to receive(:new).and_return(mapping_service)
|
12
9
|
|
13
10
|
# Init services
|
14
11
|
plugin = Dradis::Plugins::Nessus
|
@@ -37,7 +34,7 @@ describe Dradis::Plugins::Nessus::Importer do
|
|
37
34
|
end
|
38
35
|
end
|
39
36
|
|
40
|
-
it
|
37
|
+
it 'creates one node for each host' do
|
41
38
|
%w{snorby.org scanme.insecure.org}.each do |host|
|
42
39
|
expect(@content_service).to receive(:create_node).with(hash_including label: host).once
|
43
40
|
end
|
@@ -52,4 +49,29 @@ describe Dradis::Plugins::Nessus::Importer do
|
|
52
49
|
# Run the import
|
53
50
|
@importer.import(file: 'spec/fixtures/files/example_v2.nessus')
|
54
51
|
end
|
52
|
+
|
53
|
+
describe 'vulnerability priority rating field' do
|
54
|
+
before do
|
55
|
+
allow(@content_service).to receive(:create_evidence) do |args|
|
56
|
+
OpenStruct.new(args)
|
57
|
+
end
|
58
|
+
|
59
|
+
expect_any_instance_of(Dradis::Plugins::TemplateService)
|
60
|
+
.to receive(:template_source).and_return("#[VPR]#\n%report_item.vpr_score%\n")
|
61
|
+
end
|
62
|
+
|
63
|
+
context '<vpr_score>' do
|
64
|
+
it 'exports the vpr_score field' do
|
65
|
+
expect(@content_service).to receive(:create_issue).with(hash_including text: "#[VPR]#\n9.0\n")
|
66
|
+
@importer.import(file: 'spec/fixtures/files/vulnerability_priority_rating.xml')
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
context '<vulnerability_priority_rating>' do
|
71
|
+
it 'exports the vpr_score field' do
|
72
|
+
expect(@content_service).to receive(:create_issue).with(hash_including text: "#[VPR]#\n9.0\n")
|
73
|
+
@importer.import(file: 'spec/fixtures/files/vpr_score.xml')
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|
55
77
|
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
<?xml version="1.0" ?>
|
2
|
+
<NessusClientData_v2>
|
3
|
+
<Report name="vprscore" xmlns:cm="http://www.nessus.org/cm">
|
4
|
+
<ReportHost name="computer">
|
5
|
+
<HostProperties>
|
6
|
+
<tag name="host-fqdn">computer.domain</tag>
|
7
|
+
<tag name="operating-system">windows</tag>
|
8
|
+
<tag name="system-type">general-purpose</tag>
|
9
|
+
<tag name="host-uuid">real-uuid</tag>
|
10
|
+
<tag name="host-ip">0.0.0.0</tag>
|
11
|
+
<tag name="netbios-name">computer</tag>
|
12
|
+
<tag name="LastAuthenticatedResults">1111</tag>
|
13
|
+
<tag name="local-checks-proto">local</tag>
|
14
|
+
<tag name="bios-uuid">real-uuid</tag></HostProperties>
|
15
|
+
<ReportItem port="9090" svc_name="www" protocol="tcp" severity="1" pluginID="24260" pluginName="HyperText Transfer Protocol (HTTP) Information" pluginFamily="Web Servers">
|
16
|
+
<solution>n/a</solution><risk_factor>None</risk_factor><description>This test gives some information about the remote HTTP protocol - the
|
17
|
+
version used, whether HTTP Keep-Alive and HTTP pipelining are enabled,
|
18
|
+
etc...
|
19
|
+
|
20
|
+
This test is informational only and does not denote any security
|
21
|
+
problem.</description><synopsis>Some information about the remote HTTP configuration can be extracted.</synopsis><plugin_output>
|
22
|
+
Protocol version : HTTP/1.1
|
23
|
+
SSL : no
|
24
|
+
Keep-Alive : no
|
25
|
+
Options allowed : (Not implemented)
|
26
|
+
Headers :
|
27
|
+
|
28
|
+
Content-length: 1001
|
29
|
+
Server: TwistedWeb/8.1.0
|
30
|
+
Last-modified: Mon, 10 Aug 2009 07:16:33 GMT
|
31
|
+
Connection: close
|
32
|
+
Date: Fri, 11 Dec 2009 09:03:32 GMT
|
33
|
+
Content-type: text/html
|
34
|
+
|
35
|
+
</plugin_output>
|
36
|
+
<vpr_score>9.0</vpr_score>
|
37
|
+
<plugin_version>$Revision: 1.9 $</plugin_version></ReportItem></ReportHost></Report></NessusClientData_v2>
|
@@ -0,0 +1,37 @@
|
|
1
|
+
<?xml version="1.0" ?>
|
2
|
+
<NessusClientData_v2>
|
3
|
+
<Report name="vulnerability_priority_rating" xmlns:cm="http://www.nessus.org/cm">
|
4
|
+
<ReportHost name="computer">
|
5
|
+
<HostProperties>
|
6
|
+
<tag name="host-fqdn">computer.domain</tag>
|
7
|
+
<tag name="operating-system">windows</tag>
|
8
|
+
<tag name="system-type">general-purpose</tag>
|
9
|
+
<tag name="host-uuid">real-uuid</tag>
|
10
|
+
<tag name="host-ip">0.0.0.0</tag>
|
11
|
+
<tag name="netbios-name">computer</tag>
|
12
|
+
<tag name="LastAuthenticatedResults">111111</tag>
|
13
|
+
<tag name="local-checks-proto">local</tag>
|
14
|
+
<tag name="bios-uuid">real-uuid</tag></HostProperties>
|
15
|
+
<ReportItem port="9090" svc_name="www" protocol="tcp" severity="1" pluginID="24260" pluginName="HyperText Transfer Protocol (HTTP) Information" pluginFamily="Web Servers">
|
16
|
+
<solution>n/a</solution><risk_factor>None</risk_factor><description>This test gives some information about the remote HTTP protocol - the
|
17
|
+
version used, whether HTTP Keep-Alive and HTTP pipelining are enabled,
|
18
|
+
etc...
|
19
|
+
|
20
|
+
This test is informational only and does not denote any security
|
21
|
+
problem.</description><synopsis>Some information about the remote HTTP configuration can be extracted.</synopsis><plugin_output>
|
22
|
+
Protocol version : HTTP/1.1
|
23
|
+
SSL : no
|
24
|
+
Keep-Alive : no
|
25
|
+
Options allowed : (Not implemented)
|
26
|
+
Headers :
|
27
|
+
|
28
|
+
Content-length: 1001
|
29
|
+
Server: TwistedWeb/8.1.0
|
30
|
+
Last-modified: Mon, 10 Aug 2009 07:16:33 GMT
|
31
|
+
Connection: close
|
32
|
+
Date: Fri, 11 Dec 2009 09:03:32 GMT
|
33
|
+
Content-type: text/html
|
34
|
+
|
35
|
+
</plugin_output>
|
36
|
+
<vulnerability_priority_rating>9.0</vulnerability_priority_rating>
|
37
|
+
<plugin_version>$Revision: 1.9 $</plugin_version></ReportItem></ReportHost></Report></NessusClientData_v2>
|
@@ -42,10 +42,11 @@ If safe checks are enabled, this may be a false positive since it is based on th
|
|
42
42
|
<exploit_code_maturity>Unproven</exploit_code_maturity>
|
43
43
|
<plugin_modification_date>2011/03/08</plugin_modification_date>
|
44
44
|
<cvss_base_score>7.5</cvss_base_score>
|
45
|
-
<
|
45
|
+
<vulnerability_priority_rating>6.7</vulnerability_priority_rating>
|
46
46
|
<product_coverage>Low</product_coverage>
|
47
47
|
<canvas_package>CANVAS</canvas_package>
|
48
48
|
<cve>CVE-2002-0392</cve>
|
49
|
+
<cwe>123</cwe>
|
49
50
|
<bid>5033</bid>
|
50
51
|
<xref>IAVA:2002-a-0003</xref>
|
51
52
|
<xref>OSVDB:838</xref>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dradis-nessus
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.13.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel Martin
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-08-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: dradis-plugins
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
47
|
+
version: '2.0'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
54
|
+
version: '2.0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rake
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -129,6 +129,8 @@ files:
|
|
129
129
|
- spec/fixtures/files/example_v2.nessus
|
130
130
|
- spec/fixtures/files/host-01.xml
|
131
131
|
- spec/fixtures/files/report_item-with-list.xml
|
132
|
+
- spec/fixtures/files/vpr_score.xml
|
133
|
+
- spec/fixtures/files/vulnerability_priority_rating.xml
|
132
134
|
- spec/nessus/host_spec.rb
|
133
135
|
- spec/spec_helper.rb
|
134
136
|
- templates/evidence.sample
|
@@ -163,5 +165,7 @@ test_files:
|
|
163
165
|
- spec/fixtures/files/example_v2.nessus
|
164
166
|
- spec/fixtures/files/host-01.xml
|
165
167
|
- spec/fixtures/files/report_item-with-list.xml
|
168
|
+
- spec/fixtures/files/vpr_score.xml
|
169
|
+
- spec/fixtures/files/vulnerability_priority_rating.xml
|
166
170
|
- spec/nessus/host_spec.rb
|
167
171
|
- spec/spec_helper.rb
|