@mitre/hdf-converters 2.5.3 → 2.6.6

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 (115) hide show
  1. package/lib/data/aws-config-mapping.json +638 -0
  2. package/lib/data/cci-nist-mapping.json +3553 -0
  3. package/lib/data/converters/csv2json.d.ts +1 -0
  4. package/lib/data/converters/csv2json.js +36 -0
  5. package/lib/data/converters/csv2json.js.map +1 -0
  6. package/lib/data/converters/csv2json.ts +36 -0
  7. package/lib/data/converters/xml2json.d.ts +14 -0
  8. package/lib/data/converters/xml2json.js +42 -0
  9. package/lib/data/converters/xml2json.js.map +1 -0
  10. package/lib/data/converters/xml2json.ts +57 -0
  11. package/lib/data/cwe-nist-mapping.json +1416 -0
  12. package/lib/data/nessus-plugins-nist-mapping.json +644 -0
  13. package/lib/data/nikto-nist-mapping.json +53648 -0
  14. package/lib/data/owasp-nist-mapping.json +72 -0
  15. package/lib/data/scoutsuite-nist-mapping.json +558 -0
  16. package/lib/index.d.ts +4 -0
  17. package/lib/index.js +4 -0
  18. package/lib/index.js.map +1 -1
  19. package/lib/package.json +16 -6
  20. package/lib/src/asff-mapper.d.ts +15 -0
  21. package/lib/src/asff-mapper.js +508 -0
  22. package/lib/src/asff-mapper.js.map +1 -0
  23. package/lib/src/aws-config-mapper.d.ts +28 -0
  24. package/lib/src/aws-config-mapper.js +369 -0
  25. package/lib/src/aws-config-mapper.js.map +1 -0
  26. package/lib/src/base-converter.d.ts +7 -10
  27. package/lib/src/base-converter.js +62 -15
  28. package/lib/src/base-converter.js.map +1 -1
  29. package/lib/src/burpsuite-mapper.js +2 -13
  30. package/lib/src/burpsuite-mapper.js.map +1 -1
  31. package/lib/src/converters-from-hdf/asff/asff-types.d.ts +88 -0
  32. package/lib/src/converters-from-hdf/asff/asff-types.js +3 -0
  33. package/lib/src/converters-from-hdf/asff/asff-types.js.map +1 -0
  34. package/lib/src/converters-from-hdf/asff/reverse-asff-mapper.d.ts +31 -0
  35. package/lib/src/converters-from-hdf/asff/reverse-asff-mapper.js +132 -0
  36. package/lib/src/converters-from-hdf/asff/reverse-asff-mapper.js.map +1 -0
  37. package/lib/src/converters-from-hdf/asff/transformers.d.ts +44 -0
  38. package/lib/src/converters-from-hdf/asff/transformers.js +397 -0
  39. package/lib/src/converters-from-hdf/asff/transformers.js.map +1 -0
  40. package/lib/src/converters-from-hdf/reverse-base-converter.d.ts +24 -0
  41. package/lib/src/converters-from-hdf/reverse-base-converter.js +111 -0
  42. package/lib/src/converters-from-hdf/reverse-base-converter.js.map +1 -0
  43. package/lib/src/dbprotect-mapper.js +1 -10
  44. package/lib/src/dbprotect-mapper.js.map +1 -1
  45. package/lib/src/fortify-mapper.js +1 -10
  46. package/lib/src/fortify-mapper.js.map +1 -1
  47. package/lib/src/jfrog-xray-mapper.js +1 -3
  48. package/lib/src/jfrog-xray-mapper.js.map +1 -1
  49. package/lib/src/mappings/AwsConfigMapping.d.ts +6 -0
  50. package/lib/src/mappings/AwsConfigMapping.js +39 -0
  51. package/lib/src/mappings/AwsConfigMapping.js.map +1 -0
  52. package/lib/src/mappings/AwsConfigMappingItem.d.ts +7 -0
  53. package/lib/src/mappings/AwsConfigMappingItem.js +28 -0
  54. package/lib/src/mappings/AwsConfigMappingItem.js.map +1 -0
  55. package/lib/src/mappings/CciNistMapping.d.ts +1 -1
  56. package/lib/src/mappings/CciNistMapping.js +5 -24
  57. package/lib/src/mappings/CciNistMapping.js.map +1 -1
  58. package/lib/src/mappings/CweNistMapping.d.ts +8 -1
  59. package/lib/src/mappings/CweNistMapping.js +4 -27
  60. package/lib/src/mappings/CweNistMapping.js.map +1 -1
  61. package/lib/src/mappings/CweNistMappingItem.d.ts +2 -1
  62. package/lib/src/mappings/CweNistMappingItem.js +9 -9
  63. package/lib/src/mappings/CweNistMappingItem.js.map +1 -1
  64. package/lib/src/mappings/NessusPluginsNistMapping.d.ts +7 -1
  65. package/lib/src/mappings/NessusPluginsNistMapping.js +4 -8
  66. package/lib/src/mappings/NessusPluginsNistMapping.js.map +1 -1
  67. package/lib/src/mappings/NessusPluginsNistMappingItem.d.ts +2 -1
  68. package/lib/src/mappings/NessusPluginsNistMappingItem.js +16 -6
  69. package/lib/src/mappings/NessusPluginsNistMappingItem.js.map +1 -1
  70. package/lib/src/mappings/NiktoNistMapping.d.ts +7 -1
  71. package/lib/src/mappings/NiktoNistMapping.js +4 -8
  72. package/lib/src/mappings/NiktoNistMapping.js.map +1 -1
  73. package/lib/src/mappings/NiktoNistMappingItem.d.ts +2 -1
  74. package/lib/src/mappings/NiktoNistMappingItem.js +7 -7
  75. package/lib/src/mappings/NiktoNistMappingItem.js.map +1 -1
  76. package/lib/src/mappings/OwaspNistMapping.d.ts +8 -1
  77. package/lib/src/mappings/OwaspNistMapping.js +4 -8
  78. package/lib/src/mappings/OwaspNistMapping.js.map +1 -1
  79. package/lib/src/mappings/OwaspNistMappingItem.d.ts +2 -1
  80. package/lib/src/mappings/OwaspNistMappingItem.js +9 -9
  81. package/lib/src/mappings/OwaspNistMappingItem.js.map +1 -1
  82. package/lib/src/mappings/ScoutsuiteNistMapping.d.ts +5 -1
  83. package/lib/src/mappings/ScoutsuiteNistMapping.js +4 -10
  84. package/lib/src/mappings/ScoutsuiteNistMapping.js.map +1 -1
  85. package/lib/src/mappings/ScoutsuiteNistMappingItem.d.ts +2 -1
  86. package/lib/src/mappings/ScoutsuiteNistMappingItem.js +4 -4
  87. package/lib/src/mappings/ScoutsuiteNistMappingItem.js.map +1 -1
  88. package/lib/src/nessus-mapper.js +3 -15
  89. package/lib/src/nessus-mapper.js.map +1 -1
  90. package/lib/src/netsparker-mapper.js +3 -15
  91. package/lib/src/netsparker-mapper.js.map +1 -1
  92. package/lib/src/nikto-mapper.js +1 -3
  93. package/lib/src/nikto-mapper.js.map +1 -1
  94. package/lib/src/sarif-mapper.js +1 -3
  95. package/lib/src/sarif-mapper.js.map +1 -1
  96. package/lib/src/scoutsuite-mapper.js +1 -3
  97. package/lib/src/scoutsuite-mapper.js.map +1 -1
  98. package/lib/src/snyk-mapper.js +1 -6
  99. package/lib/src/snyk-mapper.js.map +1 -1
  100. package/lib/src/sonarqube-mapper.d.ts +54 -0
  101. package/lib/src/sonarqube-mapper.js +196 -0
  102. package/lib/src/sonarqube-mapper.js.map +1 -0
  103. package/lib/src/xccdf-results-mapper.js +293 -92
  104. package/lib/src/xccdf-results-mapper.js.map +1 -1
  105. package/lib/src/zap-mapper.d.ts +1 -1
  106. package/lib/src/zap-mapper.js +7 -4
  107. package/lib/src/zap-mapper.js.map +1 -1
  108. package/package.json +16 -6
  109. package/lib/data/U_CCI_List.xml +0 -38403
  110. package/lib/data/aws-config-mapping.csv +0 -107
  111. package/lib/data/cwe-nist-mapping.csv +0 -203
  112. package/lib/data/nessus-plugins-nist-mapping.csv +0 -108
  113. package/lib/data/nikto-nist-mapping.csv +0 -8942
  114. package/lib/data/owasp-nist-mapping.csv +0 -11
  115. package/lib/data/scoutsuite-nist-mapping.csv +0 -140
