risu 1.7.5 → 1.7.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (120) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +16 -10
  3. data/Gemfile.lock +125 -102
  4. data/LICENSE +2 -1
  5. data/NEWS.markdown +23 -2
  6. data/README.markdown +35 -22
  7. data/Rakefile +4 -4
  8. data/bin/risu +1 -1
  9. data/lib/risu.rb +12 -7
  10. data/lib/risu/base.rb +1 -1
  11. data/lib/risu/base/post_process_base.rb +2 -3
  12. data/lib/risu/base/post_process_manager.rb +2 -2
  13. data/lib/risu/base/schema.rb +3 -3
  14. data/lib/risu/base/shares_template_helper.rb +37 -3
  15. data/lib/risu/base/template_base.rb +2 -2
  16. data/lib/risu/base/template_helper.rb +4 -4
  17. data/lib/risu/base/template_manager.rb +2 -2
  18. data/lib/risu/base/templater.rb +1 -1
  19. data/lib/risu/cli.rb +1 -1
  20. data/lib/risu/cli/application.rb +7 -6
  21. data/lib/risu/cli/banner.rb +1 -1
  22. data/lib/risu/exceptions.rb +1 -1
  23. data/lib/risu/exceptions/invaliddocument.rb +1 -1
  24. data/lib/risu/graphs.rb +32 -0
  25. data/lib/risu/graphs/top_vuln_graph.rb +59 -0
  26. data/lib/risu/graphs/windows_os_graph.rb +134 -0
  27. data/lib/risu/models.rb +1 -1
  28. data/lib/risu/models/attachment.rb +1 -1
  29. data/lib/risu/models/familyselection.rb +1 -1
  30. data/lib/risu/models/host.rb +100 -44
  31. data/lib/risu/models/hostproperty.rb +1 -1
  32. data/lib/risu/models/individualpluginselection.rb +1 -1
  33. data/lib/risu/models/item.rb +43 -15
  34. data/lib/risu/models/patch.rb +1 -1
  35. data/lib/risu/models/plugin.rb +2 -2
  36. data/lib/risu/models/pluginspreference.rb +1 -1
  37. data/lib/risu/models/policy.rb +1 -1
  38. data/lib/risu/models/reference.rb +4 -3
  39. data/lib/risu/models/report.rb +2 -2
  40. data/lib/risu/models/serverpreference.rb +1 -1
  41. data/lib/risu/models/servicedescription.rb +1 -1
  42. data/lib/risu/models/version.rb +1 -1
  43. data/lib/risu/parsers.rb +1 -1
  44. data/lib/risu/parsers/nessus/nessus_document.rb +7 -1
  45. data/lib/risu/parsers/nessus/nessus_sax_listener.rb +6 -4
  46. data/lib/risu/parsers/nessus/postprocess.rb +2 -2
  47. data/lib/risu/parsers/nessus/postprocess/adobe_acrobat.rb +1 -1
  48. data/lib/risu/parsers/nessus/postprocess/adobe_air.rb +1 -1
  49. data/lib/risu/parsers/nessus/postprocess/adobe_reader.rb +1 -1
  50. data/lib/risu/parsers/nessus/postprocess/apache.rb +1 -1
  51. data/lib/risu/parsers/nessus/postprocess/apache_tomcat.rb +53 -0
  52. data/lib/risu/parsers/nessus/postprocess/apple_quicktime.rb +1 -1
  53. data/lib/risu/parsers/nessus/postprocess/blackberry_enterprise_server.rb +1 -1
  54. data/lib/risu/parsers/nessus/postprocess/ca_brightstor_arcserve.rb +1 -1
  55. data/lib/risu/parsers/nessus/postprocess/core_ftp.rb +1 -1
  56. data/lib/risu/parsers/nessus/postprocess/db2.rb +1 -1
  57. data/lib/risu/parsers/nessus/postprocess/downgrade_plugins.rb +1 -1
  58. data/lib/risu/parsers/nessus/postprocess/filezilla.rb +1 -1
  59. data/lib/risu/parsers/nessus/postprocess/firefox.rb +1 -1
  60. data/lib/risu/parsers/nessus/postprocess/flash_player.rb +1 -1
  61. data/lib/risu/parsers/nessus/postprocess/flexnet.rb +1 -1
  62. data/lib/risu/parsers/nessus/postprocess/foxit_reader.rb +1 -1
  63. data/lib/risu/parsers/nessus/postprocess/google_chrome.rb +1 -1
  64. data/lib/risu/parsers/nessus/postprocess/hp_system_mgt_homepage.rb +1 -1
  65. data/lib/risu/parsers/nessus/postprocess/java.rb +1 -1
  66. data/lib/risu/parsers/nessus/postprocess/openssh.rb +3 -1
  67. data/lib/risu/parsers/nessus/postprocess/openssl.rb +1 -1
  68. data/lib/risu/parsers/nessus/postprocess/oracle_database.rb +1 -1
  69. data/lib/risu/parsers/nessus/postprocess/php.rb +1 -1
  70. data/lib/risu/parsers/nessus/postprocess/post_process.rb +1 -1
  71. data/lib/risu/parsers/nessus/postprocess/risk_score.rb +2 -2
  72. data/lib/risu/parsers/nessus/postprocess/root_cause.rb +12 -7
  73. data/lib/risu/parsers/nessus/postprocess/servu.rb +1 -1
  74. data/lib/risu/parsers/nessus/postprocess/shockwave.rb +1 -1
  75. data/lib/risu/parsers/nessus/postprocess/sigplus_pro.rb +1 -1
  76. data/lib/risu/parsers/nessus/postprocess/symantec_pcanywhere.rb +1 -1
  77. data/lib/risu/parsers/nessus/postprocess/vlc.rb +1 -1
  78. data/lib/risu/parsers/nessus/postprocess/vmware_esxi.rb +3 -1
  79. data/lib/risu/parsers/nessus/postprocess/vmware_player.rb +1 -1
  80. data/lib/risu/parsers/nessus/postprocess/vmware_vcenter.rb +1 -1
  81. data/lib/risu/parsers/nessus/postprocess/vmware_vsphere_client.rb +1 -1
  82. data/lib/risu/parsers/nessus/postprocess/windows.rb +1 -1
  83. data/lib/risu/parsers/nessus/postprocess/winscp.rb +1 -1
  84. data/lib/risu/parsers/nessus/postprocess/wireshark.rb +1 -1
  85. data/lib/risu/parsers/nexpose/nexpose_document.rb +1 -1
  86. data/lib/risu/parsers/nexpose/simple_nexpose.rb +3 -3
  87. data/lib/risu/renderers.rb +1 -1
  88. data/lib/risu/renderers/csvrenderer.rb +4 -4
  89. data/lib/risu/renderers/nilrenderer.rb +4 -4
  90. data/lib/risu/renderers/pdfrenderer.rb +5 -5
  91. data/lib/risu/template_helpers.rb +32 -0
  92. data/lib/risu/templates/assets.rb +1 -1
  93. data/lib/risu/templates/cover_sheet.rb +1 -1
  94. data/lib/risu/templates/exec_summary.rb +1 -1
  95. data/lib/risu/templates/executive_summary_detailed.rb +1 -1
  96. data/lib/risu/templates/exploitablity_summary.rb +1 -1
  97. data/lib/risu/templates/finding_statistics.rb +1 -1
  98. data/lib/risu/templates/findings_host.rb +1 -1
  99. data/lib/risu/templates/findings_summary.rb +1 -1
  100. data/lib/risu/templates/findings_summary_with_pluginid.rb +1 -1
  101. data/lib/risu/templates/graphs.rb +1 -1
  102. data/lib/risu/templates/host_findings_csv.rb +1 -1
  103. data/lib/risu/templates/host_summary.rb +1 -1
  104. data/lib/risu/templates/malicious_process_detection.rb +1 -1
  105. data/lib/risu/templates/missing_root_causes.rb +1 -1
  106. data/lib/risu/templates/ms_patch_summary.rb +1 -1
  107. data/lib/risu/templates/ms_update_summary.rb +1 -1
  108. data/lib/risu/templates/ms_wsus_findings.rb +1 -1
  109. data/lib/risu/templates/notable.rb +1 -1
  110. data/lib/risu/templates/notable_detailed.rb +1 -1
  111. data/lib/risu/templates/pci_compliance.rb +1 -1
  112. data/lib/risu/templates/stig_findings_summary.rb +2 -2
  113. data/lib/risu/templates/talking_points.rb +5 -5
  114. data/lib/risu/templates/technical_findings.rb +1 -1
  115. data/lib/risu/templates/template.rb +1 -1
  116. data/lib/risu/templates/top_25.rb +1 -1
  117. data/lib/risu/version.rb +33 -0
  118. data/risu.gemspec +21 -20
  119. metadata +161 -67
  120. data/Gemfile.ci +0 -12
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f6936958320d0f5a66b83446740f767902c0a8aa
4
- data.tar.gz: 037950d5f6ef7524e8062ae080d69d0c493c62ba
3
+ metadata.gz: afeb7452a6387818f031b7eb9be509fb7b8b1f91
4
+ data.tar.gz: d0c0482d6673456aaa3eb7ffd32f928df5ba4d03
5
5
  SHA512:
