inspec_tools 0.0.0.1.ENOTAG → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/CHANGELOG.md +12 -657
- data/Guardfile +4 -0
- data/README.md +65 -132
- data/Rakefile +0 -6
- data/exe/inspec_tools +1 -1
- data/lib/data/README.TXT +1 -1
- data/lib/data/debug_text +5941 -0
- data/lib/happy_mapper_tools/cci_attributes.rb +22 -12
- data/lib/happy_mapper_tools/stig_checklist.rb +1 -6
- data/lib/inspec_tools.rb +2 -1
- data/lib/inspec_tools/cli.rb +140 -24
- data/lib/inspec_tools/command.rb +50 -0
- data/lib/inspec_tools/csv.rb +4 -6
- data/lib/inspec_tools/help/summary.md +2 -2
- data/lib/inspec_tools/inspec.rb +34 -133
- data/lib/inspec_tools/pdf.rb +2 -3
- data/lib/inspec_tools/summary.rb +2 -2
- data/lib/inspec_tools/version.rb +1 -6
- data/lib/inspec_tools/xccdf.rb +8 -22
- data/lib/utilities/inspec_util.rb +59 -208
- data/test/unit/inspec_tools/csv_test.rb +30 -0
- data/test/unit/inspec_tools/inspec_test.rb +54 -0
- data/test/unit/inspec_tools/pdf_test.rb +24 -0
- data/test/unit/inspec_tools/summary_test.rb +42 -0
- data/test/unit/inspec_tools/xccdf_test.rb +50 -0
- data/test/unit/inspec_tools_test.rb +7 -0
- data/test/unit/test_helper.rb +5 -0
- data/test/unit/utils/inspec_util_test.rb +43 -0
- metadata +70 -125
- data/lib/data/NIST_Map_02052020_CIS_Controls_Version_7.1_Implementation_Groups_1.2.xlsx +0 -0
- data/lib/exceptions/impact_input_error.rb +0 -6
- data/lib/exceptions/severity_input_error.rb +0 -6
- data/lib/inspec_tools/plugin.rb +0 -15
- data/lib/inspec_tools/plugin_cli.rb +0 -278
- data/lib/inspec_tools/xlsx_tool.rb +0 -148
- data/lib/inspec_tools_plugin.rb +0 -7
- data/lib/overrides/false_class.rb +0 -5
- data/lib/overrides/nil_class.rb +0 -5
- data/lib/overrides/object.rb +0 -5
- data/lib/overrides/string.rb +0 -5
- data/lib/overrides/true_class.rb +0 -5
@@ -0,0 +1,30 @@
|
|
1
|
+
require 'csv'
|
2
|
+
require 'yaml'
|
3
|
+
require_relative '../test_helper'
|
4
|
+
require_relative '../../../lib/inspec_tools/csv'
|
5
|
+
|
6
|
+
class CSVTest < Minitest::Test
|
7
|
+
def test_that_csv_exists
|
8
|
+
refute_nil ::InspecTools::CSVTool
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_csv_init_with_valid_params
|
12
|
+
csv = CSV.read('examples/csv2inspec/stig.csv', encoding: 'ISO8859-1')
|
13
|
+
mapping = YAML.load_file('examples/csv2inspec/mapping.yml')
|
14
|
+
assert(InspecTools::CSVTool.new(csv, mapping, 'test', false))
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_csv_init_with_invalid_params
|
18
|
+
csv = nil
|
19
|
+
mapping = nil
|
20
|
+
assert_raises(StandardError) { InspecTools::CSVTool.new(csv, mapping, 'test', false) }
|
21
|
+
end
|
22
|
+
|
23
|
+
def test_csv_to_inspec
|
24
|
+
csv = CSV.read('examples/csv2inspec/stig.csv', encoding: 'ISO8859-1')
|
25
|
+
mapping = YAML.load_file('examples/csv2inspec/mapping.yml')
|
26
|
+
csv_tool = InspecTools::CSVTool.new(csv, mapping, 'test', false)
|
27
|
+
inspec_json = csv_tool.to_inspec
|
28
|
+
assert(inspec_json)
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
require_relative '../test_helper'
|
2
|
+
|
3
|
+
class InspecTest < Minitest::Test
|
4
|
+
def test_that_xccdf_exists
|
5
|
+
refute_nil ::InspecTools::Inspec
|
6
|
+
end
|
7
|
+
|
8
|
+
def test_inspec_init_with_valid_params
|
9
|
+
inspec_json = File.read('examples/sample_json/single_control_results.json')
|
10
|
+
assert(InspecTools::Inspec.new(inspec_json))
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_inspec_init_with_invalid_params
|
14
|
+
json = nil
|
15
|
+
assert_raises(StandardError) { InspecTools::Inspec.new(json) }
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_inspec_to_ckl
|
19
|
+
inspec_json = File.read('examples/sample_json/single_control_results.json')
|
20
|
+
inspec_tools = InspecTools::Inspec.new(inspec_json)
|
21
|
+
ckl = inspec_tools.to_ckl
|
22
|
+
assert(ckl)
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_inspec_to_xccdf_results_json
|
26
|
+
inspec_json = File.read('examples/sample_json/single_control_results.json')
|
27
|
+
attributes = 'examples/attribute.json'
|
28
|
+
inspec_tools = InspecTools::Inspec.new(inspec_json)
|
29
|
+
xccdf = inspec_tools.to_xccdf(attributes)
|
30
|
+
assert(xccdf)
|
31
|
+
end
|
32
|
+
|
33
|
+
def test_inspec_to_xccdf_profile_json
|
34
|
+
inspec_json = File.read('examples/sample_json/single_control_profile.json')
|
35
|
+
attributes = 'examples/attribute.json'
|
36
|
+
inspec_tools = InspecTools::Inspec.new(inspec_json)
|
37
|
+
xccdf = inspec_tools.to_xccdf(attributes)
|
38
|
+
assert(xccdf)
|
39
|
+
end
|
40
|
+
|
41
|
+
def test_inspec_to_csv_results_json
|
42
|
+
inspec_json = File.read('examples/sample_json/single_control_results.json')
|
43
|
+
inspec_tools = InspecTools::Inspec.new(inspec_json)
|
44
|
+
csv = inspec_tools.to_csv
|
45
|
+
assert(csv)
|
46
|
+
end
|
47
|
+
|
48
|
+
def test_inspec_to_csv_profile_json
|
49
|
+
inspec_json = File.read('examples/sample_json/single_control_profile.json')
|
50
|
+
inspec_tools = InspecTools::Inspec.new(inspec_json)
|
51
|
+
csv = inspec_tools.to_csv
|
52
|
+
assert(csv)
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require_relative '../test_helper'
|
2
|
+
|
3
|
+
class PDFTest < Minitest::Test
|
4
|
+
def test_that_csv_exists
|
5
|
+
refute_nil ::InspecTools::PDF
|
6
|
+
end
|
7
|
+
|
8
|
+
def test_pdf_init_with_valid_params
|
9
|
+
pdf = File.open('examples/CIS_Ubuntu_Linux_16.04_LTS_Benchmark_v1.0.0.pdf')
|
10
|
+
assert(InspecTools::PDF.new(pdf, 'test', false))
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_pdf_init_with_invalid_params
|
14
|
+
pdf = nil
|
15
|
+
assert_raises(StandardError) { InspecTools::PDF.new(pdf, 'test', false) }
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_pdf_to_inspec
|
19
|
+
pdf = File.open('examples/CIS_Ubuntu_Linux_16.04_LTS_Benchmark_v1.0.0.pdf')
|
20
|
+
pdf_tool = InspecTools::PDF.new(pdf, 'test', true)
|
21
|
+
inspec_json = pdf_tool.to_inspec
|
22
|
+
assert(inspec_json)
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'csv'
|
2
|
+
require 'yaml'
|
3
|
+
require_relative '../test_helper'
|
4
|
+
require_relative '../../../lib/inspec_tools/csv'
|
5
|
+
|
6
|
+
class SummaryTest < Minitest::Test
|
7
|
+
def test_that_summary_exists
|
8
|
+
refute_nil ::InspecTools::Summary
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_summary_init_with_valid_params
|
12
|
+
inspec_json = File.read('examples/sample_json/rhel-simp.json')
|
13
|
+
assert(InspecTools::Summary.new(inspec_json))
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_summary_init_with_invalid_params
|
17
|
+
json = nil
|
18
|
+
assert_raises(StandardError) { InspecTools::Summary.new(json) }
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_inspec_to_summary
|
22
|
+
inspec_json = File.read('examples/sample_json/rhel-simp.json')
|
23
|
+
inspec_tools = InspecTools::Summary.new(inspec_json)
|
24
|
+
summary = inspec_tools.to_summary
|
25
|
+
assert_equal(77.3, summary[:compliance])
|
26
|
+
assert_equal(33, summary[:status][:failed][:medium])
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_inspec_results_compliance_pass
|
30
|
+
inspec_json = File.read('examples/sample_json/rhel-simp.json')
|
31
|
+
threshold = YAML.safe_load('{compliance.min: 77, failed.critical.max: 0, failed.high.max: 3}')
|
32
|
+
inspec_tools = InspecTools::Summary.new(inspec_json)
|
33
|
+
assert_output(/Compliance threshold met/) { inspec_tools.threshold(threshold) }
|
34
|
+
end
|
35
|
+
|
36
|
+
def test_inspec_results_compliance_fail
|
37
|
+
inspec_json = File.read('examples/sample_json/rhel-simp.json')
|
38
|
+
threshold = YAML.safe_load('{compliance.min: 80, failed.critical.max: 0, failed.high.max: 0}')
|
39
|
+
inspec_tools = InspecTools::Summary.new(inspec_json)
|
40
|
+
assert_output(%r{Expected compliance.min:80 got:77.3(\r\n|\r|\n)Expected failed.high.max:0 got:3}) { inspec_tools.threshold(threshold) }
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,50 @@
|
|
1
|
+
require_relative '../test_helper'
|
2
|
+
|
3
|
+
class XCCDFTest < Minitest::Test
|
4
|
+
def test_that_xccdf_exists
|
5
|
+
refute_nil ::InspecTools::XCCDF
|
6
|
+
end
|
7
|
+
|
8
|
+
def test_xccdf_init_with_valid_params
|
9
|
+
xccdf = File.read('examples/xccdf2inspec/data/U_Red_Hat_Enterprise_Linux_7_STIG_V1R4_Manual-xccdf.xml')
|
10
|
+
assert(InspecTools::XCCDF.new(xccdf))
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_xccdf_init_with_invalid_params
|
14
|
+
xccdf = nil
|
15
|
+
assert_raises(StandardError) { InspecTools::XCCDF.new(xccdf) }
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_xccdf_attributes
|
19
|
+
xccdf = InspecTools::XCCDF.new(File.read('examples/xccdf2inspec/data/U_Red_Hat_Enterprise_Linux_7_STIG_V1R4_Manual-xccdf.xml'))
|
20
|
+
assert_equal(xccdf.publisher, "DISA")
|
21
|
+
assert_equal(xccdf.published, "2017-12-14")
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_to_inspec
|
25
|
+
xccdf = InspecTools::XCCDF.new(File.read('examples/xccdf2inspec/data/U_Red_Hat_Enterprise_Linux_7_STIG_V1R4_Manual-xccdf.xml'))
|
26
|
+
assert(xccdf.to_inspec)
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_to_inspec_metadata
|
30
|
+
xccdf = InspecTools::XCCDF.new(File.read('examples/xccdf2inspec/data/U_Red_Hat_Enterprise_Linux_7_STIG_V1R4_Manual-xccdf.xml'))
|
31
|
+
inspec_json = xccdf.to_inspec
|
32
|
+
assert_equal(inspec_json['name'], "Red Hat Enterprise Linux 7 Security Technical Implementation Guide")
|
33
|
+
assert_equal(inspec_json['title'], "Red Hat Enterprise Linux 7 Security Technical Implementation Guide")
|
34
|
+
assert_equal(inspec_json['maintainer'], "The Authors")
|
35
|
+
assert_equal(inspec_json['copyright'], "The Authors")
|
36
|
+
assert_equal(inspec_json['copyright_email'], "you@example.com")
|
37
|
+
assert_equal(inspec_json['license'], "Apache-2.0")
|
38
|
+
assert_equal(inspec_json['summary'], "\"This Security Technical Implementation Guide is published as a tool to improve the security of Department of Defense (DoD) information systems. The requirements are derived from the National Institute of Standards and Technology (NIST) 800-53 and related documents. Comments or proposed revisions to this document should be sent via email to the following address: disa.stig_spt@mail.mil.\"")
|
39
|
+
assert_equal(inspec_json['version'], "0.1.0")
|
40
|
+
assert_equal(inspec_json['supports'], [])
|
41
|
+
assert_equal(inspec_json['attributes'], [])
|
42
|
+
assert_equal(inspec_json['generator'], {"name": "inspec", "version": Gem.loaded_specs["inspec"].version})
|
43
|
+
end
|
44
|
+
|
45
|
+
def test_controls_count
|
46
|
+
xccdf = InspecTools::XCCDF.new(File.read('examples/xccdf2inspec/data/U_Red_Hat_Enterprise_Linux_7_STIG_V1R4_Manual-xccdf.xml'))
|
47
|
+
inspec_json = xccdf.to_inspec
|
48
|
+
assert_equal(240, inspec_json['controls'].count)
|
49
|
+
end
|
50
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
require 'json'
|
2
|
+
require_relative '../test_helper'
|
3
|
+
require_relative '../../../lib/utilities/inspec_util'
|
4
|
+
|
5
|
+
class InspecUtilTest < Minitest::Test
|
6
|
+
def test_inspec_util_exists
|
7
|
+
refute_nil Utils::InspecUtil
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_get_impact
|
11
|
+
assert_equal(0.3, Utils::InspecUtil.get_impact('low'))
|
12
|
+
assert_equal(0.5, Utils::InspecUtil.get_impact('medium'))
|
13
|
+
assert_equal(0.7, Utils::InspecUtil.get_impact('high'))
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_unpack_inspec_json
|
17
|
+
json = JSON.parse(File.read('./examples/sample_json/single_control_profile.json'))
|
18
|
+
dir = Dir.mktmpdir
|
19
|
+
begin
|
20
|
+
Utils::InspecUtil.unpack_inspec_json(dir, json, false, 'ruby')
|
21
|
+
assert(File.exist?(dir + '/inspec.yml'))
|
22
|
+
assert(File.exist?(dir + '/README.md'))
|
23
|
+
assert(Dir.exist?(dir + '/libraries'))
|
24
|
+
assert(Dir.exist?(dir + '/controls'))
|
25
|
+
ensure
|
26
|
+
FileUtils.rm_rf dir
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
def test_parse_data_for_xccdf
|
31
|
+
json = JSON.parse(File.read('./examples/sample_json/single_control_profile.json'))
|
32
|
+
xccdf_json = Utils::InspecUtil.parse_data_for_xccdf(json)
|
33
|
+
assert_equal("Users must re-authenticate for privilege escalation.", xccdf_json['controls'][0]['title'])
|
34
|
+
assert_equal("F-78301r2_fix", xccdf_json['controls'][0]['fix_id'])
|
35
|
+
end
|
36
|
+
|
37
|
+
def test_parse_data_for_ckl
|
38
|
+
json = JSON.parse(File.read('./examples/sample_json/single_control_results.json'))
|
39
|
+
ckl_json = Utils::InspecUtil.parse_data_for_ckl(json)
|
40
|
+
assert_equal("Use human readable security markings", ckl_json[:"V-26680"][:rule_title])
|
41
|
+
assert_equal("AC-16 (5) Rev_4", ckl_json[:"V-26680"][:nist])
|
42
|
+
end
|
43
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: inspec_tools
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert Thew
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: exe
|
13
13
|
cert_chain: []
|
14
|
-
date:
|
14
|
+
date: 2019-01-16 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: colorize
|
@@ -29,38 +29,18 @@ dependencies:
|
|
29
29
|
version: '0'
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
31
|
name: inspec
|
32
|
-
requirement: !ruby/object:Gem::Requirement
|
33
|
-
requirements:
|
34
|
-
- - ">="
|
35
|
-
- !ruby/object:Gem::Version
|
36
|
-
version: 4.18.100
|
37
|
-
- - "<"
|
38
|
-
- !ruby/object:Gem::Version
|
39
|
-
version: '5.0'
|
40
|
-
type: :runtime
|
41
|
-
prerelease: false
|
42
|
-
version_requirements: !ruby/object:Gem::Requirement
|
43
|
-
requirements:
|
44
|
-
- - ">="
|
45
|
-
- !ruby/object:Gem::Version
|
46
|
-
version: 4.18.100
|
47
|
-
- - "<"
|
48
|
-
- !ruby/object:Gem::Version
|
49
|
-
version: '5.0'
|
50
|
-
- !ruby/object:Gem::Dependency
|
51
|
-
name: inspec_objects
|
52
32
|
requirement: !ruby/object:Gem::Requirement
|
53
33
|
requirements:
|
54
34
|
- - "~>"
|
55
35
|
- !ruby/object:Gem::Version
|
56
|
-
version: '
|
36
|
+
version: '2.2'
|
57
37
|
type: :runtime
|
58
38
|
prerelease: false
|
59
39
|
version_requirements: !ruby/object:Gem::Requirement
|
60
40
|
requirements:
|
61
41
|
- - "~>"
|
62
42
|
- !ruby/object:Gem::Version
|
63
|
-
version: '
|
43
|
+
version: '2.2'
|
64
44
|
- !ruby/object:Gem::Dependency
|
65
45
|
name: nokogiri
|
66
46
|
requirement: !ruby/object:Gem::Requirement
|
@@ -110,6 +90,9 @@ dependencies:
|
|
110
90
|
- - "~>"
|
111
91
|
- !ruby/object:Gem::Version
|
112
92
|
version: '2.1'
|
93
|
+
- - ">="
|
94
|
+
- !ruby/object:Gem::Version
|
95
|
+
version: 2.1.0
|
113
96
|
type: :runtime
|
114
97
|
prerelease: false
|
115
98
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -117,160 +100,113 @@ dependencies:
|
|
117
100
|
- - "~>"
|
118
101
|
- !ruby/object:Gem::Version
|
119
102
|
version: '2.1'
|
103
|
+
- - ">="
|
104
|
+
- !ruby/object:Gem::Version
|
105
|
+
version: 2.1.0
|
120
106
|
- !ruby/object:Gem::Dependency
|
121
107
|
name: roo
|
122
108
|
requirement: !ruby/object:Gem::Requirement
|
123
109
|
requirements:
|
124
110
|
- - "~>"
|
125
111
|
- !ruby/object:Gem::Version
|
126
|
-
version: '2.
|
112
|
+
version: '2.7'
|
127
113
|
type: :runtime
|
128
114
|
prerelease: false
|
129
115
|
version_requirements: !ruby/object:Gem::Requirement
|
130
116
|
requirements:
|
131
117
|
- - "~>"
|
132
118
|
- !ruby/object:Gem::Version
|
133
|
-
version: '2.
|
119
|
+
version: '2.7'
|
134
120
|
- !ruby/object:Gem::Dependency
|
135
|
-
name:
|
121
|
+
name: thor
|
136
122
|
requirement: !ruby/object:Gem::Requirement
|
137
123
|
requirements:
|
138
124
|
- - "~>"
|
139
125
|
- !ruby/object:Gem::Version
|
140
|
-
version: '
|
126
|
+
version: '0.19'
|
141
127
|
type: :runtime
|
142
128
|
prerelease: false
|
143
129
|
version_requirements: !ruby/object:Gem::Requirement
|
144
130
|
requirements:
|
145
131
|
- - "~>"
|
146
132
|
- !ruby/object:Gem::Version
|
147
|
-
version: '
|
133
|
+
version: '0.19'
|
148
134
|
- !ruby/object:Gem::Dependency
|
149
|
-
name:
|
135
|
+
name: word_wrap
|
150
136
|
requirement: !ruby/object:Gem::Requirement
|
151
137
|
requirements:
|
152
|
-
- - "
|
138
|
+
- - "~>"
|
139
|
+
- !ruby/object:Gem::Version
|
140
|
+
version: '1.0'
|
141
|
+
- - "~>"
|
153
142
|
- !ruby/object:Gem::Version
|
154
|
-
version: 0.
|
143
|
+
version: 1.0.0
|
155
144
|
type: :runtime
|
156
145
|
prerelease: false
|
157
146
|
version_requirements: !ruby/object:Gem::Requirement
|
158
147
|
requirements:
|
159
|
-
- - "
|
148
|
+
- - "~>"
|
160
149
|
- !ruby/object:Gem::Version
|
161
|
-
version: 0
|
150
|
+
version: '1.0'
|
151
|
+
- - "~>"
|
152
|
+
- !ruby/object:Gem::Version
|
153
|
+
version: 1.0.0
|
162
154
|
- !ruby/object:Gem::Dependency
|
163
155
|
name: bundler
|
164
156
|
requirement: !ruby/object:Gem::Requirement
|
165
157
|
requirements:
|
166
|
-
- - "
|
158
|
+
- - "~>"
|
167
159
|
- !ruby/object:Gem::Version
|
168
|
-
version: '
|
160
|
+
version: '1.12'
|
169
161
|
type: :development
|
170
162
|
prerelease: false
|
171
163
|
version_requirements: !ruby/object:Gem::Requirement
|
172
164
|
requirements:
|
173
|
-
- - "
|
165
|
+
- - "~>"
|
174
166
|
- !ruby/object:Gem::Version
|
175
|
-
version: '
|
167
|
+
version: '1.12'
|
176
168
|
- !ruby/object:Gem::Dependency
|
177
169
|
name: minitest
|
178
170
|
requirement: !ruby/object:Gem::Requirement
|
179
171
|
requirements:
|
180
|
-
- - "
|
172
|
+
- - "~>"
|
181
173
|
- !ruby/object:Gem::Version
|
182
|
-
version: '0'
|
174
|
+
version: '5.0'
|
183
175
|
type: :development
|
184
176
|
prerelease: false
|
185
177
|
version_requirements: !ruby/object:Gem::Requirement
|
186
178
|
requirements:
|
187
|
-
- - "
|
179
|
+
- - "~>"
|
188
180
|
- !ruby/object:Gem::Version
|
189
|
-
version: '0'
|
181
|
+
version: '5.0'
|
190
182
|
- !ruby/object:Gem::Dependency
|
191
183
|
name: pry
|
192
184
|
requirement: !ruby/object:Gem::Requirement
|
193
185
|
requirements:
|
194
|
-
- - "
|
186
|
+
- - "~>"
|
195
187
|
- !ruby/object:Gem::Version
|
196
188
|
version: '0'
|
197
189
|
type: :development
|
198
190
|
prerelease: false
|
199
191
|
version_requirements: !ruby/object:Gem::Requirement
|
200
192
|
requirements:
|
201
|
-
- - "
|
193
|
+
- - "~>"
|
202
194
|
- !ruby/object:Gem::Version
|
203
195
|
version: '0'
|
204
196
|
- !ruby/object:Gem::Dependency
|
205
197
|
name: rake
|
206
198
|
requirement: !ruby/object:Gem::Requirement
|
207
199
|
requirements:
|
208
|
-
- - "
|
209
|
-
- !ruby/object:Gem::Version
|
210
|
-
version: '0'
|
211
|
-
type: :development
|
212
|
-
prerelease: false
|
213
|
-
version_requirements: !ruby/object:Gem::Requirement
|
214
|
-
requirements:
|
215
|
-
- - ">="
|
216
|
-
- !ruby/object:Gem::Version
|
217
|
-
version: '0'
|
218
|
-
- !ruby/object:Gem::Dependency
|
219
|
-
name: codeclimate-test-reporter
|
220
|
-
requirement: !ruby/object:Gem::Requirement
|
221
|
-
requirements:
|
222
|
-
- - ">="
|
223
|
-
- !ruby/object:Gem::Version
|
224
|
-
version: '0'
|
225
|
-
type: :development
|
226
|
-
prerelease: false
|
227
|
-
version_requirements: !ruby/object:Gem::Requirement
|
228
|
-
requirements:
|
229
|
-
- - ">="
|
230
|
-
- !ruby/object:Gem::Version
|
231
|
-
version: '0'
|
232
|
-
- !ruby/object:Gem::Dependency
|
233
|
-
name: simplecov
|
234
|
-
requirement: !ruby/object:Gem::Requirement
|
235
|
-
requirements:
|
236
|
-
- - ">="
|
237
|
-
- !ruby/object:Gem::Version
|
238
|
-
version: '0'
|
239
|
-
type: :development
|
240
|
-
prerelease: false
|
241
|
-
version_requirements: !ruby/object:Gem::Requirement
|
242
|
-
requirements:
|
243
|
-
- - ">="
|
244
|
-
- !ruby/object:Gem::Version
|
245
|
-
version: '0'
|
246
|
-
- !ruby/object:Gem::Dependency
|
247
|
-
name: rubocop
|
248
|
-
requirement: !ruby/object:Gem::Requirement
|
249
|
-
requirements:
|
250
|
-
- - ">="
|
251
|
-
- !ruby/object:Gem::Version
|
252
|
-
version: '0'
|
253
|
-
type: :development
|
254
|
-
prerelease: false
|
255
|
-
version_requirements: !ruby/object:Gem::Requirement
|
256
|
-
requirements:
|
257
|
-
- - ">="
|
258
|
-
- !ruby/object:Gem::Version
|
259
|
-
version: '0'
|
260
|
-
- !ruby/object:Gem::Dependency
|
261
|
-
name: bundler-audit
|
262
|
-
requirement: !ruby/object:Gem::Requirement
|
263
|
-
requirements:
|
264
|
-
- - ">="
|
200
|
+
- - "~>"
|
265
201
|
- !ruby/object:Gem::Version
|
266
|
-
version: '0'
|
267
|
-
type: :
|
202
|
+
version: '10.0'
|
203
|
+
type: :runtime
|
268
204
|
prerelease: false
|
269
205
|
version_requirements: !ruby/object:Gem::Requirement
|
270
206
|
requirements:
|
271
|
-
- - "
|
207
|
+
- - "~>"
|
272
208
|
- !ruby/object:Gem::Version
|
273
|
-
version: '0'
|
209
|
+
version: '10.0'
|
274
210
|
description: Converter utils for Inspec that can be included as a gem or used from
|
275
211
|
the command line
|
276
212
|
email:
|
@@ -281,21 +217,20 @@ extensions: []
|
|
281
217
|
extra_rdoc_files: []
|
282
218
|
files:
|
283
219
|
- CHANGELOG.md
|
220
|
+
- Guardfile
|
284
221
|
- LICENSE.md
|
285
222
|
- README.md
|
286
223
|
- Rakefile
|
287
224
|
- exe/inspec_tools
|
288
|
-
- lib/data/NIST_Map_02052020_CIS_Controls_Version_7.1_Implementation_Groups_1.2.xlsx
|
289
225
|
- lib/data/NIST_Map_09212017B_CSC-CIS_Critical_Security_Controls_VER_6.1_Excel_9.1.2016.xlsx
|
290
226
|
- lib/data/README.TXT
|
291
227
|
- lib/data/U_CCI_List.xml
|
292
228
|
- lib/data/attributes.yml
|
293
229
|
- lib/data/cci2html.xsl
|
230
|
+
- lib/data/debug_text
|
294
231
|
- lib/data/mapping.yml
|
295
232
|
- lib/data/stig.csv
|
296
233
|
- lib/data/threshold.yaml
|
297
|
-
- lib/exceptions/impact_input_error.rb
|
298
|
-
- lib/exceptions/severity_input_error.rb
|
299
234
|
- lib/happy_mapper_tools/benchmark.rb
|
300
235
|
- lib/happy_mapper_tools/cci_attributes.rb
|
301
236
|
- lib/happy_mapper_tools/stig_attributes.rb
|
@@ -303,6 +238,7 @@ files:
|
|
303
238
|
- lib/inspec_tools.rb
|
304
239
|
- lib/inspec_tools/ckl.rb
|
305
240
|
- lib/inspec_tools/cli.rb
|
241
|
+
- lib/inspec_tools/command.rb
|
306
242
|
- lib/inspec_tools/csv.rb
|
307
243
|
- lib/inspec_tools/help.rb
|
308
244
|
- lib/inspec_tools/help/compliance.md
|
@@ -315,45 +251,54 @@ files:
|
|
315
251
|
- lib/inspec_tools/help/xccdf2inspec.md
|
316
252
|
- lib/inspec_tools/inspec.rb
|
317
253
|
- lib/inspec_tools/pdf.rb
|
318
|
-
- lib/inspec_tools/plugin.rb
|
319
|
-
- lib/inspec_tools/plugin_cli.rb
|
320
254
|
- lib/inspec_tools/summary.rb
|
321
255
|
- lib/inspec_tools/version.rb
|
322
256
|
- lib/inspec_tools/xccdf.rb
|
323
|
-
- lib/inspec_tools/xlsx_tool.rb
|
324
|
-
- lib/inspec_tools_plugin.rb
|
325
|
-
- lib/overrides/false_class.rb
|
326
|
-
- lib/overrides/nil_class.rb
|
327
|
-
- lib/overrides/object.rb
|
328
|
-
- lib/overrides/string.rb
|
329
|
-
- lib/overrides/true_class.rb
|
330
257
|
- lib/utilities/csv_util.rb
|
331
258
|
- lib/utilities/extract_nist_cis_mapping.rb
|
332
259
|
- lib/utilities/extract_pdf_text.rb
|
333
260
|
- lib/utilities/inspec_util.rb
|
334
261
|
- lib/utilities/parser.rb
|
335
262
|
- lib/utilities/text_cleaner.rb
|
336
|
-
|
263
|
+
- test/unit/inspec_tools/csv_test.rb
|
264
|
+
- test/unit/inspec_tools/inspec_test.rb
|
265
|
+
- test/unit/inspec_tools/pdf_test.rb
|
266
|
+
- test/unit/inspec_tools/summary_test.rb
|
267
|
+
- test/unit/inspec_tools/xccdf_test.rb
|
268
|
+
- test/unit/inspec_tools_test.rb
|
269
|
+
- test/unit/test_helper.rb
|
270
|
+
- test/unit/utils/inspec_util_test.rb
|
271
|
+
homepage: https://github.com/mitre/inspec_tools
|
337
272
|
licenses:
|
338
273
|
- Apache-2.0
|
339
|
-
metadata:
|
274
|
+
metadata:
|
275
|
+
allowed_push_host: https://rubygems.org
|
340
276
|
post_install_message:
|
341
277
|
rdoc_options: []
|
342
278
|
require_paths:
|
343
279
|
- lib
|
344
280
|
required_ruby_version: !ruby/object:Gem::Requirement
|
345
281
|
requirements:
|
346
|
-
- - "
|
282
|
+
- - ">="
|
347
283
|
- !ruby/object:Gem::Version
|
348
|
-
version: '
|
284
|
+
version: '0'
|
349
285
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
350
286
|
requirements:
|
351
|
-
- - "
|
287
|
+
- - ">="
|
352
288
|
- !ruby/object:Gem::Version
|
353
|
-
version:
|
289
|
+
version: '0'
|
354
290
|
requirements: []
|
355
|
-
|
291
|
+
rubyforge_project:
|
292
|
+
rubygems_version: 2.6.14
|
356
293
|
signing_key:
|
357
294
|
specification_version: 4
|
358
295
|
summary: Converter utils for Inspec
|
359
|
-
test_files:
|
296
|
+
test_files:
|
297
|
+
- test/unit/inspec_tools/csv_test.rb
|
298
|
+
- test/unit/inspec_tools/inspec_test.rb
|
299
|
+
- test/unit/inspec_tools/pdf_test.rb
|
300
|
+
- test/unit/inspec_tools/summary_test.rb
|
301
|
+
- test/unit/inspec_tools/xccdf_test.rb
|
302
|
+
- test/unit/inspec_tools_test.rb
|
303
|
+
- test/unit/test_helper.rb
|
304
|
+
- test/unit/utils/inspec_util_test.rb
|