@@ -1,13 +1,32 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
2
21
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
22
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
23
  };
5
24
  Object.defineProperty(exports, "__esModule", { value: true });
6
25
  exports.XCCDFResultsMapper = void 0;
7
26
  const fast_xml_parser_1 = __importDefault(require("fast-xml-parser"));
27
+ const htmlparser = __importStar(require("htmlparser2"));
8
28
  const inspecjs_1 = require("inspecjs");
9
29
  const lodash_1 = __importDefault(require("lodash"));
10
- const path_1 = __importDefault(require("path"));
11
30
  const package_json_1 = require("../package.json");
12
31
  const base_converter_1 = require("./base-converter");
13
32
  const CciNistMapping_1 = require("./mappings/CciNistMapping");
@@ -17,26 +36,113 @@ const IMPACT_MAPPING = new Map([
17
36
  ['medium', 0.5],
18
37
  ['low', 0.3]
19
38
  ]);
20
- const RULE_DESCRIPTION = 'cdf:Rule.cdf:description';
21
- const CCI_REGEX = /CCI-(\d*)/;
22
- const CCI_NIST_MAPPING_FILE = path_1.default.resolve(__dirname, '../data/U_CCI_List.xml');
23
- const CCI_NIST_MAPPING = new CciNistMapping_1.CciNistMapping(CCI_NIST_MAPPING_FILE);
39
+ const CCI_NIST_MAPPING = new CciNistMapping_1.CciNistMapping();
24
40
  const DEFAULT_NIST_TAG = ['SA-11', 'RA-5', 'Rev_4'];