6
- metadata.gz: e166f6769fd4f88a96a494fab589c84e9900e88dd939fda23f21efd12c817d8bed1e6c8245ea5fb0536c668e2c74053b3348492a41dfb2f9f05de1931754541e
7
- data.tar.gz: c7a5d992b4445cce24900e4f990e438d2debfe346ea57eed42b9cd7ac8555543de6c0da59b6e994c9b304819fe361134ef63f18609e6ca3f924b3f3e09557cbc
6
+ metadata.gz: c009a3228e6fb7a9b84b256610fcd61381c223520e8f9ff9a3412c577fd4690f0adceeea0dfde312d3f78519c5337ce8560af3b5100cb79eeabd0f9533cf043e
7
+ data.tar.gz: abf5109f7c5ebc5f1931c1cebaa4290ae740140364ca0d9503f3901ab09f04a38b69179fdb1031663bb489ac393b3b470c76fd21567bb47ba84f9923eef6cac5
data/Gemfile CHANGED
@@ -1,12 +1,18 @@
1
1
  source "https://rubygems.org"
2
+ gemspec
2
3
 
3
- gem "rails", '4.0.0'
4
- gem "libxml-ruby", '2.6.0'
5
- gem "prawn", '0.12.0'
6
- gem "gruff", '0.3.7'
7
- gem "mysql2", '0.3.11'
8
- gem "rmagick", '2.13.2'
9
- gem "sqlite3", '1.3.7'
10
- gem "simplecov"
11
- gem "nokogiri", '1.6.0'
12
- gem "minitest", '4.3.2'
4
+ #
5
+ # gem 'simplecov', '~> 0.11.0'
6
+ # gem 'yard', '~> 0.8.0'
7
+ # gem 'minitest', '~> 5.0'
8
+ # gem 'test-unit'
9
+ #
10
+ # gem 'rails', "~> 4.2.5"
11
+ # gem 'libxml-ruby', "~> 2.8.0"
12
+ # gem 'prawn', "~> 2.0.2"
13
+ # gem 'prawn-table', "~> 0.2.2"
14
+ # gem 'gruff', "~> 0.6.0"
15
+ # gem 'mysql2', "~> 0.4.1"
16
+ # gem 'rmagick', "~> 2.15.4"
17
+ # gem 'sqlite3', "~> 1.3.11"
18
+ # gem 'nokogiri', "~> 1.6.7"
@@ -1,118 +1,141 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ risu (1.7.6)
5
+ gruff (~> 0.6, >= 0.6.0)
6
+ libxml-ruby (~> 2.8, >= 2.8.0)
7
+ mysql2 (~> 0.4, >= 0.4.2)
8
+ nokogiri (~> 1.6, >= 1.6.7)
9
+ prawn (~> 2.0, >= 2.0.2)
10
+ prawn-table (~> 0.2, >= 0.2.2)
11
+ rails (~> 4.2, >= 4.2.5)
12
+ rmagick (~> 2.15, >= 2.15.4)
13
+ sqlite3 (~> 1.3, >= 1.3.11)
14
+
1
15
  GEM
