risu 1.8.3 → 1.8.4
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 +5 -5
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/Gemfile.lock +159 -0
- data/LICENSE +1 -1
- data/README.markdown +2 -5
- data/Rakefile +1 -1
- data/bin/risu +1 -1
- data/docs/NEWS.markdown +3 -0
- data/lib/risu.rb +2 -2
- data/lib/risu/base.rb +1 -1
- data/lib/risu/base/graph_template_helper.rb +1 -1
- data/lib/risu/base/host_template_helper.rb +2 -1
- data/lib/risu/base/malware_template_helper.rb +1 -1
- data/lib/risu/base/post_process_base.rb +7 -4
- data/lib/risu/base/post_process_manager.rb +1 -1
- data/lib/risu/base/scan_helper.rb +1 -1
- data/lib/risu/base/schema.rb +10 -3
- data/lib/risu/base/shares_template_helper.rb +1 -1
- data/lib/risu/base/template_base.rb +1 -1
- data/lib/risu/base/template_helper.rb +1 -1
- data/lib/risu/base/template_manager.rb +1 -1
- data/lib/risu/base/templater.rb +1 -1
- data/lib/risu/cli.rb +1 -1
- data/lib/risu/cli/application.rb +16 -16
- data/lib/risu/cli/banner.rb +1 -1
- data/lib/risu/exceptions.rb +1 -1
- data/lib/risu/exceptions/invaliddocument.rb +1 -1
- data/lib/risu/graphs.rb +1 -1
- data/lib/risu/graphs/top_vuln_graph.rb +1 -1
- data/lib/risu/graphs/windows_os_graph.rb +1 -1
- data/lib/risu/models.rb +2 -1
- data/lib/risu/models/attachment.rb +1 -1
- data/lib/risu/models/familyselection.rb +1 -1
- data/lib/risu/models/host.rb +34 -2
- data/lib/risu/models/hostproperty.rb +1 -1
- data/lib/risu/models/individualpluginselection.rb +1 -1
- data/lib/risu/models/item.rb +248 -20
- data/lib/risu/models/nessuspluginmetadata.rb +28 -0
- data/lib/risu/models/patch.rb +1 -1
- data/lib/risu/models/plugin.rb +1 -1
- data/lib/risu/models/pluginspreference.rb +1 -1
- data/lib/risu/models/policy.rb +1 -1
- data/lib/risu/models/reference.rb +1 -1
- data/lib/risu/models/report.rb +1 -1
- data/lib/risu/models/serverpreference.rb +1 -1
- data/lib/risu/models/servicedescription.rb +1 -1
- data/lib/risu/models/version.rb +1 -1
- data/lib/risu/parsers.rb +1 -1
- data/lib/risu/parsers/nessus/nessus_document.rb +1 -1
- data/lib/risu/parsers/nessus/nessus_sax_listener.rb +3 -2
- data/lib/risu/parsers/nessus/postprocess.rb +1 -1
- data/lib/risu/parsers/nessus/postprocess/7zip.rb +6 -4
- data/lib/risu/parsers/nessus/postprocess/adobe_acrobat.rb +48 -54
- data/lib/risu/parsers/nessus/postprocess/adobe_air.rb +58 -63
- data/lib/risu/parsers/nessus/postprocess/adobe_coldfusion.rb +47 -0
- data/lib/risu/parsers/nessus/postprocess/{shockwave.rb → adobe_creative_desktop.rb} +9 -34
- data/lib/risu/parsers/nessus/postprocess/adobe_flash_player.rb +175 -0
- data/lib/risu/parsers/nessus/postprocess/adobe_reader.rb +73 -55
- data/lib/risu/parsers/nessus/postprocess/adobe_shockwave_player.rb +74 -0
- data/lib/risu/parsers/nessus/postprocess/apache.rb +38 -33
- data/lib/risu/parsers/nessus/postprocess/apache_tomcat.rb +8 -10
- data/lib/risu/parsers/nessus/postprocess/apple_icloud.rb +47 -0
- data/lib/risu/parsers/nessus/postprocess/apple_itunes.rb +23 -17
- data/lib/risu/parsers/nessus/postprocess/apple_quicktime.rb +38 -32
- data/lib/risu/parsers/nessus/postprocess/artifex_ghostscript.rb +49 -0
- data/lib/risu/parsers/nessus/postprocess/blackberry_enterprise_server.rb +10 -14
- data/lib/risu/parsers/nessus/postprocess/ca_brightstor_arcserve.rb +10 -10
- data/lib/risu/parsers/nessus/postprocess/cisco_anyconnect.rb +18 -20
- data/lib/risu/parsers/nessus/postprocess/cisco_ios.rb +25 -15
- data/lib/risu/parsers/nessus/postprocess/cisco_telepresence.rb +45 -0
- data/lib/risu/parsers/nessus/postprocess/core_ftp.rb +6 -6
- data/lib/risu/parsers/nessus/postprocess/db2.rb +7 -9
- data/lib/risu/parsers/nessus/postprocess/dell_idrac.rb +49 -0
- data/lib/risu/parsers/nessus/postprocess/downgrade_plugins.rb +4 -2
- data/lib/risu/parsers/nessus/postprocess/dropbear_ssh.rb +7 -6
- data/lib/risu/parsers/nessus/postprocess/filezilla.rb +4 -6
- data/lib/risu/parsers/nessus/postprocess/firefox.rb +113 -71
- data/lib/risu/parsers/nessus/postprocess/flexnet.rb +3 -3
- data/lib/risu/parsers/nessus/postprocess/foxit_phantom_pdf.rb +10 -3
- data/lib/risu/parsers/nessus/postprocess/foxit_reader.rb +13 -12
- data/lib/risu/parsers/nessus/postprocess/google_chrome.rb +34 -6
- data/lib/risu/parsers/nessus/postprocess/hp_system_mgt_homepage.rb +3 -3
- data/lib/risu/parsers/nessus/postprocess/iLo.rb +50 -0
- data/lib/risu/parsers/nessus/postprocess/intel_mgt_engine.rb +47 -0
- data/lib/risu/parsers/nessus/postprocess/irfanview.rb +2 -2
- data/lib/risu/parsers/nessus/postprocess/java.rb +70 -64
- data/lib/risu/parsers/nessus/postprocess/libreoffice.rb +2 -2
- data/lib/risu/parsers/nessus/postprocess/microsoft_office.rb +73 -0
- data/lib/risu/parsers/nessus/postprocess/microsoft_visual_studio.rb +47 -0
- data/lib/risu/parsers/nessus/postprocess/microsoft_windows.rb +1312 -0
- data/lib/risu/parsers/nessus/postprocess/mongo_db.rb +46 -0
- data/lib/risu/parsers/nessus/postprocess/mozzila_thunderbird.rb +49 -0
- data/lib/risu/parsers/nessus/postprocess/normalize_plugin_names.rb +5 -2
- data/lib/risu/parsers/nessus/postprocess/openoffice.rb +14 -11
- data/lib/risu/parsers/nessus/postprocess/openssh.rb +3 -3
- data/lib/risu/parsers/nessus/postprocess/openssl.rb +58 -39
- data/lib/risu/parsers/nessus/postprocess/oracle_database.rb +3 -3
- data/lib/risu/parsers/nessus/postprocess/php.rb +94 -69
- data/lib/risu/parsers/nessus/postprocess/post_process.rb +1 -1
- data/lib/risu/parsers/nessus/postprocess/putty.rb +47 -0
- data/lib/risu/parsers/nessus/postprocess/real_player.rb +3 -3
- data/lib/risu/parsers/nessus/postprocess/risk_score.rb +1 -1
- data/lib/risu/parsers/nessus/postprocess/root_cause.rb +16 -3
- data/lib/risu/parsers/nessus/postprocess/samba.rb +46 -0
- data/lib/risu/parsers/nessus/postprocess/servu.rb +4 -4
- data/lib/risu/parsers/nessus/postprocess/sigplus_pro.rb +3 -3
- data/lib/risu/parsers/nessus/postprocess/skype.rb +4 -3
- data/lib/risu/parsers/nessus/postprocess/solarwinds_dameware.rb +48 -0
- data/lib/risu/parsers/nessus/postprocess/symantec_endpoint.rb +4 -3
- data/lib/risu/parsers/nessus/postprocess/symantec_pcanywhere.rb +3 -3
- data/lib/risu/parsers/nessus/postprocess/tenable_nessus.rb +47 -0
- data/lib/risu/parsers/nessus/postprocess/timbuktu.rb +2 -2
- data/lib/risu/parsers/nessus/postprocess/vlc.rb +4 -3
- data/lib/risu/parsers/nessus/postprocess/vmware_esxi.rb +64 -54
- data/lib/risu/parsers/nessus/postprocess/vmware_player.rb +3 -3
- data/lib/risu/parsers/nessus/postprocess/vmware_vcenter.rb +11 -5
- data/lib/risu/parsers/nessus/postprocess/vmware_vsphere_client.rb +7 -6
- data/lib/risu/parsers/nessus/postprocess/winscp.rb +7 -8
- data/lib/risu/parsers/nessus/postprocess/wireshark.rb +73 -51
- data/lib/risu/parsers/nexpose/nexpose_document.rb +1 -1
- data/lib/risu/parsers/nexpose/simple_nexpose.rb +1 -1
- data/lib/risu/renderers.rb +1 -1
- data/lib/risu/renderers/csvrenderer.rb +1 -1
- data/lib/risu/renderers/nilrenderer.rb +1 -1
- data/lib/risu/renderers/pdfrenderer.rb +1 -1
- data/lib/risu/template_helpers.rb +1 -1
- data/lib/risu/templates/assets.rb +1 -1
- data/lib/risu/templates/authentication_summary.rb +1 -1
- data/lib/risu/templates/cover_sheet.rb +1 -1
- data/lib/risu/templates/exec_summary.rb +1 -1
- data/lib/risu/templates/executive_summary_detailed.rb +1 -1
- data/lib/risu/templates/exploitablity_summary.rb +1 -1
- data/lib/risu/templates/failed_audits.rb +1 -1
- data/lib/risu/templates/finding_statistics.rb +1 -1
- data/lib/risu/templates/findings_host.rb +1 -1
- data/lib/risu/templates/findings_summary.rb +1 -1
- data/lib/risu/templates/findings_summary_with_pluginid.rb +1 -1
- data/lib/risu/templates/graphs.rb +1 -1
- data/lib/risu/templates/host_findings_csv.rb +1 -1
- data/lib/risu/templates/host_summary.rb +1 -1
- data/lib/risu/templates/malicious_process_detection.rb +1 -1
- data/lib/risu/templates/missing_root_causes.rb +1 -1
- data/lib/risu/templates/ms_patch_summary.rb +1 -1
- data/lib/risu/templates/ms_update_summary.rb +1 -1
- data/lib/risu/templates/ms_wsus_findings.rb +1 -1
- data/lib/risu/templates/notable.rb +1 -1
- data/lib/risu/templates/notable_detailed.rb +1 -1
- data/lib/risu/templates/pci_compliance.rb +1 -1
- data/lib/risu/templates/rollup_summary.rb +82 -0
- data/lib/risu/templates/stig_findings_summary.rb +1 -1
- data/lib/risu/templates/talking_points.rb +1 -1
- data/lib/risu/templates/technical_findings.rb +1 -1
- data/lib/risu/templates/template.rb +1 -1
- data/lib/risu/templates/top_25.rb +1 -1
- data/lib/risu/version.rb +2 -2
- data/risu.gemspec +5 -5
- metadata +59 -56
- metadata.gz.sig +0 -0
- data/lib/risu/parsers/nessus/postprocess/flash_player.rb +0 -145
- data/lib/risu/parsers/nessus/postprocess/windows.rb +0 -976
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: cf81464689cb6d03b39783e15cc40e8ad075520f0132620137074b0275cbac91
|
|
4
|
+
data.tar.gz: 37fc4a1c4decf0fde09c338b1acee60709aa2776678c8d2ae58400d463ad8e29
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz: '
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: '097239a0d3034bf84c388a8c03d5c6a875bb1672915322c92225c2cf3830068c870819853386e3aac3971137472992187bec038004636dd0e6f513b1f53ac3a3'
|
|
7
|
+
data.tar.gz: f0d38ea30edf76af93594178a010bc059066169612a61a6438772bcca895f3bc7384c90f8da13b4115bc5d3fa94b15ffc290d875c74f6b9a3802ba349986fe53
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data.tar.gz.sig
CHANGED
|
Binary file
|
data/Gemfile.lock
ADDED
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
risu (1.8.4)
|
|
5
|
+
gruff (~> 0.7, >= 0.7.0)
|
|
6
|
+
libxml-ruby (~> 2.9, >= 2.9.0)
|
|
7
|
+
nokogiri (~> 1.7, >= 1.7.0.1)
|
|
8
|
+
prawn (~> 2.1, >= 2.1.0)
|
|
9
|
+
prawn-table (~> 0.2, >= 0.2.2)
|
|
10
|
+
rails (~> 5.0, >= 5.0.1)
|
|
11
|
+
rmagick (~> 2.15, >= 2.15.4)
|
|
12
|
+
sqlite3 (~> 1.3, >= 1.3.11)
|
|
13
|
+
|
|
14
|
+
GEM
|
|
15
|
+
remote: https://rubygems.org/
|
|
16
|
+
specs:
|
|
17
|
+
actioncable (5.2.3)
|
|
18
|
+
actionpack (= 5.2.3)
|
|
19
|
+
nio4r (~> 2.0)
|
|
20
|
+
websocket-driver (>= 0.6.1)
|
|
21
|
+
actionmailer (5.2.3)
|
|
22
|
+
actionpack (= 5.2.3)
|
|
23
|
+
actionview (= 5.2.3)
|
|
24
|
+
activejob (= 5.2.3)
|
|
25
|
+
mail (~> 2.5, >= 2.5.4)
|
|
26
|
+
rails-dom-testing (~> 2.0)
|
|
27
|
+
actionpack (5.2.3)
|
|
28
|
+
actionview (= 5.2.3)
|
|
29
|
+
activesupport (= 5.2.3)
|
|
30
|
+
rack (~> 2.0)
|
|
31
|
+
rack-test (>= 0.6.3)
|
|
32
|
+
rails-dom-testing (~> 2.0)
|
|
33
|
+
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
|
34
|
+
actionview (5.2.3)
|
|
35
|
+
activesupport (= 5.2.3)
|
|
36
|
+
builder (~> 3.1)
|
|
37
|
+
erubi (~> 1.4)
|
|
38
|
+
rails-dom-testing (~> 2.0)
|
|
39
|
+
rails-html-sanitizer (~> 1.0, >= 1.0.3)
|
|
40
|
+
activejob (5.2.3)
|
|
41
|
+
activesupport (= 5.2.3)
|
|
42
|
+
globalid (>= 0.3.6)
|
|
43
|
+
activemodel (5.2.3)
|
|
44
|
+
activesupport (= 5.2.3)
|
|
45
|
+
activerecord (5.2.3)
|
|
46
|
+
activemodel (= 5.2.3)
|
|
47
|
+
activesupport (= 5.2.3)
|
|
48
|
+
arel (>= 9.0)
|
|
49
|
+
activestorage (5.2.3)
|
|
50
|
+
actionpack (= 5.2.3)
|
|
51
|
+
activerecord (= 5.2.3)
|
|
52
|
+
marcel (~> 0.3.1)
|
|
53
|
+
activesupport (5.2.3)
|
|
54
|
+
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
55
|
+
i18n (>= 0.7, < 2)
|
|
56
|
+
minitest (~> 5.1)
|
|
57
|
+
tzinfo (~> 1.1)
|
|
58
|
+
arel (9.0.0)
|
|
59
|
+
builder (3.2.3)
|
|
60
|
+
concurrent-ruby (1.1.5)
|
|
61
|
+
crass (1.0.5)
|
|
62
|
+
docile (1.3.1)
|
|
63
|
+
erubi (1.9.0)
|
|
64
|
+
globalid (0.4.2)
|
|
65
|
+
activesupport (>= 4.2.0)
|
|
66
|
+
gruff (0.7.0)
|
|
67
|
+
rmagick (~> 2.13, >= 2.13.4)
|
|
68
|
+
i18n (1.7.0)
|
|
69
|
+
concurrent-ruby (~> 1.0)
|
|
70
|
+
json (2.1.0)
|
|
71
|
+
libxml-ruby (2.9.0)
|
|
72
|
+
loofah (2.3.0)
|
|
73
|
+
crass (~> 1.0.2)
|
|
74
|
+
nokogiri (>= 1.5.9)
|
|
75
|
+
mail (2.7.1)
|
|
76
|
+
mini_mime (>= 0.1.1)
|
|
77
|
+
marcel (0.3.3)
|
|
78
|
+
mimemagic (~> 0.3.2)
|
|
79
|
+
method_source (0.9.2)
|
|
80
|
+
mimemagic (0.3.3)
|
|
81
|
+
mini_mime (1.0.2)
|
|
82
|
+
mini_portile2 (2.4.0)
|
|
83
|
+
minitest (5.11.3)
|
|
84
|
+
nio4r (2.5.2)
|
|
85
|
+
nokogiri (1.10.4)
|
|
86
|
+
mini_portile2 (~> 2.4.0)
|
|
87
|
+
pdf-core (0.7.0)
|
|
88
|
+
power_assert (1.1.3)
|
|
89
|
+
prawn (2.2.2)
|
|
90
|
+
pdf-core (~> 0.7.0)
|
|
91
|
+
ttfunk (~> 1.5)
|
|
92
|
+
prawn-table (0.2.2)
|
|
93
|
+
prawn (>= 1.3.0, < 3.0.0)
|
|
94
|
+
rack (2.0.7)
|
|
95
|
+
rack-test (1.1.0)
|
|
96
|
+
rack (>= 1.0, < 3)
|
|
97
|
+
rails (5.2.3)
|
|
98
|
+
actioncable (= 5.2.3)
|
|
99
|
+
actionmailer (= 5.2.3)
|
|
100
|
+
actionpack (= 5.2.3)
|
|
101
|
+
actionview (= 5.2.3)
|
|
102
|
+
activejob (= 5.2.3)
|
|
103
|
+
activemodel (= 5.2.3)
|
|
104
|
+
activerecord (= 5.2.3)
|
|
105
|
+
activestorage (= 5.2.3)
|
|
106
|
+
activesupport (= 5.2.3)
|
|
107
|
+
bundler (>= 1.3.0)
|
|
108
|
+
railties (= 5.2.3)
|
|
109
|
+
sprockets-rails (>= 2.0.0)
|
|
110
|
+
rails-dom-testing (2.0.3)
|
|
111
|
+
activesupport (>= 4.2.0)
|
|
112
|
+
nokogiri (>= 1.6)
|
|
113
|
+
rails-html-sanitizer (1.3.0)
|
|
114
|
+
loofah (~> 2.3)
|
|
115
|
+
railties (5.2.3)
|
|
116
|
+
actionpack (= 5.2.3)
|
|
117
|
+
activesupport (= 5.2.3)
|
|
118
|
+
method_source
|
|
119
|
+
rake (>= 0.8.7)
|
|
120
|
+
thor (>= 0.19.0, < 2.0)
|
|
121
|
+
rake (13.0.0)
|
|
122
|
+
rmagick (2.16.0)
|
|
123
|
+
simplecov (0.16.1)
|
|
124
|
+
docile (~> 1.1)
|
|
125
|
+
json (>= 1.8, < 3)
|
|
126
|
+
simplecov-html (~> 0.10.0)
|
|
127
|
+
simplecov-html (0.10.2)
|
|
128
|
+
sprockets (4.0.0)
|
|
129
|
+
concurrent-ruby (~> 1.0)
|
|
130
|
+
rack (> 1, < 3)
|
|
131
|
+
sprockets-rails (3.2.1)
|
|
132
|
+
actionpack (>= 4.0)
|
|
133
|
+
activesupport (>= 4.0)
|
|
134
|
+
sprockets (>= 3.0.0)
|
|
135
|
+
sqlite3 (1.4.1)
|
|
136
|
+
test-unit (3.2.8)
|
|
137
|
+
power_assert
|
|
138
|
+
thor (0.20.3)
|
|
139
|
+
thread_safe (0.3.6)
|
|
140
|
+
ttfunk (1.5.1)
|
|
141
|
+
tzinfo (1.2.5)
|
|
142
|
+
thread_safe (~> 0.1)
|
|
143
|
+
websocket-driver (0.7.1)
|
|
144
|
+
websocket-extensions (>= 0.1.0)
|
|
145
|
+
websocket-extensions (0.1.4)
|
|
146
|
+
yard (0.9.20)
|
|
147
|
+
|
|
148
|
+
PLATFORMS
|
|
149
|
+
ruby
|
|
150
|
+
|
|
151
|
+
DEPENDENCIES
|
|
152
|
+
minitest (~> 5.0, >= 5.9)
|
|
153
|
+
risu!
|
|
154
|
+
simplecov (~> 0.15, >= 0.15)
|
|
155
|
+
test-unit (~> 3.2, >= 3.2.4)
|
|
156
|
+
yard (>= 0.9.20)
|
|
157
|
+
|
|
158
|
+
BUNDLED WITH
|
|
159
|
+
1.16.1
|
data/LICENSE
CHANGED
data/README.markdown
CHANGED
|
@@ -137,8 +137,5 @@ The templates are written in ruby using [prawn](http://prawn.majesticseacreature
|
|
|
137
137
|
# Contributing
|
|
138
138
|
If you would like to contribute templates/bug fixes/etc to risu. The easiest way is to fork the project on [github](http://github.com/hammackj/risu) and make the changes in your fork and the submit a pull request to the project on the dev branch. Please include unit tests for anything non trivial.
|
|
139
139
|
|
|
140
|
-
# Issues
|
|
141
|
-
If you have any problems, bugs or feature requests please use the [github issue tracker](http://github.com/hammackj/risu/issues).
|
|
142
|
-
|
|
143
|
-
# Contact
|
|
144
|
-
You can reach me at jacob.hammack[at]hammackj[dot]com. You can also contact me on IRC as hammackj on irc.freenode.net, #risu
|
|
140
|
+
# Contact / Issues
|
|
141
|
+
If you have any problems, bugs, questions or feature requests please use the [github issue tracker](http://github.com/hammackj/risu/issues).
|
data/Rakefile
CHANGED
data/bin/risu
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env ruby -W0
|
|
2
2
|
|
|
3
|
-
# Copyright (c) 2010-
|
|
3
|
+
# Copyright (c) 2010-2020 Jacob Hammack.
|
|
4
4
|
#
|
|
5
5
|
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
# of this software and associated documentation files (the "Software"), to deal
|
data/docs/NEWS.markdown
CHANGED
data/lib/risu.rb
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright (c) 2010-
|
|
1
|
+
# Copyright (c) 2010-2020 Jacob Hammack.
|
|
2
2
|
#
|
|
3
3
|
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
4
|
# of this software and associated documentation files (the "Software"), to deal
|
|
@@ -41,7 +41,7 @@ require 'gruff'
|
|
|
41
41
|
require 'prawn'
|
|
42
42
|
require 'prawn/table'
|
|
43
43
|
require 'stringio'
|
|
44
|
-
require 'mysql2'
|
|
44
|
+
#require 'mysql2'
|
|
45
45
|
require 'irb'
|
|
46
46
|
require 'sqlite3'
|
|
47
47
|
require 'nokogiri'
|
data/lib/risu/base.rb
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright (c) 2010-
|
|
1
|
+
# Copyright (c) 2010-2020 Jacob Hammack.
|
|
2
2
|
#
|
|
3
3
|
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
4
|
# of this software and associated documentation files (the "Software"), to deal
|
|
@@ -62,6 +62,7 @@ module Risu
|
|
|
62
62
|
unsupported_os("Unsupported Windows 2000 Installations", "Microsoft Windows 2000 Unsupported Installation Detection")
|
|
63
63
|
unsupported_os("Unsupported Windows XP Installations", "Microsoft Windows XP Unsupported Installation Detection")
|
|
64
64
|
unsupported_os("Unsupported Windows 2003 Installations", "Microsoft Windows Server 2003 Unsupported Installation Detection")
|
|
65
|
+
unsupported_os("Unsupported Windows 8 Installations", "Microsoft Windows 8 Unsupported Installation Detection")
|
|
65
66
|
|
|
66
67
|
text "\n"
|
|
67
68
|
end
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright (c) 2010-
|
|
1
|
+
# Copyright (c) 2010-2020 Jacob Hammack.
|
|
2
2
|
#
|
|
3
3
|
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
4
|
# of this software and associated documentation files (the "Software"), to deal
|
|
@@ -171,6 +171,7 @@ module Risu
|
|
|
171
171
|
item.port = 0
|
|
172
172
|
item.severity = severity
|
|
173
173
|
item.plugin_name = @info[:item_name]
|
|
174
|
+
item.rollup_finding = true
|
|
174
175
|
|
|
175
176
|
item.save
|
|
176
177
|
end
|
|
@@ -186,7 +187,7 @@ module Risu
|
|
|
186
187
|
|
|
187
188
|
#
|
|
188
189
|
def calculate_severity current_severity, severity
|
|
189
|
-
if severity
|
|
190
|
+
if severity > current_severity
|
|
190
191
|
return severity
|
|
191
192
|
else
|
|
192
193
|
return current_severity
|
|
@@ -204,15 +205,17 @@ module Risu
|
|
|
204
205
|
create_plugin()
|
|
205
206
|
end
|
|
206
207
|
|
|
208
|
+
finding_severity = 0
|
|
209
|
+
|
|
207
210
|
Host.all.each do |host|
|
|
208
211
|
if !has_host_findings(host.id)
|
|
209
212
|
next
|
|
210
213
|
end
|
|
211
214
|
|
|
212
|
-
|
|
213
|
-
|
|
215
|
+
# Downgrade Nessus findings to -1, to replace with rollup
|
|
214
216
|
@info[:plugin_ids].each do |plugin_id|
|
|
215
217
|
Item.where(:plugin_id => plugin_id).each do |item|
|
|
218
|
+
|
|
216
219
|
severity = item.severity
|
|
217
220
|
item.real_severity = severity
|
|
218
221
|
item.severity = -1
|
data/lib/risu/base/schema.rb
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright (c) 2010-
|
|
1
|
+
# Copyright (c) 2010-2020 Jacob Hammack.
|
|
2
2
|
#
|
|
3
3
|
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
4
|
# of this software and associated documentation files (the "Software"), to deal
|
|
@@ -65,7 +65,7 @@ module Risu
|
|
|
65
65
|
create_table :hosts do |t|
|
|
66
66
|
t.integer :report_id
|
|
67
67
|
t.string :name
|
|
68
|
-
t.
|
|
68
|
+
t.text :os, limit: 4294967295
|
|
69
69
|
t.text :mac, limit: 4294967295
|
|
70
70
|
t.datetime :start
|
|
71
71
|
t.datetime :end
|
|
@@ -106,10 +106,11 @@ module Risu
|
|
|
106
106
|
t.text :cm_compliance_solution, limit: 4294967295
|
|
107
107
|
t.integer :real_severity
|
|
108
108
|
t.integer :risk_score
|
|
109
|
+
t.boolean :rollup_finding, :default => false
|
|
109
110
|
end
|
|
110
111
|
|
|
111
112
|
create_table :plugins do |t|
|
|
112
|
-
t.
|
|
113
|
+
t.text :plugin_name, limit: 4294967295
|
|
113
114
|
t.string :family_name
|
|
114
115
|
t.text :description, limit: 4294967295
|
|
115
116
|
t.string :plugin_version
|
|
@@ -190,6 +191,11 @@ module Risu
|
|
|
190
191
|
t.string :value
|
|
191
192
|
end
|
|
192
193
|
|
|
194
|
+
create_table :nessus_plugin_metadata do |t|
|
|
195
|
+
t.integer :plugin_id
|
|
196
|
+
t.text :plugin_name, limit: 4294967295
|
|
197
|
+
end
|
|
198
|
+
|
|
193
199
|
#Index's for speed increases, possibly have these apply after parsing @TODO
|
|
194
200
|
add_index :items, :host_id
|
|
195
201
|
add_index :items, :plugin_id
|
|
@@ -227,6 +233,7 @@ module Risu
|
|
|
227
233
|
drop_table :patches
|
|
228
234
|
drop_table :host_properties
|
|
229
235
|
drop_table :attachments
|
|
236
|
+
drop_table :nessus_plugin_metadata
|
|
230
237
|
end
|
|
231
238
|
end
|
|
232
239
|
end
|
data/lib/risu/base/templater.rb
CHANGED
data/lib/risu/cli.rb
CHANGED
data/lib/risu/cli/application.rb
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright (c) 2010-
|
|
1
|
+
# Copyright (c) 2010-2020 Jacob Hammack.
|
|
2
2
|
#
|
|
3
3
|
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
4
|
# of this software and associated documentation files (the "Software"), to deal
|
|
@@ -134,7 +134,7 @@ module Risu
|
|
|
134
134
|
exit
|
|
135
135
|
rescue ActiveRecord::AdapterNotFound => anf
|
|
136
136
|
puts "[!] Database adapter not found, please check your configuration file"
|
|
137
|
-
puts "#{
|
|
137
|
+
puts "#{anf.message}\n #{anf.backtrace}" if @options[:debug]
|
|
138
138
|
exit
|
|
139
139
|
rescue => e
|
|
140
140
|
puts "[!] Exception! #{e.message}"
|
|
@@ -175,10 +175,10 @@ module Risu
|
|
|
175
175
|
puts "[!] Database not found. Please check your configuration file"
|
|
176
176
|
puts "#{nde.message}\n #{nde.backtrace}" if @options[:debug]
|
|
177
177
|
exit
|
|
178
|
-
rescue Mysql2::Error => mse
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
178
|
+
#rescue Mysql2::Error => mse
|
|
179
|
+
# puts "[!] Unable to connect to MySQL. \"#{mse.message}\" Please check your configuration file"
|
|
180
|
+
# puts "#{mse.message}\n #{mse.backtrace}" if @options[:debug]
|
|
181
|
+
# exit
|
|
182
182
|
rescue SQLite3::Exception => se
|
|
183
183
|
puts "[!] Unable to open database. Please check your configuration file"
|
|
184
184
|
puts "#{se.message}\n #{se.backtrace}" if @options[:debug]
|
|
@@ -342,13 +342,13 @@ module Risu
|
|
|
342
342
|
puts opts.to_s + "\n"
|
|
343
343
|
exit
|
|
344
344
|
end
|
|
345
|
-
rescue OptionParser::AmbiguousOption
|
|
345
|
+
rescue OptionParser::AmbiguousOption
|
|
346
346
|
puts opts.to_s + "\n"
|
|
347
347
|
exit
|
|
348
|
-
rescue OptionParser::MissingArgument
|
|
348
|
+
rescue OptionParser::MissingArgument
|
|
349
349
|
puts opts.to_s + "\n"
|
|
350
350
|
exit
|
|
351
|
-
rescue OptionParser::InvalidOption
|
|
351
|
+
rescue OptionParser::InvalidOption
|
|
352
352
|
puts opts.to_s + "\n"
|
|
353
353
|
exit
|
|
354
354
|
end
|
|
@@ -432,7 +432,7 @@ module Risu
|
|
|
432
432
|
rescue Risu::Exceptions::InvalidDocument => id
|
|
433
433
|
puts "[!] #{id.message}"
|
|
434
434
|
next
|
|
435
|
-
rescue ActiveRecord::StatementInvalid
|
|
435
|
+
rescue ActiveRecord::StatementInvalid
|
|
436
436
|
puts "[!] Please run #{Risu::APP_NAME} --create-tables, to create the required database schema!"
|
|
437
437
|
exit
|
|
438
438
|
rescue => e
|
|
@@ -491,14 +491,14 @@ module Risu
|
|
|
491
491
|
|
|
492
492
|
printf "[*] Finished parsing %s. Parse took %.02f seconds\n", file, Time.now - tstart
|
|
493
493
|
puts nessus_doc.new_tags.uniq.join("\n") #@TODO add a verbose check
|
|
494
|
-
rescue Interrupt
|
|
494
|
+
rescue Interrupt
|
|
495
495
|
puts "[!] Parse canceled!"
|
|
496
496
|
exit(1)
|
|
497
|
-
rescue Mysql2::Error => m
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
497
|
+
#rescue Mysql2::Error => m
|
|
498
|
+
# if m.errno == 1146
|
|
499
|
+
# puts "[!] Error: Tables were not created. Please run #{Risu::APP_NAME} --create-tables"
|
|
500
|
+
# exit(1)
|
|
501
|
+
# end
|
|
502
502
|
rescue => e
|
|
503
503
|
puts "[!] #{e.message}\n #{e.backtrace.join("\n")}\n"
|
|
504
504
|
exit(1)
|