25
- let counter = '';
26
- function getStatus(file) {
27
- const match = lodash_1.default.get(file, 'cdf:rule-result').find((element) => lodash_1.default.get(element, 'idref') === counter);
28
- if (lodash_1.default.get(match, 'cdf:result') === 'pass') {
41
+ const RULE_RESULT_PATHS = ['cdf:rule-result', 'rule-result'];
42
+ let idTracker = '';
43
+ let valueIdTracker = undefined;
44
+ function getRuleResultItem(testResult, pathRuleResultPossibilities, pathIdRefPossibilities = ['idref'], pathItemPossibilities = undefined) {
45
+ for (const pathRuleResult of pathRuleResultPossibilities) {
46
+ const ruleResult = lodash_1.default.get(testResult, pathRuleResult);
47
+ if (ruleResult === undefined) {
48
+ continue;
49
+ }
50
+ const match = ruleResult.find((element) => lodash_1.default.some(pathIdRefPossibilities.map((pathIDRef) => lodash_1.default.get(element, pathIDRef) === idTracker), Boolean));
51
+ if (pathItemPossibilities === undefined) {
52
+ return match;
53
+ }
54
+ for (const pathItem of pathItemPossibilities) {
55
+ const item = lodash_1.default.get(match, pathItem);
56
+ if (item !== undefined) {
57
+ return item;
58
+ }
59
+ }
60
+ }
61
+ return undefined;
62
+ }
63
+ function getStatus(testResult) {
64
+ const status = getRuleResultItem(testResult, RULE_RESULT_PATHS, ['idref'], ['cdf:result', 'result']);
65
+ if (typeof status === 'string' && status === 'pass') {
29
66
  return inspecjs_1.ExecJSON.ControlResultStatus.Passed;
30
67
  }
31
68
  else {
32
69
  return inspecjs_1.ExecJSON.ControlResultStatus.Failed;
33
70
  }
34
71
  }
72
+ function getStartTime(testResult) {
73
+ const time = getRuleResultItem(testResult, RULE_RESULT_PATHS, ['idref'], ['time']);
74
+ if (typeof time === 'string') {
75
+ return time;
76
+ }
77
+ else {
78
+ return '';
79
+ }
80
+ }
81
+ function convertEncodedXmlIntoJson(encodedXml) {
82
+ const xmlChunks = [];
83
+ const htmlParser = new htmlparser.Parser({
84
+ ontext(text) {
85
+ xmlChunks.push(text);
86
+ }
87
+ });
88
+ htmlParser.write(encodedXml);
89
+ htmlParser.end();
90
+ const xmlParsed = xmlChunks.join('');
91
+ return fast_xml_parser_1.default.parse(xmlParsed);
92
+ }
93
+ function extractProfile(profile, pathProfileItemPossibilities) {
94
+ const profileInfo = {
95
+ id: '',
96
+ description: '',
97
+ title: ''
98
+ };
99
+ for (const profileKey of Object.keys(pathProfileItemPossibilities)) {
100
+ for (const pathProfileItem of pathProfileItemPossibilities[profileKey]) {
101
+ const item = lodash_1.default.get(profile, pathProfileItem);
102
+ if (item) {
103
+ if (profileKey === 'description') {
104
+ profileInfo[profileKey] =
105
+ convertEncodedXmlIntoJson(item);
106
+ }
107
+ else {
108
+ profileInfo[profileKey] = item;
109
+ }
110
+ }
111
+ }
112
+ }
113
+ return profileInfo;
114
+ }
115
+ function getProfiles(profiles, pathSelectPossibilities, pathProfileItemPossibilities) {
116
+ const profileInfos = [];
117
+ for (const profile of profiles) {
118
+ for (const pathSelect of pathSelectPossibilities) {
119
+ const select = lodash_1.default.get(profile, pathSelect);
120
+ if (select === undefined) {
121
+ continue;
122
+ }
123
+ const selected = lodash_1.default.some(select, (element) => idTracker.replace('rule_SV', 'group_V').replace(/r\d+_rule/, '') ===
124
+ lodash_1.default.get(element, 'idref') && lodash_1.default.get(element, 'selected') === 'true');
125
+ if (selected) {
126
+ profileInfos.push(extractProfile(profile, pathProfileItemPossibilities));
127
+ }
128
+ }
129
+ }
130
+ return profileInfos;
131
+ }
35
132
  function extractCci(input) {
133
+ let inputArray;
134
+ if (Array.isArray(input)) {
135
+ inputArray = input;
136
+ }
137
+ else {
138
+ inputArray = [input];
139
+ }
140
+ const CCI_REGEX = /CCI-(\d*)/;
36
141
  const output = [];
37
- input.forEach((element) => {
38
- if (lodash_1.default.get(element, 'text').match(CCI_REGEX)) {
39
- output.push(lodash_1.default.get(element, 'text'));
142
+ inputArray.forEach((element) => {
143
+ const text = lodash_1.default.get(element, 'text');
144
+ if (text.match(CCI_REGEX)) {
145
+ output.push(text);
40
146
  }
41
147
  });
42
148
  return output;
@@ -45,22 +151,16 @@ function nistTag(input) {
45
151
  const identifiers = extractCci(input);
46
152
  return CCI_NIST_MAPPING.nistFilter(identifiers, DEFAULT_NIST_TAG, false);
47
153
  }
48
- function parseXml(xml) {
49
- const options = {
50
- attributeNamePrefix: '',
51
- textNodeName: 'text',
52
- ignoreAttributes: false
53
- };
54
- return fast_xml_parser_1.default.parse(xml, options);
55
- }
56
154
  class XCCDFResultsMapper extends base_converter_1.BaseConverter {
57
155
  constructor(scapXml) {
58
- super(parseXml(scapXml));
156
+ super((0, base_converter_1.parseXml)(scapXml));
59
157
  this.mappings = {
60
158
  platform: {
61
159
  name: 'Heimdall Tools',
62
160
  release: package_json_1.version,
63
- target_id: ''
161
+ target_id: {
162
+ path: ['cdf:Benchmark.cdf:platform.idref', 'Benchmark.platform.idref']
163
+ }
64
164
  },
65
165
  version: package_json_1.version,
66
166
  statistics: {
@@ -68,13 +168,79 @@ class XCCDFResultsMapper extends base_converter_1.BaseConverter {
68
168
  },
69
169
  profiles: [
70
170
  {
71
- name: { path: 'cdf:Benchmark.id' },
72
- version: { path: 'cdf:Benchmark.style' },
73
- title: { path: 'cdf:Benchmark.cdf:title' },
74
- maintainer: { path: 'cdf:Benchmark.cdf:reference.dc:publisher' },
75
- summary: { path: 'cdf:Benchmark.cdf:description' },
76
- license: { path: 'cdf:Benchmark.cdf:notice.id' },
77
- copyright: { path: 'cdf:Benchmark.cdf:metadata.dc:creator' },
171
+ name: { path: ['cdf:Benchmark.id', 'Benchmark.id'] },
172
+ version: { path: ['cdf:Benchmark.style', 'Benchmark.style'] },
173
+ title: { path: ['cdf:Benchmark.cdf:title', 'Benchmark.title.text'] },
174
+ maintainer: {
175
+ path: [
176
+ 'cdf:Benchmark.cdf:reference.dc:publisher',
177
+ 'Benchmark.reference.dc:publisher'
178
+ ]
179
+ },
180
+ summary: {
181
+ path: ['cdf:Benchmark.cdf:description', 'Benchmark.description.text']
182
+ },
183
+ description: {
184
+ path: ['cdf:Benchmark', 'Benchmark'],
185
+ transformer: (input) => {
186
+ const descriptionPaths = [
187
+ ['cdf:description', 'description'],
188
+ ['cdf:front-matter', 'front-matter'],
189
+ ['cdf:metadata', 'metadata'],
190
+ ['model'],
191
+ ['cdf:plain-text', 'plain-text'],
192
+ ['cdf:rear-matter', 'rear-matter'],
193
+ ['cdf:reference', 'reference'],
194
+ ['cdf:status', 'status'],
195
+ ['cdf:version', 'version'],
196
+ ['xml:lang'],
197
+ ['xmlns:cdf', 'xmlns'],
198
+ ['xmlns:dc'],
199
+ ['xmlns:dsi'],
200
+ ['xsi:schemaLocation'],
201
+ ['cdf:TestResult.cdf:benchmark', 'TestResult.benchmark'],
202
+ ['cdf:TestResult.start-time', 'TestResult.start-time'],
203
+ ['cdf:TestResult.end-time', 'TestResult.end-time'],
204
+ ['cdf:TestResult.id', 'TestResult.id'],
205
+ ['cdf:TestResult.cdf:identity', 'TestResult.identity'],
206
+ ['cdf:TestResult.cdf:organization'],
207
+ [
208
+ 'cdf:TestResult.cdf:platform.idref',
209
+ 'TestResult.platform.idref'
210
+ ],
211
+ ['cdf:TestResult.cdf:profile.idref', 'TestResult.profile.idref'],
212
+ ['cdf:TestResult.cdf:score', 'TestResult.score'],
213
+ ['cdf:TestResult.cdf:set-value', 'TestResult.set-value'],
214
+ ['cdf:TestResult.cdf:target', 'TestResult.target'],
215
+ [
216
+ 'cdf:TestResult.cdf:target-address',
217
+ 'TestResult.target-address'
218
+ ],
219
+ ['cdf:TestResult.cdf:target-facts', 'TestResult.target-facts'],
220
+ ['cdf:TestResult.cdf:target-id-ref'],
221
+ ['cdf:TestResult.test-system', 'TestResult.test-system'],
222
+ ['TestResult.title'],
223
+ ['cdf:TestResult.version', 'TestResult.version']
224
+ ];
225
+ const fullDescription = {};
226
+ for (const paths of descriptionPaths) {
227
+ for (const path of paths) {
228
+ const item = lodash_1.default.get(input, path);
229
+ if (item !== undefined) {
230
+ fullDescription[path] = item;
231
+ }
232
+ }
233
+ }
234
+ return JSON.stringify(fullDescription, null, 2);
235
+ }
236
+ },
237
+ license: { path: ['cdf:Benchmark.cdf:notice.id', 'Benchmark.notice.id'] },
238
+ copyright: {
239
+ path: [
240
+ 'cdf:Benchmark.cdf:metadata.dc:creator',
241
+ 'Benchmark.metadata.dc:creator.text'
242
+ ]
243
+ },
78
244
  copyright_email: 'disa.stig_spt@mail.mil',
79
245
  supports: [],
80
246
  attributes: [],
@@ -83,113 +249,148 @@ class XCCDFResultsMapper extends base_converter_1.BaseConverter {
83
249
  status: 'loaded',
84
250
  controls: [
85
251
  {
86
- path: 'cdf:Benchmark.cdf:Group',
252
+ path: ['cdf:Benchmark.cdf:Group', 'Benchmark.Group'],
87
253
  key: 'id',
88
254
  id: {
89
- path: 'cdf:Rule.id',
255
+ path: ['cdf:Rule', 'Rule'],
90
256
  transformer: (input) => {
91
- if (typeof input === 'string') {
92
- counter = input;
93
- return input.split('_S')[1].split('r')[0];
257
+ const valueIdPaths = [
258
+ 'cdf:check.cdf:check-export.value-id',
259
+ 'check.check-export.value-id'
260
+ ];
261
+ let setValueIdTracker = false;
262
+ for (const path of valueIdPaths) {
263
+ const valueId = lodash_1.default.get(input, path);
264
+ if (valueId !== undefined) {
265
+ valueIdTracker = valueId;
266
+ setValueIdTracker = true;
267
+ }
268
+ }
269
+ if (!setValueIdTracker) {
270
+ valueIdTracker = undefined;
271
+ }
272
+ const id = lodash_1.default.get(input, 'id');
273
+ if (typeof id === 'string') {
274
+ idTracker = id;
275
+ return id.split('_S')[1].split('r')[0];
94
276
  }
95
277
  else {
96
278
  return '';
97
279
  }
98
280
  }
99
281
  },
100
- title: { path: 'cdf:Rule.cdf:title' },
282
+ title: { path: ['cdf:Rule.cdf:title', 'Rule.title.text'] },
101
283
  desc: {
102
- path: RULE_DESCRIPTION,
103
- transformer: (input) => {
104
- if (typeof input === 'string') {
105
- return (0, base_converter_1.parseHtml)(input.split('Satisfies')[0]);
106
- }
107
- else {
108
- return '';
109
- }
284
+ path: ['cdf:Rule.cdf:description', 'Rule.description.text'],
285
+ transformer: (description) => {
286
+ const descTextJson = convertEncodedXmlIntoJson(description);
287
+ return lodash_1.default.get(descTextJson, 'VulnDiscussion', '');
110
288
  }
111
289
  },
112
290
  descriptions: [
113
291
  {
114
292
  data: {
115
- path: RULE_DESCRIPTION,
116
- transformer: (input) => {
117
- if (typeof input === 'string') {
118
- return (0, base_converter_1.parseHtml)(input);
119
- }
120
- else {
121
- return '';
122
- }
123
- }
124
- },
125
- label: 'default'
126
- },
127
- {
128
- data: 'NA',
129
- label: 'rationale'
130
- },
131
- {
132
- data: {
133
- path: 'cdf:Rule.cdf:check.cdf:check-content-ref.name',
293
+ path: [
294
+ 'cdf:Rule.cdf:check.cdf:check-content-ref.name',
295
+ 'Rule.check.check-content-ref.name'
296
+ ],
134
297
  transformer: base_converter_1.parseHtml
135
298
  },
136
299
  label: 'check'
137
300
  },
138
301
  {
139
302
  data: {
140
- path: 'cdf:Rule.cdf:fixtext.text',
303
+ path: ['cdf:Rule.cdf:fixtext.text', 'Rule.fixtext.text'],
141
304
  transformer: base_converter_1.parseHtml
142
305
  },
143
306
  label: 'fix'
144
307
  }
145
308
  ],
146
309
  impact: {
147
- path: 'cdf:Rule.severity',
310
+ path: ['cdf:Rule.severity', 'Rule.severity'],
148
311
  transformer: (0, base_converter_1.impactMapping)(IMPACT_MAPPING)
149
312
  },
150
313
  refs: [],
151
314
  tags: {
152
- severity: null,
153
- gtitle: { path: 'cdf:title' },
154
- satisfies: {
155
- path: RULE_DESCRIPTION,
156
- transformer: (input) => {
157
- if (input.split('Satisfies: ')[1] !== undefined) {
158
- return input
159
- .split('Satisfies: ')[1]
160
- .split('&lt')[0]
161
- .replace(/', /gi, ',')
162
- .split(',');
163
- }
164
- else {
165
- return [];
166
- }
167
- }
315
+ cci: {
316
+ path: ['cdf:Rule.cdf:ident', 'Rule.ident'],
317
+ transformer: extractCci
318
+ },
319
+ nist: {
320
+ path: ['cdf:Rule.cdf:ident', 'Rule.ident'],
321
+ transformer: nistTag
168
322
  },
169
- gid: {
170
- path: 'cdf:Rule.id',
171
- transformer: (input) => {
172
- return input.split('_').slice(-2, -1)[0].split('r')[0];
323
+ severity: { path: ['cdf:Rule.severity', 'Rule.severity'] },
324
+ description: {
325
+ path: ['cdf:Rule.cdf:description', 'Rule.description.text'],
326
+ transformer: convertEncodedXmlIntoJson
327
+ },
328
+ group_id: { path: 'id' },
329
+ group_title: { path: ['cdf:title', 'title.text'] },
330
+ group_description: {
331
+ path: ['cdf:description', 'description.text'],
332
+ transformer: convertEncodedXmlIntoJson
333
+ },
334
+ rule_id: { path: ['cdf:Rule.id', 'Rule.id'] },
335
+ check: { path: ['cdf:Rule.cdf:check', 'Rule.check'] },
336
+ fix_id: { path: ['cdf:Rule.cdf:fix.id', 'Rule.fix.id'] },
337
+ fixtext_fixref: {
338
+ path: ['cdf:Rule.cdf:fixtext.fixref', 'Rule.fixtext.fixref']
339
+ },
340
+ ident: { path: ['cdf:Rule.cdf:ident', 'Rule.ident'] },
341
+ reference: { path: ['cdf:Rule.cdf:reference', 'Rule.reference'] },
342
+ selected: { path: 'Rule.selected' },
343
+ version: { path: ['cdf:Rule.id', 'Rule.version.text'] },
344
+ weight: { path: ['cdf:Rule.weight', 'Rule.weight'] },
345
+ profiles: {
346
+ path: ['$.cdf:Benchmark.cdf:Profile', '$.Benchmark.Profile'],
347
+ transformer: (profiles) => {
348
+ const pathsSelect = ['cdf:select', 'select'];
349
+ const paths = {
350
+ id: ['id'],
351
+ description: ['cdf:description', 'description.text'],
352
+ title: ['cdf:title', 'title.text']
353
+ };
354
+ return getProfiles(profiles, pathsSelect, paths);
173
355
  }
174
356
  },
175
- legacy_id: { path: 'cdf:Rule.cdf:ident[2].text' },
176
- rid: { path: 'cdf:Rule.cdf:ident[1].text' },
177
- stig_id: { path: '$.cdf:Benchmark.id' },
178
- fix_id: { path: 'cdf:Rule.cdf:fix.id' },
179
- cci: { path: 'cdf:Rule.cdf:ident', transformer: extractCci },
180
- nist: { path: 'cdf:Rule.cdf:ident', transformer: nistTag }
357
+ rule_result: {
358
+ path: [
359
+ '$.cdf:Benchmark.cdf:TestResult',
360
+ '$.Benchmark.TestResult'
361
+ ],
362
+ transformer: (testResult) => getRuleResultItem(testResult, RULE_RESULT_PATHS)
363
+ },
364
+ value: {
365
+ path: ['$.cdf:Benchmark.cdf:Value', '$.Benchmark.Value'],
366
+ transformer: (values) => {
367
+ return lodash_1.default.find(values, (value) => {
368
+ const id = lodash_1.default.get(value, 'id');
369
+ return id && id === valueIdTracker;
370
+ });
371
+ }
372
+ }
181
373
  },
182
374
  code: '',
183
375
  source_location: {},
184
376
  results: [
185
377
  {
186
378
  status: {
187
- path: '$.cdf:Benchmark.cdf:TestResult',
379
+ path: [
380
+ '$.cdf:Benchmark.cdf:TestResult',
381
+ '$.Benchmark.TestResult'
382
+ ],
188
383
  transformer: getStatus
189
384
  },
190
385
  code_desc: '',
191
386
  run_time: 0,
192
- start_time: { path: '$.cdf:Benchmark.cdf:TestResult.start-time' },
387
+ start_time: {
388
+ path: [
389
+ '$.cdf:Benchmark.cdf:TestResult',
390
+ '$.Benchmark.TestResult'
391
+ ],
392
+ transformer: getStartTime
393
+ },
193
394
  message: '',
194
395
  resource: ''
195
396
  }
@@ -1 +1 @@
1
- {"version":3,"file":"xccdf-results-mapper.js","sourceRoot":"","sources":["../../src/xccdf-results-mapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"xccdf-results-mapper.js","sourceRoot":"","sources":["../../src/xccdf-results-mapper.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { ExecJSON } from 'inspecjs';
2
2
  import { BaseConverter, ILookupPath, MappedTransform } from './base-converter';
3
3
  export declare class ZapMapper extends BaseConverter {
4
4
  mappings: MappedTransform<ExecJSON.Execution, ILookupPath>;
5
- constructor(zapJson: string, name: string);
5
+ constructor(zapJson: string, name?: string);
6
6
  setMappings(customMappings: MappedTransform<ExecJSON.Execution, ILookupPath>): void;
7
7
  toHdf(): ExecJSON.Execution;
8
8
  }
@@ -6,15 +6,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.ZapMapper = void 0;
7
7
  const inspecjs_1 = require("inspecjs");
8
8
  const lodash_1 = __importDefault(require("lodash"));
9
- const path_1 = __importDefault(require("path"));
10
9
  const package_json_1 = require("../package.json");
11
10
  const base_converter_1 = require("./base-converter");
12
11
  const CweNistMapping_1 = require("./mappings/CweNistMapping");
13
- const CWE_NIST_MAPPING_FILE = path_1.default.resolve(__dirname, '../data/cwe-nist-mapping.csv');
14
- const CWE_NIST_MAPPING = new CweNistMapping_1.CweNistMapping(CWE_NIST_MAPPING_FILE);
12
+ const CWE_NIST_MAPPING = new CweNistMapping_1.CweNistMapping();
15
13
  const DEFAULT_NIST_TAG = ['SA-11', 'RA-5'];
16
14
  function filterSite(input, name) {
17
- return input.find((element) => lodash_1.default.get(element, '@name') === name);
15
+ if (name) {
16
+ return input.find((element) => lodash_1.default.get(element, '@name') === name);
17
+ }
18
+ else {
19
+ return input.reduce((a, b) => lodash_1.default.get(a, 'alerts').length > lodash_1.default.get(b, 'alerts').length ? a : b);
20
+ }
18
21
  }
19
22
  function impactMapping(input) {
20
23
  if (typeof input === 'string') {
@@ -1 +1 @@
1
- {"version":3,"file":"zap-mapper.js","sourceRoot":"","sources":["../../src/zap-mapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zap-mapper.js","sourceRoot":"","sources":["../../src/zap-mapper.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mitre/hdf-converters",
3
- "version": "2.5.3",
3
+ "version": "2.6.6",
4
4
  "license": "Apache-2.0",
5
5
  "description": "Converter util library used to transform various scan results into HDF format",
6
6
  "files": [
@@ -16,14 +16,24 @@
16
16
  "build": "tsc -p ./tsconfig.build.json && cp -R ./data ./lib",
17
17
  "lint": "eslint \"**/*.ts\" --fix",
18
18
  "lint:ci": "eslint \"**/*.ts\" --max-warnings 0",
19
- "test": "jest --silent"
19
+ "test": "jest",
20
+ "csv2json": "ts-node data/converters/csv2json.ts",
21
+ "xml2json": "ts-node data/converters/xml2json.ts"
20
22
  },
21
23
  "dependencies": {
22
- "csv-parse": "^4.16.0",
23
- "fast-xml-parser": "^3.19.0",
24
+ "@types/csv2json": "^1.4.2",
25
+ "@types/xml2js": "^0.4.9",
26
+ "aws-sdk": "^2.1046.0",
27
+ "axios": "^0.24.0",
28
+ "csv-parse": "^5.0.1",
29
+ "csv2json": "^2.0.2",
30
+ "fast-xml-parser": "^3.21.1",
31
+ "html-entities": "^2.3.2",
24
32
  "htmlparser2": "^7.1.2",
25
- "inspecjs": "^2.5.3",
26
- "lodash": "^4.17.21"
33
+ "inspecjs": "^2.6.6",
34
+ "lodash": "^4.17.21",
35
+ "moment": "^2.29.1",
36
+ "xml2js": "^0.4.23"
27
37
  },
28
38
  "devDependencies": {
29
39
  "@types/jest": "^27.0.0",