2
- remote: https://rubygems.org/
3
16
  specs:
4
- Ascii85 (1.0.2)
5
- actionmailer (4.0.2)
6
- actionpack (= 4.0.2)
7
- mail (~> 2.5.4)
8
- actionpack (4.0.2)
9
- activesupport (= 4.0.2)
10
- builder (~> 3.1.0)
11
- erubis (~> 2.7.0)
12
- rack (~> 1.5.2)
17
+ actionmailer (4.2.5)
18
+ actionpack (= 4.2.5)
19
+ actionview (= 4.2.5)
20
+ activejob (= 4.2.5)
21
+ mail (~> 2.5, >= 2.5.4)
22
+ rails-dom-testing (~> 1.0, >= 1.0.5)
23
+ actionpack (4.2.5)
24
+ actionview (= 4.2.5)
25
+ activesupport (= 4.2.5)
26
+ rack (~> 1.6)
13
27
  rack-test (~> 0.6.2)
14
- activemodel (4.0.2)
15
- activesupport (= 4.0.2)
16
- builder (~> 3.1.0)
17
- activerecord (4.0.2)
18
- activemodel (= 4.0.2)
19
- activerecord-deprecated_finders (~> 1.0.2)
20
- activesupport (= 4.0.2)
21
- arel (~> 4.0.0)
22
- activerecord-deprecated_finders (1.0.3)
23
- activesupport (4.0.2)
24
- i18n (~> 0.6, >= 0.6.4)
25
- minitest (~> 4.2)
26
- multi_json (~> 1.3)
27
- thread_safe (~> 0.1)
28
- tzinfo (~> 0.3.37)
29
- afm (0.2.0)
30
- arel (4.0.1)
31
- atomic (1.1.14)
32
- builder (3.1.4)
33
- docile (1.1.1)
28
+ rails-dom-testing (~> 1.0, >= 1.0.5)
29
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
30
+ actionview (4.2.5)
31
+ activesupport (= 4.2.5)
32
+ builder (~> 3.1)
33
+ erubis (~> 2.7.0)
34
+ rails-dom-testing (~> 1.0, >= 1.0.5)
35
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
36
+ activejob (4.2.5)
37
+ activesupport (= 4.2.5)
38
+ globalid (>= 0.3.0)
39
+ activemodel (4.2.5)
40
+ activesupport (= 4.2.5)
41
+ builder (~> 3.1)
42
+ activerecord (4.2.5)
43
+ activemodel (= 4.2.5)
44
+ activesupport (= 4.2.5)
45
+ arel (~> 6.0)
46
+ activesupport (4.2.5)
47
+ i18n (~> 0.7)
48
+ json (~> 1.7, >= 1.7.7)
49
+ minitest (~> 5.1)
50
+ thread_safe (~> 0.3, >= 0.3.4)
51
+ tzinfo (~> 1.1)
52
+ arel (6.0.3)
53
+ builder (3.2.2)
54
+ docile (1.1.5)
34
55
  erubis (2.7.0)
