risu 1.5.0 → 1.5.1

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.
Files changed (62) hide show
  1. data/Gemfile.ci +2 -5
  2. data/KNOWNISSUES.markdown +12 -11
  3. data/LICENSE +11 -11
  4. data/NEWS.markdown +43 -8
  5. data/README.markdown +36 -32
  6. data/Rakefile +29 -9
  7. data/TODO.markdown +150 -77
  8. data/bin/risu +26 -0
  9. data/lib/risu.rb +27 -1
  10. data/lib/risu/base.rb +26 -0
  11. data/lib/risu/base/prawn_templater.rb +36 -8
  12. data/lib/risu/base/schema.rb +199 -163
  13. data/lib/risu/base/template_base.rb +34 -7
  14. data/lib/risu/base/template_manager.rb +37 -37
  15. data/lib/risu/base/templater.rb +36 -9
  16. data/lib/risu/cli.rb +26 -0
  17. data/lib/risu/cli/application.rb +72 -39
  18. data/lib/risu/cli/banner.rb +47 -21
  19. data/lib/risu/exceptions.rb +26 -0
  20. data/lib/risu/exceptions/invaliddocument.rb +30 -1
  21. data/lib/risu/models.rb +26 -0
  22. data/lib/risu/models/familyselection.rb +28 -2
  23. data/lib/risu/models/host.rb +59 -2
  24. data/lib/risu/models/individualpluginselection.rb +26 -1
  25. data/lib/risu/models/item.rb +132 -79
  26. data/lib/risu/models/patch.rb +26 -1
  27. data/lib/risu/models/plugin.rb +28 -2
  28. data/lib/risu/models/pluginspreference.rb +26 -2
  29. data/lib/risu/models/policy.rb +27 -2
  30. data/lib/risu/models/reference.rb +81 -20
  31. data/lib/risu/models/report.rb +33 -8
  32. data/lib/risu/models/serverpreference.rb +26 -1
  33. data/lib/risu/models/servicedescription.rb +26 -1
  34. data/lib/risu/models/version.rb +26 -1
  35. data/lib/risu/parsers.rb +29 -0
  36. data/lib/risu/parsers/nessus/nessus_document.rb +47 -14
  37. data/lib/risu/parsers/nessus/nessus_sax_listener.rb +45 -16
  38. data/lib/risu/parsers/nexpose/nexpose_document.rb +91 -0
  39. data/lib/risu/parsers/nexpose/simple_nexpose.rb +108 -0
  40. data/lib/risu/renderers.rb +26 -0
  41. data/lib/risu/renderers/nilrenderer.rb +30 -4
  42. data/lib/risu/templates/assets.rb +36 -10
  43. data/lib/risu/templates/cover_sheet.rb +34 -8
  44. data/lib/risu/templates/exec_summary.rb +45 -19
  45. data/lib/risu/templates/executive_summary.rb +37 -11
  46. data/lib/risu/templates/finding_statistics.rb +33 -7
  47. data/lib/risu/templates/findings_host.rb +44 -18
  48. data/lib/risu/templates/findings_summary.rb +43 -17
  49. data/lib/risu/templates/findings_summary_with_pluginid.rb +60 -18
  50. data/lib/risu/templates/graphs.rb +30 -0
  51. data/lib/risu/templates/host_summary.rb +34 -8
  52. data/lib/risu/templates/ms_patch_summary.rb +35 -9
  53. data/lib/risu/templates/ms_update_summary.rb +34 -8
  54. data/lib/risu/templates/ms_wsus_findings.rb +99 -0
  55. data/lib/risu/templates/notable.rb +39 -13
  56. data/lib/risu/templates/notable_detailed.rb +42 -16
  57. data/lib/risu/templates/pci_compliance.rb +40 -14
  58. data/lib/risu/templates/stig_findings_summary.rb +62 -36
  59. data/lib/risu/templates/technical_findings.rb +29 -3
  60. data/lib/risu/templates/template.rb +35 -9
  61. data/risu.gemspec +28 -7
  62. metadata +94 -101
