dradis-nessus 3.6.0 → 3.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -1
- data/lib/dradis/plugins/nessus/gem_version.rb +1 -1
- data/lib/tasks/thorfile.rb +2 -6
- data/spec/dradis/plugins/nessus/importer_spec.rb +9 -6
- data/spec/fixtures/files/host-01.xml +7 -9
- data/spec/nessus/host_spec.rb +12 -6
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a14b2a69eab17116cc157efa4f8d1b295f5635c6
|
4
|
+
data.tar.gz: e5bfed8770eed64b75b5800ba518762c9ae1820e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 423de525cac3910168f9423db7da9a28ef9bdd7a20192f179728bc1a58e0c265b79aa5feffaae799761af470a19f2cf191bd96022999fab97f05f631f4461fd6
|
7
|
+
data.tar.gz: c5e29c4c84d65f5995db98ce4f4f6c7105b7466ac5ecd2493867b9ca6309108276271ab56a72bb894d0eb5881fdcec882aefbd667bc161fce259b4b57da499ff
|
data/CHANGELOG.md
CHANGED
data/lib/tasks/thorfile.rb
CHANGED
@@ -7,19 +7,15 @@ class NessusTasks < Thor
|
|
7
7
|
def upload(file_path)
|
8
8
|
require 'config/environment'
|
9
9
|
|
10
|
-
logger = Logger.new(STDOUT)
|
11
|
-
logger.level = Logger::DEBUG
|
12
|
-
|
13
10
|
unless File.exists?(file_path)
|
14
11
|
$stderr.puts "** the file [#{file_path}] does not exist"
|
15
12
|
exit(-1)
|
16
13
|
end
|
17
14
|
|
18
15
|
detect_and_set_project_scope
|
19
|
-
importer = Dradis::Plugins::Nessus::Importer.new(logger: logger)
|
20
|
-
importer.import(file: file_path)
|
21
16
|
|
22
|
-
|
17
|
+
importer = Dradis::Plugins::Nessus::Importer.new(task_options)
|
18
|
+
importer.import(file: file_path)
|
23
19
|
end
|
24
20
|
|
25
21
|
end
|
@@ -13,12 +13,13 @@ describe Dradis::Plugins::Nessus::Importer do
|
|
13
13
|
# Init services
|
14
14
|
plugin = Dradis::Plugins::Nessus
|
15
15
|
|
16
|
-
@content_service = Dradis::Plugins::ContentService.new(
|
17
|
-
|
16
|
+
@content_service = Dradis::Plugins::ContentService::Base.new(
|
17
|
+
logger: Logger.new(STDOUT),
|
18
|
+
plugin: plugin
|
19
|
+
)
|
18
20
|
|
19
21
|
@importer = plugin::Importer.new(
|
20
|
-
content_service: @content_service
|
21
|
-
template_service: template_service
|
22
|
+
content_service: @content_service
|
22
23
|
)
|
23
24
|
|
24
25
|
# Stub dradis-plugins methods
|
@@ -26,7 +27,9 @@ describe Dradis::Plugins::Nessus::Importer do
|
|
26
27
|
# They return their argument hashes as objects mimicking
|
27
28
|
# Nodes, Issues, etc
|
28
29
|
allow(@content_service).to receive(:create_node) do |args|
|
29
|
-
OpenStruct.new(args)
|
30
|
+
obj = OpenStruct.new(args)
|
31
|
+
obj.define_singleton_method(:set_property) { |_, __| }
|
32
|
+
obj
|
30
33
|
end
|
31
34
|
allow(@content_service).to receive(:create_note) do |args|
|
32
35
|
OpenStruct.new(args)
|
@@ -48,4 +51,4 @@ describe Dradis::Plugins::Nessus::Importer do
|
|
48
51
|
# Run the import
|
49
52
|
@importer.import(file: 'spec/fixtures/files/example_v2.nessus')
|
50
53
|
end
|
51
|
-
end
|
54
|
+
end
|
@@ -6,15 +6,13 @@
|
|
6
6
|
<tag name="HOST_END">Tue Aug 9 09:59:24 2011</tag>
|
7
7
|
<tag name="HOST_START">Tue Aug 9 09:50:18 2011</tag>
|
8
8
|
</HostProperties>
|
9
|
-
<ReportItem
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
pluginFamily="General">
|
17
|
-
</ReportIem>
|
9
|
+
<ReportItem port="0" svc_name="general" protocol="udp" severity="1" pluginID="10287" pluginName="Traceroute Information" pluginFamily="General" />
|
10
|
+
<ReportItem port="0" svc_name="unknown" protocol="icmp" severity="0" pluginID="0" pluginName="" pluginFamily=""/>
|
11
|
+
<ReportItem port="0" svc_name="unknown" protocol="tcp" severity="0" pluginID="0" pluginName="" pluginFamily=""/>
|
12
|
+
<ReportItem port="0" svc_name="unknown" protocol="udp" severity="0" pluginID="0" pluginName="" pluginFamily=""/>
|
13
|
+
<ReportItem port="21" svc_name="ftp?" protocol="tcp" severity="0" pluginID="0" pluginName="" pluginFamily=""/>
|
14
|
+
<ReportItem port="22" svc_name="ssh" protocol="tcp" severity="0" pluginID="0" pluginName="" pluginFamily=""/>
|
15
|
+
<ReportItem port="9090" svc_name="www" protocol="tcp" severity="0" pluginID="0" pluginName="" pluginFamily=""/>
|
18
16
|
</ReportHost>
|
19
17
|
</Report>
|
20
18
|
</NessusClientData_v2>
|
data/spec/nessus/host_spec.rb
CHANGED
@@ -3,6 +3,11 @@ require 'spec_helper'
|
|
3
3
|
describe Nessus::Host do
|
4
4
|
let(:host1_xml) { File.expand_path('../../fixtures/files/host-01.xml', __FILE__) }
|
5
5
|
|
6
|
+
before do
|
7
|
+
doc = Nokogiri::XML(File.read(host1_xml))
|
8
|
+
@host = Nessus::Host.new(doc.xpath('/NessusClientData_v2/Report/ReportHost').first)
|
9
|
+
end
|
10
|
+
|
6
11
|
# These are the properties we need to support:
|
7
12
|
# host.name The name given at scan time, usually an IP address
|
8
13
|
# host.ip The ip address of the host
|
@@ -13,11 +18,12 @@ describe Nessus::Host do
|
|
13
18
|
# host.scan_start_time The date/time the scan started
|
14
19
|
# host.scan_stop_time The date/time the scan ended
|
15
20
|
it 'Nessus::Host responds to all the expected fields' do
|
16
|
-
|
17
|
-
host
|
18
|
-
expect(host.name).to eq('10.0.0.1')
|
19
|
-
expect(host.scan_start_time).to eq('Tue Aug 9 09:50:18 2011')
|
21
|
+
expect(@host.name).to eq('10.0.0.1')
|
22
|
+
expect(@host.scan_start_time).to eq('Tue Aug 9 09:50:18 2011')
|
20
23
|
end
|
21
24
|
|
22
|
-
|
23
|
-
|
25
|
+
it 'provides access to each of its ReportItems' do
|
26
|
+
report_items = @host.report_items
|
27
|
+
report_items.each { |item| expect(item).to be_a(Nessus::ReportItem) }
|
28
|
+
end
|
29
|
+
end
|
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: 3.
|
4
|
+
version: 3.7.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: 2017-
|
11
|
+
date: 2017-07-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: dradis-plugins
|
@@ -157,7 +157,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
157
157
|
version: '0'
|
158
158
|
requirements: []
|
159
159
|
rubyforge_project:
|
160
|
-
rubygems_version: 2.
|
160
|
+
rubygems_version: 2.6.8
|
161
161
|
signing_key:
|
162
162
|
specification_version: 4
|
163
163
|
summary: Nessus upload add-on for the Dradis Framework.
|