35
- gruff (0.5.1)
36
- rmagick
37
- hashery (2.1.1)
38
- hike (1.2.3)
39
- i18n (0.6.9)
40
- libxml-ruby (2.7.0)
41
- mail (2.5.4)
42
- mime-types (~> 1.16)
43
- treetop (~> 1.4.8)
44
- mime-types (1.25.1)
45
- mini_portile (0.5.2)
46
- minitest (4.7.5)
47
- multi_json (1.8.2)
48
- mysql2 (0.3.14)
49
- nokogiri (1.6.1)
50
- mini_portile (~> 0.5.0)
51
- pdf-reader (1.3.3)
52
- Ascii85 (~> 1.0.0)
53
- afm (~> 0.2.0)
54
- hashery (~> 2.0)
55
- ruby-rc4
56
- ttfunk
57
- polyglot (0.3.3)
58
- prawn (0.13.2)
59
- pdf-reader (~> 1.2)
60
- ruby-rc4
61
- ttfunk (~> 1.0.3)
62
- rack (1.5.2)
63
- rack-test (0.6.2)
56
+ globalid (0.3.6)
57
+ activesupport (>= 4.1.0)
58
+ gruff (0.6.0)
59
+ rmagick (>= 2.13.4)
60
+ i18n (0.7.0)
61
+ json (1.8.3)
62
+ libxml-ruby (2.8.0)
63
+ loofah (2.0.3)
64
+ nokogiri (>= 1.5.9)
65
+ mail (2.6.3)
66
+ mime-types (>= 1.16, < 3)
67
+ mime-types (2.99)
68
+ mini_portile2 (2.0.0)
69
+ minitest (5.8.3)
70
+ mysql2 (0.4.2)
71
+ nokogiri (1.6.7)
72
+ mini_portile2 (~> 2.0.0.rc2)
73
+ pdf-core (0.6.0)
74
+ power_assert (0.2.6)
75
+ prawn (2.0.2)
76
+ pdf-core (~> 0.6.0)
77
+ ttfunk (~> 1.4.0)
78
+ prawn-table (0.2.2)
79
+ prawn (>= 1.3.0, < 3.0.0)
80
+ rack (1.6.4)
81
+ rack-test (0.6.3)
64
82
  rack (>= 1.0)