@@ -1,18 +1,44 @@
1
+ # Copyright (c) 2010-2012 Arxopia LLC.
2
+ # All rights reserved.
3
+
4
+ # Redistribution and use in source and binary forms, with or without
5
+ # modification, are permitted provided that the following conditions are met:
6
+
7
+ # * Redistributions of source code must retain the above copyright
8
+ # notice, this list of conditions and the following disclaimer.
9
+ # * Redistributions in binary form must reproduce the above copyright
10
+ # notice, this list of conditions and the following disclaimer in the
11
+ # documentation and/or other materials provided with the distribution.
12
+ # * Neither the name of the Arxopia LLC nor the names of its contributors
13
+ # may be used to endorse or promote products derived from this software
14
+ # without specific prior written permission.
15
+
16
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
+ # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
+ # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
+ # DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
20
+ # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
+ # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
+ # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
+ #OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
+ #OF THE POSSIBILITY OF SUCH DAMAGE.
26
+
1
27
  module Risu
2
28
  module Templates
3
29
  class StigFindingsSummary < Risu::Base::TemplateBase
4
-
30
+
5
31
  # Initializes the template loading metadata
6
32
  #
7
33
  def initialize ()
8
- @template_info =
9
- {
10
- :name => "stig_findings_summary",
11
- :author => "hammackj",
12
- :version => "0.0.1",
34
+ @template_info =
35
+ {
36
+ :name => "stig_findings_summary",
37
+ :author => "hammackj",
38
+ :version => "0.0.2",
13
39
  :description => "DISA Stig findings summary report"
14
40
  }
15
-
41
+
16
42
  @output = nil
17
43
  end
18
44
 
@@ -22,10 +48,10 @@ module Risu
22
48
  @output.text Report.classification.upcase, :align => :center
23
49
  @output.text "\n"
24
50
 
25
- @output.font_size(22) do
51
+ @output.font_size(22) do
26
52
  @output.text Report.title, :align => :center
27
53
  end
28
-
54
+
29
55
  @output.font_size(18) do
30
56
  @output.text "Stig Findings Summary", :align => :center
31
57
  @output.text "\n"
@@ -34,14 +60,14 @@ module Risu
34
60
 
35
61
  @output.text "\n\n\n"
36
62
  end
37
-
38
- # Creates a list of hosts from an list of Items
63
+
64
+ # Creates a list of hosts from an list of Items
39
65
  #
40
66
  # @param items
41
67
  def host_list_from_plugin_id(plugin_id)
42
68
  Host.where('id IN (:hosts)', :hosts => Item.where(:plugin_id => plugin_id).select(:host_id).select('host_id AS id'))
43
69
  end
44
-
70
+
45
71
  def host_list_text(hosts)
46
72
  host_string = ""
47
73
  hosts.all.each do |host|
@@ -52,54 +78,54 @@ module Risu
52
78
 
53
79
  return host_string.chomp!(", ")
54
80
  end
55
-
56
- # Generates stig finding text for
81
+
82
+ # Generates stig finding text for
57
83
  #
58
- # @param categeory I/II/III for each stig severity
59
- def stig_findings_text(categeory="I")
60
- if categeory != "I" || categeory != "II" || categeory != "III"
84
+ # @param category I/II/III for each stig severity
85
+ def stig_findings_text(category="I")
86
+ if category != "I" || category != "II" || category != "III"
61
87
  return
62
88
  end
63
-
64
- stigs = Item.stig_findings(categeory).group(:plugin_id)
65
-
66
- stigs.each do |stig|
89
+
90
+ stigs = Item.stig_findings(category).group(:plugin_id)
91
+
92
+ stigs.each do |stig|
67
93
  @output.text "#{stig.plugin_name}", :size => 16
68
94
  hosts = host_list_from_plugin_id(stig.plugin_id)
69
95
  hosts_string = host_list_text(hosts)
70
-
96
+
71
97
  if hosts.count > 1
72
98
  @output.text "<b>Hosts</b>: #{hosts_string}", :inline_format => true
73
99
  else
74
100
  @output.text "<b>Host</b>: #{hosts_string}", :inline_format => true
75
101
  end
76
-
102
+
77
103
  @output.text "<b>Risk</b>: #{stig.plugin.risk_factor}", :inline_format => true
78
104
  @output.text "<b>CVE Reference</b>: #{ref_string(stig.plugin.references.cve)}", :inline_format => true
79
105
  @output.text "<b>IAVA Reference</b>: #{ref_string(stig.plugin.references.iava)}", :inline_format => true
80
-
106
+
81
107
  if stig.plugin.description != nil
82
108
  @output.text "\nDescription:", :style => :bold
83
109
  @output.text stig.plugin.description
84
110
  end
85
-
111
+
86
112
  @output.text "\n"
87
113
  end
88
114
  end
89
-
115
+
90
116
  #
91
117
  #
92
118
  def ref_string ref
93
119
  return "" if ref == nil
94
-
120
+
95
121
  ref_string = ""
96
122
  ref.each do |r|
97
123
  ref_string << r.value + ", "
98
124
  end
99
-
125
+
100
126
  ref_string.chomp!(", ")
101
127
  end
102
-
128
+
103
129
  # Called during the rendering process
104
130
  #
105
131
  def render(output)
@@ -108,26 +134,26 @@ module Risu
108
134
  @output.font_size 10
109
135
 
110
136
  header
111
-
137
+
112
138
  if Item.stig_findings("I").count > 0
113
139
  @output.text "<color rgb='551A8B'>Category I Findings</color>", :size => 18, :style => :bold, :inline_format => true
114
140
  stig_findings_text("I")
115
- end
116
-
141
+ end
142
+
117
143
  if Item.stig_findings("II").count > 0
118
144
  @output.start_new_page
119
145
  @output.text "<color rgb='FF0000'>Category II Findings</color>", :size => 18, :style => :bold, :inline_format => true
120
146
  stig_findings_text("II")
121
- end
122
-
147
+ end
148
+
123
149
  if Item.stig_findings("III").count > 0
124
150
  @output.start_new_page
125
151
  @output.text "<color rgb='FF8040'>Category III Findings</color>", :size => 18, :style => :bold, :inline_format => true
126
152
  stig_findings_text("III")
127
153
  end
128
-
154
+
129
155
  @output.number_pages "<page> of <total>", :at => [@output.bounds.right - 75, 0], :width => 150, :page_filter => :all
130
-
156
+
131
157
  end
132
158
  end
133
159
  end
@@ -1,3 +1,29 @@
1
+ # Copyright (c) 2010-2012 Arxopia LLC.
2
+ # All rights reserved.
3
+
4
+ # Redistribution and use in source and binary forms, with or without
5
+ # modification, are permitted provided that the following conditions are met:
6
+
7
+ # * Redistributions of source code must retain the above copyright
8
+ # notice, this list of conditions and the following disclaimer.
9
+ # * Redistributions in binary form must reproduce the above copyright
10
+ # notice, this list of conditions and the following disclaimer in the
11
+ # documentation and/or other materials provided with the distribution.
12
+ # * Neither the name of the Arxopia LLC nor the names of its contributors
13
+ # may be used to endorse or promote products derived from this software
14
+ # without specific prior written permission.
15
+
16
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
+ # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
+ # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
+ # DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
20
+ # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
+ # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
+ # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
+ #OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
+ #OF THE POSSIBILITY OF SUCH DAMAGE.
26
+
1
27
  module Risu
2
28
  module Templates
3
29
  class TechnicalFindings < Risu::Base::TemplateBase
@@ -9,7 +35,7 @@ module Risu
9
35
  {
10
36
  :name => "technical_findings",
11
37
  :author => "hammackj",
12
- :version => "0.0.2",
38
+ :version => "0.0.3",
13
39
  :description => "Generates a Technical Findings Report"
14
40
  }
15
41
  end
@@ -30,7 +56,7 @@ module Risu
30
56
  output.text "\n\n\n"
31
57
 
32
58
  unique_risks = Array.new
33
- unique_risks << Hash[:title => "Criical Findings", :color => "9B30FF", :values => Item.critical_risks_unique]
59
+ unique_risks << Hash[:title => "Critical Findings", :color => "9B30FF", :values => Item.critical_risks_unique]
34
60
  unique_risks << Hash[:title => "High Findings", :color => "FF0000", :values => Item.high_risks_unique]
35
61
  # unique_risks << Hash[:title => "Medium Findings", :color => "FF8040", :values => Item.medium_risks_unique]
36
62
 
@@ -41,7 +67,7 @@ module Risu
41
67
  output.text h[:title], :style => :bold
42
68
  output.fill_color "000000"
43
69
  end
44
-
70
+
45
71
  output.font_size(10)
46
72
 
47
73
  output.text "\n"
@@ -1,25 +1,51 @@
1
+ # Copyright (c) 2010-2012 Arxopia LLC.
2
+ # All rights reserved.
3
+
4
+ # Redistribution and use in source and binary forms, with or without
5
+ # modification, are permitted provided that the following conditions are met:
6
+
7
+ # * Redistributions of source code must retain the above copyright
8
+ # notice, this list of conditions and the following disclaimer.
9
+ # * Redistributions in binary form must reproduce the above copyright
10
+ # notice, this list of conditions and the following disclaimer in the
11
+ # documentation and/or other materials provided with the distribution.
12
+ # * Neither the name of the Arxopia LLC nor the names of its contributors
13
+ # may be used to endorse or promote products derived from this software
14
+ # without specific prior written permission.
15
+
16
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
+ # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
+ # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
+ # DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
20
+ # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
+ # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
+ # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
+ #OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
+ #OF THE POSSIBILITY OF SUCH DAMAGE.
26
+
1
27
  module Risu
2
28
  module Templates
3
29
  class Template < Risu::Base::TemplateBase
4
-
5
- # Initializes the template loading metadata
30
+
31
+ # Initializes the template loading meta data
6
32
  #
7
33
  def initialize ()
8
- @template_info =
9
- {
10
- :name => "template",
11
- :author => "hammackj",
12
- :version => "0.0.1",
34
+ @template_info =
35
+ {
36
+ :name => "template",
37
+ :author => "hammackj",
38
+ :version => "0.0.2",
13
39
  :description => "template"
14
40
  }
15
41
  end
16
-
42
+
17
43
  # Called during the rendering process
18
44
  #
19
45
  def render(output)
20
46
  output.text "Template"
47
+ output.start_new_page
21
48
  end
22
49
  end
23
50
  end
24
51
  end
25
-
data/risu.gemspec CHANGED
@@ -1,3 +1,29 @@
1
+ # Copyright (c) 2010-2012 Arxopia LLC.
2
+ # All rights reserved.
3
+
4
+ # Redistribution and use in source and binary forms, with or without
5
+ # modification, are permitted provided that the following conditions are met:
6
+
7
+ # * Redistributions of source code must retain the above copyright
8
+ # notice, this list of conditions and the following disclaimer.
9
+ # * Redistributions in binary form must reproduce the above copyright
10
+ # notice, this list of conditions and the following disclaimer in the
11
+ # documentation and/or other materials provided with the distribution.
12
+ # * Neither the name of the Arxopia LLC nor the names of its contributors
13
+ # may be used to endorse or promote products derived from this software
14
+ # without specific prior written permission.
15
+
16
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
+ # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
+ # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
+ # DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
20
+ # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
+ # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
+ # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
+ #OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
+ #OF THE POSSIBILITY OF SUCH DAMAGE.
26
+
1
27
  base = __FILE__
2
28
  $:.unshift(File.join(File.dirname(base), 'lib'))
3
29
 
@@ -9,7 +35,7 @@ Gem::Specification.new do |s|
9
35
  s.version = Risu::VERSION
10
36
  s.homepage = "http://www.hammackj.com/projects/risu"
11
37
  s.summary = "#{Risu::APP_NAME}"
12
- s.description = "#{Risu::APP_NAME} is a Nessus .nessus xml parser and report generation tool"
38
+ s.description = "#{Risu::APP_NAME} is a Nessus .nessus XML parser and report generation tool"
13
39
  s.license = "BSD"
14
40
 
15
41
  s.author = "Jacob Hammack"
@@ -25,12 +51,8 @@ Gem::Specification.new do |s|
25
51
  s.required_rubygems_version = ">= 1.6.0"
26
52
  s.rubyforge_project = "#{Risu::APP_NAME}"
27
53
 
28
- s.add_development_dependency("rspec", ["~> 2.5.0"])
29
- s.add_development_dependency("rcov", [">= 0.9.9"])
54
+ s.add_development_dependency("simplecov", [">= 0.9.9"])
30
55
  s.add_development_dependency("yard", [">= 0.6.4"])
31
- s.add_development_dependency("machinist", [">= 1.0.6"])
32
- s.add_development_dependency("sham", [">= 0.4.0"])
33
- s.add_development_dependency("faker", [">= 0.9.5"])
34
56
 
35
57
  s.add_dependency('rails', ['>= 3.0.7'])
36
58
  s.add_dependency('libxml-ruby', ['>= 1.1.4'])
@@ -39,5 +61,4 @@ Gem::Specification.new do |s|
39
61
  s.add_dependency('mysql', ['>= 2.8.1'])
40
62
  s.add_dependency('rmagick', [">= 2.13.1"])
41
63
  s.add_dependency('sqlite3', [">= 1.3.3"])
42
- s.add_dependency('simplecov', [">= 0.5.4"])
43
64
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: risu
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0
4
+ version: 1.5.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,33 +9,27 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-20 00:00:00.000000000Z
12
+ date: 2012-07-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: rspec
16
- requirement: &70112537871540 !ruby/object:Gem::Requirement
15
+ name: simplecov
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
- - - ~>
19
+ - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
- version: 2.5.0
21
+ version: 0.9.9
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70112537871540
25
- - !ruby/object:Gem::Dependency
26
- name: rcov
27
- requirement: &70112537870960 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
28
25
  none: false
29
26
  requirements:
30
27
  - - ! '>='
31
28
  - !ruby/object:Gem::Version
32
29
  version: 0.9.9
33
- type: :development
34
- prerelease: false
35
- version_requirements: *70112537870960
36
30
  - !ruby/object:Gem::Dependency
37
31
  name: yard
38
- requirement: &70112537870420 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
39
33
  none: false
40
34
  requirements:
41
35
  - - ! '>='
@@ -43,65 +37,47 @@ dependencies:
43
37
  version: 0.6.4
44
38
  type: :development
45
39
  prerelease: false
46
- version_requirements: *70112537870420
47
- - !ruby/object:Gem::Dependency
48
- name: machinist
49
- requirement: &70112537869780 !ruby/object:Gem::Requirement
40
+ version_requirements: !ruby/object:Gem::Requirement
50
41
  none: false
51
42
  requirements:
52
43
  - - ! '>='
53
44
  - !ruby/object:Gem::Version
54
- version: 1.0.6
55
- type: :development
56
- prerelease: false
57
- version_requirements: *70112537869780
45
+ version: 0.6.4
58
46
  - !ruby/object:Gem::Dependency
59
- name: sham
60
- requirement: &70112537869080 !ruby/object:Gem::Requirement
47
+ name: rails
48
+ requirement: !ruby/object:Gem::Requirement
61
49
  none: false
62
50
  requirements:
63
51
  - - ! '>='
64
52
  - !ruby/object:Gem::Version
65
- version: 0.4.0
66
- type: :development
53
+ version: 3.0.7
54
+ type: :runtime
67
55
  prerelease: false
68
- version_requirements: *70112537869080
69
- - !ruby/object:Gem::Dependency
70
- name: faker
71
- requirement: &70112537868440 !ruby/object:Gem::Requirement
56
+ version_requirements: !ruby/object:Gem::Requirement
72
57
  none: false
73
58
  requirements:
74
59
  - - ! '>='
75
60
  - !ruby/object:Gem::Version
76
- version: 0.9.5
77
- type: :development
78
- prerelease: false
79
- version_requirements: *70112537868440
61
+ version: 3.0.7
80
62
  - !ruby/object:Gem::Dependency
81
- name: rails
82
- requirement: &70112537867640 !ruby/object:Gem::Requirement
63
+ name: libxml-ruby
64
+ requirement: !ruby/object:Gem::Requirement
83
65
  none: false
84
66
  requirements:
85
67
  - - ! '>='
86
68
  - !ruby/object:Gem::Version
87
- version: 3.0.7
69
+ version: 1.1.4
88
70
  type: :runtime
89
71
  prerelease: false
90
- version_requirements: *70112537867640
91
- - !ruby/object:Gem::Dependency
92
- name: libxml-ruby
93
- requirement: &70112537867020 !ruby/object:Gem::Requirement
72
+ version_requirements: !ruby/object:Gem::Requirement
94
73
  none: false
95
74
  requirements:
96
75
  - - ! '>='
97
76
  - !ruby/object:Gem::Version
98
77
  version: 1.1.4
99
- type: :runtime
100
- prerelease: false
101
- version_requirements: *70112537867020
102
78
  - !ruby/object:Gem::Dependency
103
79
  name: prawn
104
- requirement: &70112537866340 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
105
81
  none: false
106
82
  requirements:
107
83
  - - ! '>='
@@ -109,10 +85,15 @@ dependencies:
109
85
  version: 0.11.1
110
86
  type: :runtime
111
87
  prerelease: false
112
- version_requirements: *70112537866340
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: 0.11.1
113
94
  - !ruby/object:Gem::Dependency
114
95
  name: gruff
115
- requirement: &70112537865800 !ruby/object:Gem::Requirement
96
+ requirement: !ruby/object:Gem::Requirement
116
97
  none: false
117
98
  requirements:
118
99
  - - ! '>='
@@ -120,10 +101,15 @@ dependencies:
120
101
  version: 0.3.6
121
102
  type: :runtime
122
103
  prerelease: false
123
- version_requirements: *70112537865800
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: 0.3.6
124
110
  - !ruby/object:Gem::Dependency
125
111
  name: mysql
126
- requirement: &70112537864680 !ruby/object:Gem::Requirement
112
+ requirement: !ruby/object:Gem::Requirement
127
113
  none: false
128
114
  requirements:
129
115
  - - ! '>='
@@ -131,10 +117,15 @@ dependencies:
131
117
  version: 2.8.1
132
118
  type: :runtime
133
119
  prerelease: false
134
- version_requirements: *70112537864680
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: 2.8.1
135
126
  - !ruby/object:Gem::Dependency
136
127
  name: rmagick
137
- requirement: &70112537863500 !ruby/object:Gem::Requirement
128
+ requirement: !ruby/object:Gem::Requirement
138
129
  none: false
139
130
  requirements:
140
131
  - - ! '>='
@@ -142,10 +133,15 @@ dependencies:
142
133
  version: 2.13.1
143
134
  type: :runtime
144
135
  prerelease: false
145
- version_requirements: *70112537863500
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: 2.13.1
146
142
  - !ruby/object:Gem::Dependency
147
143
  name: sqlite3
148
- requirement: &70112537862980 !ruby/object:Gem::Requirement
144
+ requirement: !ruby/object:Gem::Requirement
149
145
  none: false
150
146
  requirements:
151
147
  - - ! '>='
@@ -153,19 +149,13 @@ dependencies:
153
149
  version: 1.3.3
154
150
  type: :runtime
155
151
  prerelease: false
156
- version_requirements: *70112537862980
157
- - !ruby/object:Gem::Dependency
158
- name: simplecov
159
- requirement: &70112537861860 !ruby/object:Gem::Requirement
152
+ version_requirements: !ruby/object:Gem::Requirement
160
153
  none: false
161
154
  requirements:
162
155
  - - ! '>='
163
156
  - !ruby/object:Gem::Version
164
- version: 0.5.4
165
- type: :runtime
166
- prerelease: false
167
- version_requirements: *70112537861860
168
- description: risu is a Nessus .nessus xml parser and report generation tool
157
+ version: 1.3.3
158
+ description: risu is a Nessus .nessus XML parser and report generation tool
169
159
  email: jacob.hammack@hammackj.com
170
160
  executables:
171
161
  - risu
@@ -177,62 +167,65 @@ extra_rdoc_files:
177
167
  - TODO.markdown
178
168
  - KNOWNISSUES.markdown
179
169
  files:
180
- - Gemfile.ci
181
- - KNOWNISSUES.markdown
182
- - LICENSE
183
170
  - NEWS.markdown
171
+ - TODO.markdown
184
172
  - Rakefile
185
173
  - README.markdown
186
- - TODO.markdown
187
- - lib/risu/base/prawn_templater.rb
188
- - lib/risu/base/schema.rb
189
- - lib/risu/base/template_base.rb
190
- - lib/risu/base/template_manager.rb
191
- - lib/risu/base/templater.rb
174
+ - LICENSE
175
+ - KNOWNISSUES.markdown
176
+ - Gemfile.ci
192
177
  - lib/risu/base.rb
193
- - lib/risu/cli/application.rb
194
- - lib/risu/cli/banner.rb
195
178
  - lib/risu/cli.rb
196
- - lib/risu/exceptions/invaliddocument.rb
179
+ - lib/risu/cli/banner.rb
180
+ - lib/risu/cli/application.rb
197
181
  - lib/risu/exceptions.rb
198
- - lib/risu/models/familyselection.rb
199
- - lib/risu/models/host.rb
200
- - lib/risu/models/individualpluginselection.rb
201
- - lib/risu/models/item.rb
202
- - lib/risu/models/patch.rb
182
+ - lib/risu/parsers/nexpose/nexpose_document.rb
183
+ - lib/risu/parsers/nexpose/simple_nexpose.rb
184
+ - lib/risu/parsers/nessus/nessus_document.rb
185
+ - lib/risu/parsers/nessus/nessus_sax_listener.rb
186
+ - lib/risu/models/reference.rb
203
187
  - lib/risu/models/plugin.rb
204
- - lib/risu/models/pluginspreference.rb
205
188
  - lib/risu/models/policy.rb
206
- - lib/risu/models/reference.rb
189
+ - lib/risu/models/host.rb
190
+ - lib/risu/models/item.rb
191
+ - lib/risu/models/version.rb
207
192
  - lib/risu/models/report.rb
208
193
  - lib/risu/models/serverpreference.rb
209
194
  - lib/risu/models/servicedescription.rb
210
- - lib/risu/models/version.rb
211
- - lib/risu/models.rb
212
- - lib/risu/parsers/nessus/nessus_document.rb
213
- - lib/risu/parsers/nessus/nessus_sax_listener.rb
195
+ - lib/risu/models/pluginspreference.rb
196
+ - lib/risu/models/familyselection.rb
197
+ - lib/risu/models/patch.rb
198
+ - lib/risu/models/individualpluginselection.rb
199
+ - lib/risu/exceptions/invaliddocument.rb
200
+ - lib/risu/base/prawn_templater.rb
201
+ - lib/risu/base/template_manager.rb
202
+ - lib/risu/base/schema.rb
203
+ - lib/risu/base/template_base.rb
204
+ - lib/risu/base/templater.rb
214
205
  - lib/risu/parsers.rb
215
- - lib/risu/renderers/nilrenderer.rb
216
- - lib/risu/renderers.rb
217
- - lib/risu/templates/assets.rb
218
- - lib/risu/templates/cover_sheet.rb
219
- - lib/risu/templates/data/nessuslogo.jpg
220
- - lib/risu/templates/exec_summary.rb
221
- - lib/risu/templates/executive_summary.rb
222
- - lib/risu/templates/finding_statistics.rb
223
206
  - lib/risu/templates/findings_host.rb
224
- - lib/risu/templates/findings_summary.rb
207
+ - lib/risu/templates/assets.rb
225
208
  - lib/risu/templates/findings_summary_with_pluginid.rb
226
- - lib/risu/templates/graphs.rb
209
+ - lib/risu/templates/findings_summary.rb
210
+ - lib/risu/templates/ms_wsus_findings.rb
211
+ - lib/risu/templates/template.rb
212
+ - lib/risu/templates/notable_detailed.rb
213
+ - lib/risu/templates/executive_summary.rb
214
+ - lib/risu/templates/data/nessuslogo.jpg
227
215
  - lib/risu/templates/host_summary.rb
228
216
  - lib/risu/templates/ms_patch_summary.rb
229
- - lib/risu/templates/ms_update_summary.rb
230
- - lib/risu/templates/notable.rb
231
- - lib/risu/templates/notable_detailed.rb
232
- - lib/risu/templates/pci_compliance.rb
217
+ - lib/risu/templates/cover_sheet.rb
233
218
  - lib/risu/templates/stig_findings_summary.rb
219
+ - lib/risu/templates/pci_compliance.rb
220
+ - lib/risu/templates/notable.rb
234
221
  - lib/risu/templates/technical_findings.rb
235
- - lib/risu/templates/template.rb
222
+ - lib/risu/templates/graphs.rb
223
+ - lib/risu/templates/ms_update_summary.rb
224
+ - lib/risu/templates/finding_statistics.rb
225
+ - lib/risu/templates/exec_summary.rb
226
+ - lib/risu/renderers.rb
227
+ - lib/risu/models.rb
228
+ - lib/risu/renderers/nilrenderer.rb
236
229
  - lib/risu.rb
237
230
  - risu.gemspec
238
231
  - bin/risu
@@ -257,7 +250,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
257
250
  version: 1.6.0
258
251
  requirements: []
259
252
  rubyforge_project: risu
260
- rubygems_version: 1.8.6
253
+ rubygems_version: 1.8.24
261
254
  signing_key:
262
255
  specification_version: 3
263
256
  summary: risu