risu 1.8.3 → 1.8.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (161) hide show
  1. checksums.yaml +5 -5
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/Gemfile.lock +159 -0
  5. data/LICENSE +1 -1
  6. data/README.markdown +2 -5
  7. data/Rakefile +1 -1
  8. data/bin/risu +1 -1
  9. data/docs/NEWS.markdown +3 -0
  10. data/lib/risu.rb +2 -2
  11. data/lib/risu/base.rb +1 -1
  12. data/lib/risu/base/graph_template_helper.rb +1 -1
  13. data/lib/risu/base/host_template_helper.rb +2 -1
  14. data/lib/risu/base/malware_template_helper.rb +1 -1
  15. data/lib/risu/base/post_process_base.rb +7 -4
  16. data/lib/risu/base/post_process_manager.rb +1 -1
  17. data/lib/risu/base/scan_helper.rb +1 -1
  18. data/lib/risu/base/schema.rb +10 -3
  19. data/lib/risu/base/shares_template_helper.rb +1 -1
  20. data/lib/risu/base/template_base.rb +1 -1
  21. data/lib/risu/base/template_helper.rb +1 -1
  22. data/lib/risu/base/template_manager.rb +1 -1
  23. data/lib/risu/base/templater.rb +1 -1
  24. data/lib/risu/cli.rb +1 -1
  25. data/lib/risu/cli/application.rb +16 -16
  26. data/lib/risu/cli/banner.rb +1 -1
  27. data/lib/risu/exceptions.rb +1 -1
  28. data/lib/risu/exceptions/invaliddocument.rb +1 -1
  29. data/lib/risu/graphs.rb +1 -1
  30. data/lib/risu/graphs/top_vuln_graph.rb +1 -1
  31. data/lib/risu/graphs/windows_os_graph.rb +1 -1
  32. data/lib/risu/models.rb +2 -1
  33. data/lib/risu/models/attachment.rb +1 -1
  34. data/lib/risu/models/familyselection.rb +1 -1
  35. data/lib/risu/models/host.rb +34 -2
  36. data/lib/risu/models/hostproperty.rb +1 -1
  37. data/lib/risu/models/individualpluginselection.rb +1 -1
  38. data/lib/risu/models/item.rb +248 -20
  39. data/lib/risu/models/nessuspluginmetadata.rb +28 -0
  40. data/lib/risu/models/patch.rb +1 -1
  41. data/lib/risu/models/plugin.rb +1 -1
  42. data/lib/risu/models/pluginspreference.rb +1 -1
  43. data/lib/risu/models/policy.rb +1 -1
  44. data/lib/risu/models/reference.rb +1 -1
  45. data/lib/risu/models/report.rb +1 -1
  46. data/lib/risu/models/serverpreference.rb +1 -1
  47. data/lib/risu/models/servicedescription.rb +1 -1
  48. data/lib/risu/models/version.rb +1 -1
  49. data/lib/risu/parsers.rb +1 -1
  50. data/lib/risu/parsers/nessus/nessus_document.rb +1 -1
  51. data/lib/risu/parsers/nessus/nessus_sax_listener.rb +3 -2
  52. data/lib/risu/parsers/nessus/postprocess.rb +1 -1
  53. data/lib/risu/parsers/nessus/postprocess/7zip.rb +6 -4
  54. data/lib/risu/parsers/nessus/postprocess/adobe_acrobat.rb +48 -54
  55. data/lib/risu/parsers/nessus/postprocess/adobe_air.rb +58 -63
  56. data/lib/risu/parsers/nessus/postprocess/adobe_coldfusion.rb +47 -0
  57. data/lib/risu/parsers/nessus/postprocess/{shockwave.rb → adobe_creative_desktop.rb} +9 -34
  58. data/lib/risu/parsers/nessus/postprocess/adobe_flash_player.rb +175 -0
  59. data/lib/risu/parsers/nessus/postprocess/adobe_reader.rb +73 -55
  60. data/lib/risu/parsers/nessus/postprocess/adobe_shockwave_player.rb +74 -0
  61. data/lib/risu/parsers/nessus/postprocess/apache.rb +38 -33
  62. data/lib/risu/parsers/nessus/postprocess/apache_tomcat.rb +8 -10
  63. data/lib/risu/parsers/nessus/postprocess/apple_icloud.rb +47 -0
  64. data/lib/risu/parsers/nessus/postprocess/apple_itunes.rb +23 -17
  65. data/lib/risu/parsers/nessus/postprocess/apple_quicktime.rb +38 -32
  66. data/lib/risu/parsers/nessus/postprocess/artifex_ghostscript.rb +49 -0
  67. data/lib/risu/parsers/nessus/postprocess/blackberry_enterprise_server.rb +10 -14
  68. data/lib/risu/parsers/nessus/postprocess/ca_brightstor_arcserve.rb +10 -10
  69. data/lib/risu/parsers/nessus/postprocess/cisco_anyconnect.rb +18 -20
  70. data/lib/risu/parsers/nessus/postprocess/cisco_ios.rb +25 -15
  71. data/lib/risu/parsers/nessus/postprocess/cisco_telepresence.rb +45 -0
  72. data/lib/risu/parsers/nessus/postprocess/core_ftp.rb +6 -6
  73. data/lib/risu/parsers/nessus/postprocess/db2.rb +7 -9
  74. data/lib/risu/parsers/nessus/postprocess/dell_idrac.rb +49 -0
  75. data/lib/risu/parsers/nessus/postprocess/downgrade_plugins.rb +4 -2
  76. data/lib/risu/parsers/nessus/postprocess/dropbear_ssh.rb +7 -6
  77. data/lib/risu/parsers/nessus/postprocess/filezilla.rb +4 -6
  78. data/lib/risu/parsers/nessus/postprocess/firefox.rb +113 -71
  79. data/lib/risu/parsers/nessus/postprocess/flexnet.rb +3 -3
  80. data/lib/risu/parsers/nessus/postprocess/foxit_phantom_pdf.rb +10 -3
  81. data/lib/risu/parsers/nessus/postprocess/foxit_reader.rb +13 -12
  82. data/lib/risu/parsers/nessus/postprocess/google_chrome.rb +34 -6
  83. data/lib/risu/parsers/nessus/postprocess/hp_system_mgt_homepage.rb +3 -3
  84. data/lib/risu/parsers/nessus/postprocess/iLo.rb +50 -0
  85. data/lib/risu/parsers/nessus/postprocess/intel_mgt_engine.rb +47 -0
  86. data/lib/risu/parsers/nessus/postprocess/irfanview.rb +2 -2
  87. data/lib/risu/parsers/nessus/postprocess/java.rb +70 -64
  88. data/lib/risu/parsers/nessus/postprocess/libreoffice.rb +2 -2
  89. data/lib/risu/parsers/nessus/postprocess/microsoft_office.rb +73 -0
  90. data/lib/risu/parsers/nessus/postprocess/microsoft_visual_studio.rb +47 -0
  91. data/lib/risu/parsers/nessus/postprocess/microsoft_windows.rb +1312 -0
  92. data/lib/risu/parsers/nessus/postprocess/mongo_db.rb +46 -0
  93. data/lib/risu/parsers/nessus/postprocess/mozzila_thunderbird.rb +49 -0
  94. data/lib/risu/parsers/nessus/postprocess/normalize_plugin_names.rb +5 -2
  95. data/lib/risu/parsers/nessus/postprocess/openoffice.rb +14 -11
  96. data/lib/risu/parsers/nessus/postprocess/openssh.rb +3 -3
  97. data/lib/risu/parsers/nessus/postprocess/openssl.rb +58 -39
  98. data/lib/risu/parsers/nessus/postprocess/oracle_database.rb +3 -3
  99. data/lib/risu/parsers/nessus/postprocess/php.rb +94 -69
  100. data/lib/risu/parsers/nessus/postprocess/post_process.rb +1 -1
  101. data/lib/risu/parsers/nessus/postprocess/putty.rb +47 -0
  102. data/lib/risu/parsers/nessus/postprocess/real_player.rb +3 -3
  103. data/lib/risu/parsers/nessus/postprocess/risk_score.rb +1 -1
  104. data/lib/risu/parsers/nessus/postprocess/root_cause.rb +16 -3
  105. data/lib/risu/parsers/nessus/postprocess/samba.rb +46 -0
  106. data/lib/risu/parsers/nessus/postprocess/servu.rb +4 -4
  107. data/lib/risu/parsers/nessus/postprocess/sigplus_pro.rb +3 -3
  108. data/lib/risu/parsers/nessus/postprocess/skype.rb +4 -3
  109. data/lib/risu/parsers/nessus/postprocess/solarwinds_dameware.rb +48 -0
  110. data/lib/risu/parsers/nessus/postprocess/symantec_endpoint.rb +4 -3
  111. data/lib/risu/parsers/nessus/postprocess/symantec_pcanywhere.rb +3 -3
  112. data/lib/risu/parsers/nessus/postprocess/tenable_nessus.rb +47 -0
  113. data/lib/risu/parsers/nessus/postprocess/timbuktu.rb +2 -2
  114. data/lib/risu/parsers/nessus/postprocess/vlc.rb +4 -3
  115. data/lib/risu/parsers/nessus/postprocess/vmware_esxi.rb +64 -54
  116. data/lib/risu/parsers/nessus/postprocess/vmware_player.rb +3 -3
  117. data/lib/risu/parsers/nessus/postprocess/vmware_vcenter.rb +11 -5
  118. data/lib/risu/parsers/nessus/postprocess/vmware_vsphere_client.rb +7 -6
  119. data/lib/risu/parsers/nessus/postprocess/winscp.rb +7 -8
  120. data/lib/risu/parsers/nessus/postprocess/wireshark.rb +73 -51
  121. data/lib/risu/parsers/nexpose/nexpose_document.rb +1 -1
  122. data/lib/risu/parsers/nexpose/simple_nexpose.rb +1 -1
  123. data/lib/risu/renderers.rb +1 -1
  124. data/lib/risu/renderers/csvrenderer.rb +1 -1
  125. data/lib/risu/renderers/nilrenderer.rb +1 -1
  126. data/lib/risu/renderers/pdfrenderer.rb +1 -1
  127. data/lib/risu/template_helpers.rb +1 -1
  128. data/lib/risu/templates/assets.rb +1 -1
  129. data/lib/risu/templates/authentication_summary.rb +1 -1
  130. data/lib/risu/templates/cover_sheet.rb +1 -1
  131. data/lib/risu/templates/exec_summary.rb +1 -1
  132. data/lib/risu/templates/executive_summary_detailed.rb +1 -1
  133. data/lib/risu/templates/exploitablity_summary.rb +1 -1
  134. data/lib/risu/templates/failed_audits.rb +1 -1
  135. data/lib/risu/templates/finding_statistics.rb +1 -1
  136. data/lib/risu/templates/findings_host.rb +1 -1
  137. data/lib/risu/templates/findings_summary.rb +1 -1
  138. data/lib/risu/templates/findings_summary_with_pluginid.rb +1 -1
  139. data/lib/risu/templates/graphs.rb +1 -1
  140. data/lib/risu/templates/host_findings_csv.rb +1 -1
  141. data/lib/risu/templates/host_summary.rb +1 -1
  142. data/lib/risu/templates/malicious_process_detection.rb +1 -1
  143. data/lib/risu/templates/missing_root_causes.rb +1 -1
  144. data/lib/risu/templates/ms_patch_summary.rb +1 -1
  145. data/lib/risu/templates/ms_update_summary.rb +1 -1
  146. data/lib/risu/templates/ms_wsus_findings.rb +1 -1
  147. data/lib/risu/templates/notable.rb +1 -1
  148. data/lib/risu/templates/notable_detailed.rb +1 -1
  149. data/lib/risu/templates/pci_compliance.rb +1 -1
  150. data/lib/risu/templates/rollup_summary.rb +82 -0
  151. data/lib/risu/templates/stig_findings_summary.rb +1 -1
  152. data/lib/risu/templates/talking_points.rb +1 -1
  153. data/lib/risu/templates/technical_findings.rb +1 -1
  154. data/lib/risu/templates/template.rb +1 -1
  155. data/lib/risu/templates/top_25.rb +1 -1
  156. data/lib/risu/version.rb +2 -2
  157. data/risu.gemspec +5 -5
  158. metadata +59 -56
  159. metadata.gz.sig +0 -0
  160. data/lib/risu/parsers/nessus/postprocess/flash_player.rb +0 -145
  161. data/lib/risu/parsers/nessus/postprocess/windows.rb +0 -976
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 0037c4091b9cf97291e61059efcb926ec8f4d6d7
4
- data.tar.gz: bef059b795db3231efd81a90baed696c0568b144
2
+ SHA256:
3
+ metadata.gz: cf81464689cb6d03b39783e15cc40e8ad075520f0132620137074b0275cbac91
4
+ data.tar.gz: 37fc4a1c4decf0fde09c338b1acee60709aa2776678c8d2ae58400d463ad8e29
5
5
  SHA512:
6
- metadata.gz: '061824f1b7dd1f40a52ebbb91d2fa8b64eca161538606f16b7fb07fb0e83cd1017be38c1b592e35ee9beac0077a67423fd9352c90de65820a62c954f2d46def3'
7
- data.tar.gz: 7c4fd1c9ceeea420eb0e9e4b55c8598d6f0d9d1873793f6e5b6e1f039d143187053bdb8138cf9c8b013817774c6dc860b601a9c80500529de89a5779cda5ca2a
6
+ metadata.gz: '097239a0d3034bf84c388a8c03d5c6a875bb1672915322c92225c2cf3830068c870819853386e3aac3971137472992187bec038004636dd0e6f513b1f53ac3a3'
7
+ data.tar.gz: f0d38ea30edf76af93594178a010bc059066169612a61a6438772bcca895f3bc7384c90f8da13b4115bc5d3fa94b15ffc290d875c74f6b9a3802ba349986fe53
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -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
@@ -1,4 +1,4 @@
1
- Copyright (c) 2010-2017 Jacob Hammack.
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
@@ -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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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
data/bin/risu CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby -W0
2
2
 
3
- # Copyright (c) 2010-2017 Jacob Hammack.
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
@@ -1,5 +1,8 @@
1
1
  # News
2
2
 
3
+ # 1.8.4 (Feburary 6, 2020)
4
+ - A great deal of changes/bug fixes/post processing
5
+
3
6
  # 1.8.3 (July 11, 2017)
4
7
  - Updated PostProcessing plugin id's
5
8
  - Added new PostProcessing plugin NormalizePluginNames
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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'
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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-2017 Jacob Hammack.
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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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 >= current_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
- finding_severity = 0
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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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.string :os
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.string :plugin_name
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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Jacob Hammack.
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 "#{ans.message}\n #{ans.backtrace}" if @options[:debug]
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
- 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
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 => a
345
+ rescue OptionParser::AmbiguousOption
346
346
  puts opts.to_s + "\n"
347
347
  exit
348
- rescue OptionParser::MissingArgument => m
348
+ rescue OptionParser::MissingArgument
349
349
  puts opts.to_s + "\n"
350
350
  exit
351
- rescue OptionParser::InvalidOption => i
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 => si
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 => i
494
+ rescue Interrupt
495
495
  puts "[!] Parse canceled!"
496
496
  exit(1)
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
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)