65
- rails (4.0.2)
66
- actionmailer (= 4.0.2)
67
- actionpack (= 4.0.2)
68
- activerecord (= 4.0.2)
69
- activesupport (= 4.0.2)
83
+ rails (4.2.5)
84
+ actionmailer (= 4.2.5)
85
+ actionpack (= 4.2.5)
86
+ actionview (= 4.2.5)
87
+ activejob (= 4.2.5)
88
+ activemodel (= 4.2.5)
89
+ activerecord (= 4.2.5)
90
+ activesupport (= 4.2.5)
70
91
  bundler (>= 1.3.0, < 2.0)
71
- railties (= 4.0.2)
72
- sprockets-rails (~> 2.0.0)
73
- railties (4.0.2)
74
- actionpack (= 4.0.2)
75
- activesupport (= 4.0.2)
92
+ railties (= 4.2.5)
93
+ sprockets-rails
94
+ rails-deprecated_sanitizer (1.0.3)
95
+ activesupport (>= 4.2.0.alpha)
96
+ rails-dom-testing (1.0.7)
97
+ activesupport (>= 4.2.0.beta, < 5.0)
98
+ nokogiri (~> 1.6.0)
99
+ rails-deprecated_sanitizer (>= 1.0.1)
100
+ rails-html-sanitizer (1.0.2)
101
+ loofah (~> 2.0)
102
+ railties (4.2.5)
103
+ actionpack (= 4.2.5)
104
+ activesupport (= 4.2.5)
76
105
  rake (>= 0.8.7)
77
106
  thor (>= 0.18.1, < 2.0)
78
- rake (10.1.1)
79
- rmagick (2.13.2)
80
- ruby-rc4 (0.1.5)
81
- simplecov (0.8.2)
107
+ rake (10.4.2)
108
+ rmagick (2.15.4)
109
+ simplecov (0.11.1)
82
110
  docile (~> 1.1.0)
