risu 1.6.0 → 1.6.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 2ebb8f4ad04b70d5ae2feb0b759f84f2eae2a32e
4
+ data.tar.gz: fb2c984de176ee7b70a384eda9a2e5dd177a9151
5
+ SHA512:
6
+ metadata.gz: cffdae23493c7112b0044e8a53f1fc469b1ff347f337cafd99d3498b066fcd43d781aea24c0aeac4b9a5c3967f82f29336b2b058e2dde925b6bcf02a0cb257a5
7
+ data.tar.gz: 4604b1a85ed9e2a89c06299fe5d1784b7fae0ae6bdec5175b32d73dae55a1314a91411989d221d25ae91925d3d20b1a9473684e9b6caa0ede721946470916b65
@@ -1,6 +1,15 @@
1
1
  # News
2
2
 
3
- # 1.6 (2013)
3
+ #1.6.1 (March 1, 2013)
4
+ - Models
5
+ - Reference Model
6
+ - Added usn
7
+ - HostProperty Model ***NEW***
8
+ - New model for each HostProperty off of ReportHost
9
+ - The table is name / value for each property
10
+ - All netstat / traceroute tags will be in this new table there can be up to 65k entries for each protocol and 255 traceroute entries per host
11
+
12
+ # 1.6 (February 27, 2013)
4
13
  ***Official support for Ruby versions less than 1.9.3 has been dropped due to Rails 4***
5
14
 
6
15
  - Changed all copyright to Arxopia LLC. instead of myself for legal protection, **Nothing changes** the project will always be open source and free (as in cost)
@@ -2,7 +2,7 @@
2
2
 
3
3
  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.
4
4
 
5
- Version **1.6.0** is the current release.
5
+ Version **1.6.1** is the current release.
6
6
 
7
7
  ## Requirements
8
8
 
