dradis-saint 3.18.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 +7 -0
- data/.github/issue_template.md +16 -0
- data/.github/pull_request_template.md +36 -0
- data/.gitignore +12 -0
- data/CHANGELOG.md +39 -0
- data/CONTRIBUTING.md +3 -0
- data/Gemfile +20 -0
- data/LICENSE +339 -0
- data/README.md +25 -0
- data/Rakefile +1 -0
- data/dradis-saint.gemspec +28 -0
- data/lib/dradis-saint.rb +7 -0
- data/lib/dradis/plugins/saint.rb +11 -0
- data/lib/dradis/plugins/saint/engine.rb +13 -0
- data/lib/dradis/plugins/saint/field_processor.rb +31 -0
- data/lib/dradis/plugins/saint/gem_version.rb +18 -0
- data/lib/dradis/plugins/saint/importer.rb +130 -0
- data/lib/dradis/plugins/saint/version.rb +11 -0
- data/lib/saint/base.rb +29 -0
- data/lib/saint/evidence.rb +18 -0
- data/lib/saint/vulnerability.rb +15 -0
- data/lib/tasks/thorfile.rb +19 -0
- data/spec/dradis/plugins/saint/field_processor_spec.rb +39 -0
- data/spec/dradis/plugins/saint/importer_spec.rb +33 -0
- data/spec/fixtures/files/evidence-01.xml +8 -0
- data/spec/fixtures/files/full_report.xml +45 -0
- data/spec/fixtures/files/host-01.xml +5 -0
- data/spec/fixtures/files/saint_metasploitable_sample.xml +718 -0
- data/spec/fixtures/files/vulnerability-01.xml +17 -0
- data/spec/saint/evidence_spec.rb +8 -0
- data/spec/saint/host_spec.rb +8 -0
- data/spec/saint/vulnerability_spec.rb +8 -0
- data/spec/spec_helper.rb +10 -0
- data/spec/xml_element.rb +10 -0
- data/templates/evidence.fields +5 -0
- data/templates/evidence.sample +8 -0
- data/templates/evidence.template +14 -0
- data/templates/vulnerability.fields +14 -0
- data/templates/vulnerability.sample +35 -0
- data/templates/vulnerability.template +41 -0
- metadata +166 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<vulnerability>
|
|
2
|
+
<description>Test Description</description>
|
|
3
|
+
<hostname>Test Hostname</hostname>
|
|
4
|
+
<ipaddr>Test Ipaddr</ipaddr>
|
|
5
|
+
<hosttype>Test Hosttype</hosttype>
|
|
6
|
+
<scan_time>Test Scan time</scan_time>
|
|
7
|
+
<status>Test Status</status>
|
|
8
|
+
<severity>Test Severity</severity>
|
|
9
|
+
<cve>Test Cve</cve>
|
|
10
|
+
<cvss_base_score>Test Cvss base score</cvss_base_score>
|
|
11
|
+
<impact>Test Impact</impact>
|
|
12
|
+
<background>Test Background</background>
|
|
13
|
+
<problem>Test Problem</problem>
|
|
14
|
+
<resolution>Test Resolution</resolution>
|
|
15
|
+
<reference>Test Reference</reference>
|
|
16
|
+
<vuln_details></vuln_details>
|
|
17
|
+
</vulnerability>
|
data/spec/spec_helper.rb
ADDED
data/spec/xml_element.rb
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
shared_examples 'Saint XML element' do
|
|
2
|
+
it 'responds to its supported fields' do
|
|
3
|
+
doc = Nokogiri::XML(File.read(xml_file))
|
|
4
|
+
object_name = described_class.to_s.split('::').last.downcase
|
|
5
|
+
object = described_class.new(doc.xpath("./#{object_name}").first)
|
|
6
|
+
object.supported_tags.each do |tag|
|
|
7
|
+
expect(object.send(tag)).to eq("Test #{tag.to_s.humanize}")
|
|
8
|
+
end
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
vulnerability.description
|
|
2
|
+
vulnerability.hostname
|
|
3
|
+
vulnerability.ipaddr
|
|
4
|
+
vulnerability.hosttype
|
|
5
|
+
vulnerability.scan_time
|
|
6
|
+
vulnerability.status
|
|
7
|
+
vulnerability.severity
|
|
8
|
+
vulnerability.cve
|
|
9
|
+
vulnerability.cvss_base_score
|
|
10
|
+
vulnerability.impact
|
|
11
|
+
vulnerability.background
|
|
12
|
+
vulnerability.problem
|
|
13
|
+
vulnerability.resolution
|
|
14
|
+
vulnerability.reference
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
<vulnerability>
|
|
2
|
+
<description>SSL/TLS server supports short block sizes (SWEET32 attack)</description>
|
|
3
|
+
<hostname>192.168.150.163</hostname>
|
|
4
|
+
<ipaddr>192.168.150.163</ipaddr>
|
|
5
|
+
<hosttype>Linux 2.6.18 - 2.6.22</hosttype>
|
|
6
|
+
<scan_time>Mar 22 13:22:35 2017</scan_time>
|
|
7
|
+
<status>new</status>
|
|
8
|
+
<severity>Potential Problem</severity>
|
|
9
|
+
<cve>CVE-2016-2183</cve>
|
|
10
|
+
<cvss_base_score>5.0</cvss_base_score>
|
|
11
|
+
<impact>A remote attacker with the ability to sniff network traffic could decrypt long-lived TLS or SSL sessions.</impact>
|
|
12
|
+
<background>A Block Cipher is an encryption algorithm which operates on a fixed-size block of data. Plaintext messages which are larger than the block size must be split into multiple blocks before being encrypted by the algorithm.
|
|
13
|
+
</background>
|
|
14
|
+
<problem>SWEET32 Attack
|
|
15
|
+
08/29/16
|
|
16
|
+
CVE 2016-2183
|
|
17
|
+
Block ciphers with small block sizes are susceptible to a class of attacks known as birthday attacks.
|
|
18
|
+
These attacks take advantage of multiple blocks which return identical ciphertext, known as collisions. The probability of collisions occurring becomes significant after a large number of blocks have been encrypted using the same key.
|
|
19
|
+
The SWEET32 attack is a specific birthday attack which reveals the XOR (exclusive-OR) between a fixed secret and known plaintext, thus allowing the secret to be determined.
|
|
20
|
+
This attack can be launched in a browser session by javascript code which makes repeated requests containing an authentication token and predictable headers.
|
|
21
|
+
Successful exploitation requires about 785 GB of data to be captured, and the attacker must be able to inject javascript into a web session and to sniff data from the network.
|
|
22
|
+
</problem>
|
|
23
|
+
<resolution>Disable ciphers which have a 64-bit block size, such as Triple-DES as follows:
|
|
24
|
+
Apache/OpenSSL: Upgrade to OpenSSL 1.1.0, which disables Triple-DES ciphers by default. Alternatively, upgrade to OpenSSL 1.0.1u or 1.0.2i or higher, which classify Triple-DES ciphers as MEDIUM, and insert !MEDIUM in the SSLCipherSuite directive in the appropriate web server configuration file.
|
|
25
|
+
IIS: Disable DES and 3DES ciphers as described in Microsoft Knowledge Base Article
|
|
26
|
+
[http://support.microsoft.com/kb/245030] 245030.
|
|
27
|
+
Note: disabling Triple-DES ciphers may affect compatibility with older clients.
|
|
28
|
+
</resolution>
|
|
29
|
+
<reference>For more information on the SWEET32 attack, see
|
|
30
|
+
[https://sweet32.info] sweet32.info and the
|
|
31
|
+
[https://bobcares.com/blog/how-to-fix-sweet32-birthday-attacks-vulnerability-cve-2016-2183/] Bobcares Blog.
|
|
32
|
+
</reference>
|
|
33
|
+
<vuln_details>Service: 587:TCP
|
|
34
|
+
Server accepted TLS 1.0 64-bit block size cipher: TLS_RSA_WITH_3DES_EDE_CBC_SHA </vuln_details>
|
|
35
|
+
</vulnerability>
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
#[Title]#
|
|
2
|
+
%vulnerability.description%
|
|
3
|
+
|
|
4
|
+
#[Host Name]#
|
|
5
|
+
%vulnerability.hostname%
|
|
6
|
+
|
|
7
|
+
#[IP Address]#
|
|
8
|
+
%vulnerability.ipaddr%
|
|
9
|
+
|
|
10
|
+
#[Host Type]#
|
|
11
|
+
%vulnerability.hosttype%
|
|
12
|
+
|
|
13
|
+
#[Scan Time]#
|
|
14
|
+
%vulnerability.scan_time%
|
|
15
|
+
|
|
16
|
+
#[Status]#
|
|
17
|
+
%vulnerability.status%
|
|
18
|
+
|
|
19
|
+
#[Severity]#
|
|
20
|
+
%vulnerability.severity%
|
|
21
|
+
|
|
22
|
+
#[CVE]#
|
|
23
|
+
%vulnerability.cve%
|
|
24
|
+
|
|
25
|
+
#[CVSS Base Score]#
|
|
26
|
+
%vulnerability.cvss_base_score%
|
|
27
|
+
|
|
28
|
+
#[Impact]#
|
|
29
|
+
%vulnerability.impact%
|
|
30
|
+
|
|
31
|
+
#[Background]#
|
|
32
|
+
%vulnerability.background%
|
|
33
|
+
|
|
34
|
+
#[Problem]#
|
|
35
|
+
%vulnerability.problem%
|
|
36
|
+
|
|
37
|
+
#[Resolution]#
|
|
38
|
+
%vulnerability.resolution%
|
|
39
|
+
|
|
40
|
+
#[Reference]#
|
|
41
|
+
%vulnerability.reference%
|
metadata
ADDED
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: dradis-saint
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 3.18.0
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- Daniel Martin
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: bin
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2020-07-22 00:00:00.000000000 Z
|
|
12
|
+
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: dradis-plugins
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - "~>"
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '3.8'
|
|
20
|
+
type: :runtime
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - "~>"
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '3.8'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: nokogiri
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - ">="
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '0'
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - ">="
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '0'
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
name: rake
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - "~>"
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '13.0'
|
|
48
|
+
type: :runtime
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - "~>"
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: '13.0'
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: bundler
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
|
+
requirements:
|
|
59
|
+
- - "~>"
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: '1.6'
|
|
62
|
+
type: :development
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - "~>"
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: '1.6'
|
|
69
|
+
- !ruby/object:Gem::Dependency
|
|
70
|
+
name: combustion
|
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
|
72
|
+
requirements:
|
|
73
|
+
- - "~>"
|
|
74
|
+
- !ruby/object:Gem::Version
|
|
75
|
+
version: 0.6.0
|
|
76
|
+
type: :runtime
|
|
77
|
+
prerelease: false
|
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
+
requirements:
|
|
80
|
+
- - "~>"
|
|
81
|
+
- !ruby/object:Gem::Version
|
|
82
|
+
version: 0.6.0
|
|
83
|
+
- !ruby/object:Gem::Dependency
|
|
84
|
+
name: rspec-rails
|
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
|
86
|
+
requirements:
|
|
87
|
+
- - ">="
|
|
88
|
+
- !ruby/object:Gem::Version
|
|
89
|
+
version: '0'
|
|
90
|
+
type: :runtime
|
|
91
|
+
prerelease: false
|
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
93
|
+
requirements:
|
|
94
|
+
- - ">="
|
|
95
|
+
- !ruby/object:Gem::Version
|
|
96
|
+
version: '0'
|
|
97
|
+
description: This add-on allows you to upload and parse reports from Saint.
|
|
98
|
+
email:
|
|
99
|
+
- etd@nomejortu.com
|
|
100
|
+
executables: []
|
|
101
|
+
extensions: []
|
|
102
|
+
extra_rdoc_files: []
|
|
103
|
+
files:
|
|
104
|
+
- ".github/issue_template.md"
|
|
105
|
+
- ".github/pull_request_template.md"
|
|
106
|
+
- ".gitignore"
|
|
107
|
+
- CHANGELOG.md
|
|
108
|
+
- CONTRIBUTING.md
|
|
109
|
+
- Gemfile
|
|
110
|
+
- LICENSE
|
|
111
|
+
- README.md
|
|
112
|
+
- Rakefile
|
|
113
|
+
- dradis-saint.gemspec
|
|
114
|
+
- lib/dradis-saint.rb
|
|
115
|
+
- lib/dradis/plugins/saint.rb
|
|
116
|
+
- lib/dradis/plugins/saint/engine.rb
|
|
117
|
+
- lib/dradis/plugins/saint/field_processor.rb
|
|
118
|
+
- lib/dradis/plugins/saint/gem_version.rb
|
|
119
|
+
- lib/dradis/plugins/saint/importer.rb
|
|
120
|
+
- lib/dradis/plugins/saint/version.rb
|
|
121
|
+
- lib/saint/base.rb
|
|
122
|
+
- lib/saint/evidence.rb
|
|
123
|
+
- lib/saint/vulnerability.rb
|
|
124
|
+
- lib/tasks/thorfile.rb
|
|
125
|
+
- spec/dradis/plugins/saint/field_processor_spec.rb
|
|
126
|
+
- spec/dradis/plugins/saint/importer_spec.rb
|
|
127
|
+
- spec/fixtures/files/evidence-01.xml
|
|
128
|
+
- spec/fixtures/files/full_report.xml
|
|
129
|
+
- spec/fixtures/files/host-01.xml
|
|
130
|
+
- spec/fixtures/files/saint_metasploitable_sample.xml
|
|
131
|
+
- spec/fixtures/files/vulnerability-01.xml
|
|
132
|
+
- spec/saint/evidence_spec.rb
|
|
133
|
+
- spec/saint/host_spec.rb
|
|
134
|
+
- spec/saint/vulnerability_spec.rb
|
|
135
|
+
- spec/spec_helper.rb
|
|
136
|
+
- spec/xml_element.rb
|
|
137
|
+
- templates/evidence.fields
|
|
138
|
+
- templates/evidence.sample
|
|
139
|
+
- templates/evidence.template
|
|
140
|
+
- templates/vulnerability.fields
|
|
141
|
+
- templates/vulnerability.sample
|
|
142
|
+
- templates/vulnerability.template
|
|
143
|
+
homepage: http://dradisframework.org
|
|
144
|
+
licenses:
|
|
145
|
+
- GPL-2
|
|
146
|
+
metadata: {}
|
|
147
|
+
post_install_message:
|
|
148
|
+
rdoc_options: []
|
|
149
|
+
require_paths:
|
|
150
|
+
- lib
|
|
151
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
152
|
+
requirements:
|
|
153
|
+
- - ">="
|
|
154
|
+
- !ruby/object:Gem::Version
|
|
155
|
+
version: '0'
|
|
156
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
157
|
+
requirements:
|
|
158
|
+
- - ">="
|
|
159
|
+
- !ruby/object:Gem::Version
|
|
160
|
+
version: '0'
|
|
161
|
+
requirements: []
|
|
162
|
+
rubygems_version: 3.1.2
|
|
163
|
+
signing_key:
|
|
164
|
+
specification_version: 4
|
|
165
|
+
summary: Saint upload add-on for Dradis Framework.
|
|
166
|
+
test_files: []
|