83
- multi_json
84
- simplecov-html (~> 0.8.0)
85
- simplecov-html (0.8.0)
86
- sprockets (2.10.1)
87
- hike (~> 1.2)
88
- multi_json (~> 1.0)
89
- rack (~> 1.0)
90
- tilt (~> 1.1, != 1.3.0)
91
- sprockets-rails (2.0.1)
111
+ json (~> 1.8)
112
+ simplecov-html (~> 0.10.0)
113
+ simplecov-html (0.10.0)
114
+ sprockets (3.4.1)
115
+ rack (> 1, < 3)
116
+ sprockets-rails (2.3.3)
92
117
  actionpack (>= 3.0)
93
118
  activesupport (>= 3.0)
94
- sprockets (~> 2.8)
95
- sqlite3 (1.3.8)
96
- thor (0.18.1)
97
- thread_safe (0.1.3)
98
- atomic
99
- tilt (1.4.1)
100
- treetop (1.4.15)
101
- polyglot
102
- polyglot (>= 0.3.1)
103
- ttfunk (1.0.3)
104
- tzinfo (0.3.38)
119
+ sprockets (>= 2.8, < 4.0)
120
+ sqlite3 (1.3.11)
121
+ test-unit (3.1.5)
122
+ power_assert
123
+ thor (0.19.1)
124
+ thread_safe (0.3.5)
125
+ ttfunk (1.4.0)
126
+ tzinfo (1.2.2)
127
+ thread_safe (~> 0.1)
128
+ yard (0.8.7.6)
105
129
 
106
130
  PLATFORMS
107
131
  ruby
108
132
 
109
133
  DEPENDENCIES
110
- gruff
111
- libxml-ruby
112
- mysql2
113
- nokogiri
114
- prawn
115
- rails
116
- rmagick
117
- simplecov
118
- sqlite3
134
+ minitest (~> 5.0, >= 5.8.3)
135
+ risu!
136
+ simplecov (~> 0.11, >= 0.11.1)
137
+ test-unit (~> 3.1, >= 3.1.5)
138
+ yard (~> 0.8, >= 0.8.0)
139
+
140
+ BUNDLED WITH
141
+ 1.10.6
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2010-2015 Arxopia LLC.
1
+ Copyright (c) 2010-2016 Arxopia LLC.
2
2
  All rights reserved.
3
3
 
4
4
  Redistribution and use in source and binary forms, with or without
@@ -23,3 +23,4 @@ OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
23
  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
24
  OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
25
  OF THE POSSIBILITY OF SUCH DAMAGE.
26
+
@@ -1,6 +1,27 @@
1
1
  # News
2
2
 
3
- # 1.7.5 (November, 2015)
3
+ # 1.7.6 (December 02, 2015)
4
+ - **NOTICE** Upon next major release, "1.8.0" ruby-2.2.1+ will only be supported. This is due to rails5 dropping support for all previous versions. Risu 1.8.0 will be release shortly after rails5 with this change.
5
+ - **API CHANGES** Several APIs have been marked deprecated they will be moved in 1.8.0. Stubs will be left behind with warnings until 1.9.0. These changes are mostly to clean up the Models. Right now the models are very fat and interdependent on things they shouldn't. Some of the notable changes will be:
6
+ - Graphs will be moved to Risu::Graphs
7
+ - TemplateHelpers will be moved to Risu::TemplateHelpers
8
+ - When new tags are encountered they are reported after each file now, as a uniqued list. This removes the spam of new tags.
9
+ - Updated the dependent gems to the latest versions and removed exact version pinning.
10
+ - rails 4.2.5
11
+ - libxml-ruby 2.8.0
12
+ - prawn 2.0.2
13
+ - gruff 0.6.0
14
+ - mysql2 0.4.2
15
+ - rmagick 2.15.4
16
+ - sqlite3 1.3.11
17
+ - nokogiri 1.6.7
18
+ - Massive updates to unit tests
19
+ - Post Processing
20
+ - Updated OpenSSH plugin list
21
+ - Updated VMware ESXi plugin list
22
+ - Tons of minor tweaks and other changes
23
+
24
+ # 1.7.5 (November 6, 2015)
4
25
  - Added initial test for HostProperties