@@ -22,6 +22,11 @@ Risu relies heavily on [RubyGems](http://rubygems.org/) to install other depende
22
22
  - mysql2
23
23
  - nokogiri
24
24
 
25
+ ## Installation
26
+ Installation is really easy just gem install!
27
+
28
+ % gem install risu
29
+
25
30
  ## Developmental Requirements
26
31
 
27
32
  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:
@@ -32,11 +37,6 @@ These are all available through [RubyGems](http://rubygems.org/). The should be
32
37
 
33
38
  Any database that ActiveRecord supports should work. Risu has been tested with [MySQL](http://www.mysql.com/) and [SQLite3](http://sqlite.org/).
34
39
 
35
- ## Installation
36
- Installation is really easy just gem install!
37
-
38
- % gem install risu
39
-
40
40
  ## Database Setup
41
41
 
42
42
  % risu --create-config
@@ -26,7 +26,7 @@
26
26
 
27
27
  module Risu
28
28
  APP_NAME = "risu"
29
- VERSION = "1.6.0"
29
+ VERSION = "1.6.1"
30
30
  GRAPH_WIDTH = 750
31
31
  EMAIL = "risu@arxopia.com"
32
32
  CONFIG_FILE = "./risu.cfg"
@@ -77,37 +77,15 @@ module Risu
77
77
  t.string :ip
78
78
  t.string :fqdn
79
79
  t.string :netbios
80
- t.string :local_checks_proto
81
- t.string :smb_login_used
82
- t.string :ssh_auth_meth
83
- t.string :ssh_login_used
84
- t.string :pci_dss_compliance
85
- t.string :pci_dss_compliance_
86
- t.string :pcidss_compliance_failed
87
- t.string :pcidss_compliance_passed
88
- t.string :pcidss_deprecated_ssl
89
- t.string :pcidss_expired_ssl_certificate
90
- t.string :pcidss_obsolete_operating_system
91
- t.string :pcidss_dns_zone_transfer
92
- t.string :pcidss_high_risk_flaw
93
- t.string :pcidss_medium_risk_flaw
94
- t.string :pcidss_reachable_db
95
- t.string :pcidss_www_xss
96
- t.string :pcidss_directory_browsing
97
- t.string :pcidss_known_credentials
98
- t.string :pcidss_compromised_host_worm
99
- t.string :pcidss_unprotected_mssql_db
100
- t.string :pcidss_obsolete_software
101
- t.string :pcidss_www_sql_injection
102
- t.string :pcidss_backup_files
103
- t.string :system_type
104
- t.string :bios_uuid
105
- t.string :traceroute_hop_0
106
- t.string :traceroute_hop_1
107
- t.string :traceroute_hop_2
108
80
  t.text :notes
109
81
  end
110
82
 
83
+ create_table :host_properties do |t|
84
+ t.integer :host_id
85
+ t.string :name
86
+ t.string :value
87
+ end
88
+
111
89
  create_table :items do |t|
112
90
  t.integer :host_id
113
91
  t.integer :plugin_id
@@ -223,6 +201,7 @@ module Risu
223
201
  drop_table :versions
224
202
  drop_table :service_descriptions
225
203
  drop_table :patches
204
+ drop_table :host_properties
226
205
  end
227
206
  end
228
207
  end
@@ -42,3 +42,4 @@ require 'risu/models/policy'
42
42
  require 'risu/models/version'
43
43
  require 'risu/models/servicedescription'
44
44
  require 'risu/models/patch'
45
+ require 'risu/models/hostproperty'
@@ -32,6 +32,7 @@ module Risu
32
32
  belongs_to :report
33
33
  has_many :items
34
34
  has_many :patches
35
+ has_many :host_properties
35
36
 
36
37
  class << self
37
38
 
@@ -0,0 +1,36 @@
1
+ # Copyright (c) 2010-2013 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
+
27
+ module Risu
28
+ module Models
29
+
30
+ # HostProperty Model
31
+ #
32
+ class HostProperty < ActiveRecord::Base
33
+ belongs_to :host
34
+ end
35
+ end
36
+ end
@@ -230,7 +230,13 @@ module Risu
230
230
  #
231
231
  def msvr
232
232
  where(:reference_name => "msvr").select('DISTINCT value')
233
- end
233
+ end
234
+
235
+ #
236
+ #
237
+ def usn
238
+ where(:reference_name => "usn").select('DISTINCT value')
239
+ end
234
240
  end
235
241
  end
236
242
  end
@@ -43,7 +43,18 @@ module Risu
43
43
  "osvdb", "cert", "edb-id", "rhsa", "secunia", "suse", "dsa",
44
44
  "owasp", "cwe", "iavb", "iavt", "cisco-sa", "ics-alert",
45
45
  "cisco-bug-id", "cisco-sr", "cert-vu", "vmsa", "apple-sa",
46
- "icsa", "cert-cc", "msvr"
46
+ "icsa", "cert-cc", "msvr", "usn"
47
+ ]
48
+
49
+ @valid_host_properties = Array[
50
+ "HOST_END", "mac-address", "HOST_START", "operating-system", "host-ip", "host-fqdn", "netbios-name",
51
+ "local-checks-proto", "smb-login-used", "ssh-auth-meth", "ssh-login-used", "pci-dss-compliance",
52
+ "pci-dss-compliance:", "system-type", "bios-uuid", "pcidss:compliance:failed", "pcidss:compliance:passed",
53
+ "pcidss:deprecated_ssl", "pcidss:expired_ssl_certificate", "pcidss:high_risk_flaw", "pcidss:medium_risk_flaw",
54
+ "pcidss:reachable_db", "pcidss:www:xss", "pcidss:directory_browsing", "pcidss:known_credentials",
55
+ "pcidss:compromised_host:worm", "pcidss:obsolete_operating_system", "pcidss:dns_zone_transfer",
56
+ "pcidss:unprotected_mssql_db", "pcidss:obsolete_software", "pcidss:www:sql_injection", "pcidss:backup_files",
57
+ "traceroute-hop-0", "traceroute-hop-1", "traceroute-hop-2"
47
58
  ]
48
59
 
49
60
  @valid_elements = Array["ReportItem", "plugin_version", "risk_factor",
@@ -63,45 +74,15 @@ module Risu
63
74
 
64
75
  @valid_elements = @valid_elements + @valid_references
65
76
 
66
- # This makes adding new host properties really easy, except for the
67
- #MS patch numbers, this are handled differently.
68
- # @todo this needs to become a sql hash table with accessors for the common ones
69
- @valid_host_properties = {
77
+ # These are the more commonly used host properties, mapping them here to store in the host table
78
+ @host_properties_mapping = {
70
79
  "HOST_END" => :end,
71
80
  "mac-address" => :mac,
72
81
  "HOST_START" => :start,
73
82
  "operating-system" => :os,
74
83
  "host-ip" => :ip,
75
84
  "host-fqdn" => :fqdn,
76
- "netbios-name" => :netbios,
77
- "local-checks-proto" => :local_checks_proto,
78
- "smb-login-used" => :smb_login_used,
79
- "ssh-auth-meth" => :ssh_auth_meth,
80
- "ssh-login-used" => :ssh_login_used,
81
- "pci-dss-compliance" => :pci_dss_compliance,
82
- "pci-dss-compliance:" => :pci_dss_compliance_ , #I think this is a Tenable bug~
83
- "system-type" => :system_type,
84
- "bios-uuid" => :bios_uuid,
85
- "pcidss:compliance:failed" => :pcidss_compliance_failed,
86
- "pcidss:compliance:passed" => :pcidss_compliance_passed,
87
- "pcidss:deprecated_ssl" => :pcidss_deprecated_ssl,
88
- "pcidss:expired_ssl_certificate" => :pcidss_expired_ssl_certificate,
89
- "pcidss:high_risk_flaw" => :pcidss_high_risk_flaw,
90
- "pcidss:medium_risk_flaw" => :pcidss_medium_risk_flaw,
91
- "pcidss:reachable_db" => :pcidss_reachable_db,
92
- "pcidss:www:xss" => :pcidss_www_xss,
93
- "pcidss:directory_browsing" => :pcidss_directory_browsing,
94
- "pcidss:known_credentials" => :pcidss_known_credentials,
95
- "pcidss:compromised_host:worm" => :pcidss_compromised_host_worm,
96
- "pcidss:obsolete_operating_system" => :pcidss_obsolete_operating_system,
97
- "pcidss:dns_zone_transfer" => :pcidss_dns_zone_transfer,
98
- "pcidss:unprotected_mssql_db" => :pcidss_unprotected_mssql_db,
99
- "pcidss:obsolete_software" => :pcidss_obsolete_software,
100
- "pcidss:www:sql_injection" => :pcidss_www_sql_injection,
101
- "pcidss:backup_files" => :pcidss_backup_files,
102
- "traceroute-hop-0" => :traceroute_hop_0,
103
- "traceroute-hop-1" => :traceroute_hop_1,
104
- "traceroute-hop-2" => :traceroute_hop_2
85
+ "netbios-name" => :netbios
105
86
  }
106
87
  end
107
88
 
@@ -143,6 +124,7 @@ module Risu
143
124
  @rh.save
144
125
  when "tag"
145
126
  @attr = nil
127
+ @hp = @rh.host_properties.create
146
128
 
147
129
  if attributes["name"] =~ /[M|m][S|s]\d{2,}-\d{2,}/
148
130
  @attr = if attributes["name"] =~ /[M|m][S|s]\d{2,}-\d{2,}/
@@ -151,14 +133,17 @@ module Risu
151
133
  nil
152
134
  end
153
135
  else
154
- @attr = if @valid_host_properties.keys.include?(attributes["name"])
136
+ @attr = if @valid_host_properties.include?(attributes["name"])
155
137
  attributes["name"]
156
138
  else
157
139
  nil
158
140
  end
159
141
  end
160
142
 
161
- puts "New HostProperties attribute: #{attributes["name"]}. Please report this to #{Risu::EMAIL}\n" if @attr.nil?
143
+ if attributes["name"] !~ /(netstat-(?:established|listen)-(?:tcp|udp)\d+-\d+)/ && attributes["name"] !~ /traceroute-hop-\d+/
144
+ #puts attributes["name"]
145
+ puts "New HostProperties attribute: #{attributes["name"]}. Please report this to #{Risu::EMAIL}\n" if @attr.nil?
146
+ end
162
147
  when "ReportItem"
163
148
  @vals = Hash.new # have to clear this out or everything has the same references
164
149
  @ri = @rh.items.create
@@ -168,7 +153,7 @@ module Risu
168
153
  @plugin = Risu::Models::Plugin.find_or_create_by_id(attributes["pluginID"])
169
154
  end
170
155
 
171
- @ri.port = attributes["port"]
156
+ @ri.port = attributes["port"]
172
157
  @ri.svc_name = attributes["svc_name"]
173
158
  @ri.protocol = attributes["protocol"]
174
159
  @ri.severity = attributes["severity"]
@@ -275,8 +260,13 @@ module Risu
275
260
  @patch.value = @vals['tag']
276
261
  @patch.save
277
262
  else
278
- @rh.attributes = {@valid_host_properties[@attr] => @vals["tag"].gsub("\n", ",") } if @valid_host_properties.keys.include?(@attr)
263
+ @rh.attributes = {@host_properties_mapping[@attr] => @vals["tag"].gsub("\n", ",") } if @host_properties_mapping.keys.include?(@attr)
279
264
  @rh.save
265
+
266
+ @hp.name = @attr
267
+ @hp.value = @vals['tag']
268
+ @hp.save
269
+
280
270
  end if @attr != nil
281
271
  #We cannot handle the references in the same block as the rest of the ReportItem tag because
282
272
  #there tends to be more than of the different types of reference per ReportItem, this causes issue for a sax
@@ -34,7 +34,7 @@ module Risu
34
34
  {
35
35
  :name => "pci_compliance",
36
36
  :author => "hammackj",
37
- :version => "0.0.4",
37
+ :version => "0.0.5",
38
38
  :description => "Generates a PCI Compliance Overview Report"
39
39
  }
40
40
  end
@@ -49,9 +49,12 @@ module Risu
49
49
 
50
50
  text "\n\n\n"
51
51
 
52
- @hosts_count = Host.find(:all, :conditions => ["pci_dss_compliance is not null"]).count
53
- @hosts_passed = Host.find(:all, :conditions => ["pci_dss_compliance like 'passed'"])
54
- @hosts_failed = Host.find(:all, :conditions => ["pci_dss_compliance like 'failed'"])
52
+ #@hosts_count = Host.find(:all, :conditions => ["pci_dss_compliance is not null"]).count
53
+ @hosts_count = HostProperty.where(:name => "pci_dss_compliance").count
54
+ #@hosts_passed = Host.find(:all, :conditions => ["pci_dss_compliance like 'passed'"])
55
+ @hosts_passed = HostProperty.where(:name => "pci_dss_compliance").where(:value => "passed")
56
+ #@hosts_failed = Host.find(:all, :conditions => ["pci_dss_compliance like 'failed'"])
57
+ @hosts_failed = HostProperty.where(:name => "pci_dss_compliance").where(:value => "failed")
55
58
 
56
59
  output.font_size(20) do
57
60
  output.text "Summary\n", :style => :bold
metadata CHANGED
@@ -1,174 +1,153 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: risu
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
5
- prerelease:
4
+ version: 1.6.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Jacob Hammack
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-02-27 00:00:00.000000000 Z
11
+ date: 2013-03-01 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: simplecov
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: 0.7.1
22
20
  type: :development
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - '>='
28
25
  - !ruby/object:Gem::Version
29
26
  version: 0.7.1
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: yard
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - '>='
36
32
  - !ruby/object:Gem::Version
37
33
  version: 0.8.3
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - '>='
44
39
  - !ruby/object:Gem::Version
45
40
  version: 0.8.3
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: rails
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - '>='
52
46
  - !ruby/object:Gem::Version
53
47
  version: 3.2.11
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - '>='
60
53
  - !ruby/object:Gem::Version
61
54
  version: 3.2.11
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: libxml-ruby
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - '>='
68
60
  - !ruby/object:Gem::Version
69
61
  version: 2.4.0
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - '>='
76
67
  - !ruby/object:Gem::Version
77
68
  version: 2.4.0
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: prawn
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - '>='
84
74
  - !ruby/object:Gem::Version
85
75
  version: 0.12.0
86
76
  type: :runtime
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - '>='
92
81
  - !ruby/object:Gem::Version
93
82
  version: 0.12.0
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: gruff
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
- - - ! '>='
87
+ - - '>='
100
88
  - !ruby/object:Gem::Version
101
89
  version: 0.3.7
102
90
  type: :runtime
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
- - - ! '>='
94
+ - - '>='
108
95
  - !ruby/object:Gem::Version
109
96
  version: 0.3.7
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: mysql2
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
- - - ! '>='
101
+ - - '>='
116
102
  - !ruby/object:Gem::Version
117
103
  version: 0.3.11
118
104
  type: :runtime
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
- - - ! '>='
108
+ - - '>='
124
109
  - !ruby/object:Gem::Version
125
110
  version: 0.3.11
126
111
  - !ruby/object:Gem::Dependency
127
112
  name: rmagick
128
113
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
114
  requirements:
131
- - - ! '>='
115
+ - - '>='
132
116
  - !ruby/object:Gem::Version
133
117
  version: 2.13.1
134
118
  type: :runtime
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
121
  requirements:
139
- - - ! '>='
122
+ - - '>='
140
123
  - !ruby/object:Gem::Version
141
124
  version: 2.13.1
142
125
  - !ruby/object:Gem::Dependency
143
126
  name: sqlite3
144
127
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
128
  requirements:
147
- - - ! '>='
129
+ - - '>='
148
130
  - !ruby/object:Gem::Version
149
131
  version: 1.3.7
150
132
  type: :runtime
151
133
  prerelease: false
152
134
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
135
  requirements:
155
- - - ! '>='
136
+ - - '>='
156
137
  - !ruby/object:Gem::Version
157
138
  version: 1.3.7
158
139
  - !ruby/object:Gem::Dependency
159
140
  name: nokogiri
160
141
  requirement: !ruby/object:Gem::Requirement
161
- none: false
162
142
  requirements:
163
- - - ! '>='
143
+ - - '>='
164
144
  - !ruby/object:Gem::Version
165
145
  version: 1.5.6
166
146
  type: :runtime
167
147
  prerelease: false
168
148
  version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
149
  requirements:
171
- - - ! '>='
150
+ - - '>='
172
151
  - !ruby/object:Gem::Version
173
152
  version: 1.5.6
174
153
  description: risu is a Nessus .nessus XML parser and report generation tool
@@ -225,6 +204,7 @@ files:
225
204
  - lib/risu/templates/ms_update_summary.rb
226
205
  - lib/risu/templates/technical_findings.rb
227
206
  - lib/risu/templates/findings_summary.rb
207
+ - lib/risu/models/hostproperty.rb
228
208
  - lib/risu/models/host.rb
229
209
  - lib/risu/models/item.rb
230
210
  - lib/risu/models/servicedescription.rb
@@ -244,27 +224,25 @@ files:
244
224
  homepage: http://www.arxopia.com/projects/risu
245
225
  licenses:
246
226
  - BSD
227
+ metadata: {}
247
228
  post_install_message:
248
229
  rdoc_options: []
249
230
  require_paths:
250
231
  - lib
251
232
  required_ruby_version: !ruby/object:Gem::Requirement
252
- none: false
253
233
  requirements:
254
- - - ! '>='
234
+ - - '>='
255
235
  - !ruby/object:Gem::Version
256
236
  version: '0'
257
237
  required_rubygems_version: !ruby/object:Gem::Requirement
258
- none: false
259
238
  requirements:
260
- - - ! '>='
239
+ - - '>='
261
240
  - !ruby/object:Gem::Version
262
241
  version: 1.8.24
263
242
  requirements: []
264
243
  rubyforge_project: risu
265
- rubygems_version: 1.8.25
244
+ rubygems_version: 2.0.0
266
245
  signing_key:
267
- specification_version: 3
246
+ specification_version: 4
268
247
  summary: risu
269
248
  test_files: []
270
- has_rdoc: yard