5
26
  - Added fixture for HostProperties testing
6
27
  - Added VMware vCenter Post Processing
@@ -82,7 +103,7 @@
82
103
  - windows_os_graph_has_data()
83
104
  - HostProperty Model
84
105
  - Added pcidss:insecure_http_methods tag
85
- - Added cpe-XXX, where XXX is a digit of the number of CPE found for that host.
106
+ - Added cpe-XXXX, where XXXX is a digit of the number of CPE found for that host.
86
107
  - Added LastUnauthenticatedResults tag
87
108
  - Added LastAuthenticatedResults tag
88
109
  - Added Credentialed_Scan tag
@@ -1,17 +1,18 @@
1
- # risu
1
+ # risu [![Gem Version](https://badge.fury.io/rb/risu.png)](http://badge.fury.io/rb/risu) [![Build Status](https://travis-ci.org/arxopia/risu.png?branch=master)](https://travis-ci.org/arxopia/risu) [![Code Climate](https://codeclimate.com/github/arxopia/risu/badges/gpa.svg)](https://codeclimate.com/github/arxopia/risu) [![Inline docs](http://inch-ci.org/github/arxopia/risu.png)](http://inch-ci.org/github/arxopia/risu) [![Join the chat at https://gitter.im/arxopia/risu](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/arxopia/risu?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
2
2
 
3
- [![Gem Version](https://badge.fury.io/rb/risu.png)](http://badge.fury.io/rb/risu)
3
+ Risu is [Nessus](http://www.nessus.org) parser, that converts Nessus .nessus xml files into a [ActiveRecord](http://api.rubyonrails.org/classes/ActiveRecord/Base.html) database, this allows for easy report generation and vulnerability verification.
4
4
 
5
- [![Build Status](https://travis-ci.org/arxopia/risu.png?branch=1.7.2)](https://travis-ci.org/arxopia/risu)
6
-
7
- Risu is [Nessus](http://www.nessus.org) parser, that converts the generated reports into a [ActiveRecord](http://api.rubyonrails.org/classes/ActiveRecord/Base.html) database, this allows for easy report generation and vulnerability verification.
8
-
9
- Version **1.7.4** is the current release.
5
+ * [Requirements](#requirements)
6
+ * [Installation](#installation)
7
+ * [Usage](#usage)
8
+ * [Contributing](#contributing)
9
+ * [Issues](#issues)
10
+ * [Contact](#contact)
10
11
 
11
12
  ## Requirements
12
13
 
13
14
  ### Ruby
14
- Risu has been tested with ruby-1.9.3-p392, ruby-2.0.0 and ruby-2.1.0. Please try to use one of these versions if possible. I recommend using RVM to setup your ruby environment you can get it [here](https://rvm.beginrescueend.com/).
15
+ Risu has been tested with ruby-2.0.0, ruby-2.1.0 and ruby-2.2.3. Please try to use one of these versions if possible. I recommend using RVM to setup your ruby environment you can get it [here](https://rvm.beginrescueend.com/).
15
16
 
16
17
  ### RubyGems
17
18
  Risu relies heavily on [RubyGems](http://rubygems.org/) to install other dependencies I highly recommend using it. RubyGems is included by default in the 1.9.x versions of [Ruby](http://ruby-lang.org/).
@@ -29,19 +30,31 @@ Risu relies heavily on [RubyGems](http://rubygems.org/) to install other depende
29
30
  ## Installation
30
31
  Installation is really easy just gem install!
31
32
 
32
- % gem install risu
33
+ % gem install risu
33
34
 
34
- ## Developmental Requirements
35
+ ### Runtime Requirements
35
36
 
36
37
  These are all available through [RubyGems](http://rubygems.org/). The should be installed automatically when you install risu, If not this command will install them all:
37
38
 
38
39
  % gem install rmagick gruff prawn yard mysql2 libxml-ruby rails sqlite3 logger yaml nokogiri
39
40
 
40
- **You my need sudo/root access depending on your system setup**
41
+ **You my need sudo/root access depending on your system setup, Please see detailed install guides for your system!**
42
+
43
+ ### Developmental Requirements
44
+
45
+ These are all available through [RubyGems](http://rubygems.org/). These are required to run the tests, generate the documentation and test coverage. This command will install them all:
46
+
47
+ % gem install simplecov yard minitest test-unit
48
+
49
+ **You my need sudo/root access depending on your system setup, Please see detailed install guides for your system!**
41
50
 
42
51
  Any database that ActiveRecord supports should work. Risu has been tested with [MySQL](http://www.mysql.com/) and [SQLite3](http://sqlite.org/).
43
52
 
44
- ## Database Setup
53
+ ## Usage
54
+
55
+ The following is some of the basic usage for risu. You must setup the database before you can start parsing in reports. All parsed reports share the same database, so all reports are combined as one inside of a database. I suggest a new database per required assessment.
56
+
57
+ ### Database Setup
45
58
 
46
59
  % risu --create-config
47
60
  % $EDITOR risu.cfg
@@ -51,22 +64,22 @@ Any database that ActiveRecord supports should work. Risu has been tested with [
51
64
  2. Edit the risu.cfg file, filling in the variables as needed.
52
65
  3. Migrate the database schema.
53
66
 
54
- ## Parsing Nessus Output
67
+ ### Parsing Nessus Output
55
68
 
56
69
  % risu report1.nessus [report2.nessus ...]
57
70
 
58
71
  1. Parse the files by passing their names on the command line.
59
72
 
60
73
 
61
- # Viewing Data
62
- The data can be viewed with a query browser available for your database.
74
+ ## Viewing Data
75
+ The data can be viewed with any query browser available for your database of choice.
63
76
 
64
- ## Generating Reports
77
+ ### Generating Reports
65
78
  To generate a report please execute the following after the the data is parsed into the database.
66
79
 
67
80
  % risu -t <TEMPLATE_NAME> -o "REPORT_NAME.pdf"
68
81
 
69
- ## Risu Console
82
+ ### Risu Console
70
83
 
71
84
  Using the risu Console is just like using Rails. You can access all of the ActiveRecord models directly and pull specific data from each model. Like SQL only easier!
72
85
 
@@ -76,7 +89,7 @@ Using the risu Console is just like using Rails. You can access all of the Activ
76
89
  _ __(_)___ _ _
77
90
  | '__| / __| | | |
78
91
  | | | \__ \ |_| |
79
- |_| |_|___/\__,_|
92
+ |_| |_|___/\__,_|_
80
93
 
81
94
 
82
95
  risu Console v1.7.2
@@ -112,15 +125,15 @@ Several templates are included:
112
125
  The templates are written in ruby using [prawn](http://prawn.majesticseacreature.com/), they are fairly easy to make. I will add any templates as requested. See the 'template' example for creating your own template.
113
126
 
114
127
  # Contributing
115
- 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/arxopia/risu) and make the changes in your fork and the submit a pull request to the project.
128
+ 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/arxopia/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.
116
129
 
117
130
  # Issues
118
131
  If you have any problems, bugs or feature requests please use the [github issue tracker](http://github.com/arxopia/risu/issues).
119
132
 
120
- # Donations / tips
121
- Feel free to donate or tip to BTC: 1Cfd5G6rJmSBrNcTHxEgE4uYgH7XZJPY7Z
122
-
123
133
  # Contact
124
134
  You can reach me at risu[at]arxopia[dot]com.
125
135
 
126
136
  You can also contact me on IRC as hammackj on irc.freenode.net, #risu
137
+
138
+ # Donations / tips
139
+ Feel free to donate or tip to BTC: 1Cfd5G6rJmSBrNcTHxEgE4uYgH7XZJPY7Z