@mitre/hdf-converters 2.12.2 → 2.13.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.
- package/README.md +25 -24
- package/lib/data/converters/csv2json.d.ts +1 -0
- package/lib/data/converters/csv2json.d.ts.map +1 -0
- package/lib/data/converters/csv2json.js +1 -1
- package/lib/data/converters/csv2json.js.map +1 -1
- package/lib/data/converters/xml2json.d.ts +1 -0
- package/lib/data/converters/xml2json.d.ts.map +1 -0
- package/lib/data/converters/xml2json.js +6 -25
- package/lib/data/converters/xml2json.js.map +1 -1
- package/lib/data/reverse-html-mapper/convert-to-embedded-strings.d.ts +2 -0
- package/lib/data/reverse-html-mapper/convert-to-embedded-strings.d.ts.map +1 -0
- package/lib/data/reverse-html-mapper/convert-to-embedded-strings.js +13 -0
- package/lib/data/reverse-html-mapper/convert-to-embedded-strings.js.map +1 -0
- package/lib/index.d.ts +6 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +23 -8
- package/lib/index.js.map +1 -1
- package/lib/package.json +28 -45
- package/lib/src/anchore-grype-mapper.d.ts +1 -0
- package/lib/src/anchore-grype-mapper.d.ts.map +1 -0
- package/lib/src/anchore-grype-mapper.js +7 -1
- package/lib/src/anchore-grype-mapper.js.map +1 -1
- package/lib/src/asff-mapper/asff-mapper.d.ts +1 -0
- package/lib/src/asff-mapper/asff-mapper.d.ts.map +1 -0
- package/lib/src/asff-mapper/asff-mapper.js +276 -242
- package/lib/src/asff-mapper/asff-mapper.js.map +1 -1
- package/lib/src/asff-mapper/case-cms-inspec.d.ts +1 -0
- package/lib/src/asff-mapper/case-cms-inspec.d.ts.map +1 -0
- package/lib/src/asff-mapper/case-cms-inspec.js +18 -9
- package/lib/src/asff-mapper/case-cms-inspec.js.map +1 -1
- package/lib/src/asff-mapper/case-firewall-manager.d.ts +1 -0
- package/lib/src/asff-mapper/case-firewall-manager.d.ts.map +1 -0
- package/lib/src/asff-mapper/case-firewall-manager.js +18 -9
- package/lib/src/asff-mapper/case-firewall-manager.js.map +1 -1
- package/lib/src/asff-mapper/case-guardduty.d.ts +1 -0
- package/lib/src/asff-mapper/case-guardduty.d.ts.map +1 -0
- package/lib/src/asff-mapper/case-guardduty.js +18 -9
- package/lib/src/asff-mapper/case-guardduty.js.map +1 -1
- package/lib/src/asff-mapper/case-inspector.d.ts +1 -0
- package/lib/src/asff-mapper/case-inspector.d.ts.map +1 -0
- package/lib/src/asff-mapper/case-inspector.js +18 -9
- package/lib/src/asff-mapper/case-inspector.js.map +1 -1
- package/lib/src/asff-mapper/case-previously-hdf.d.ts +1 -0
- package/lib/src/asff-mapper/case-previously-hdf.d.ts.map +1 -0
- package/lib/src/asff-mapper/case-previously-hdf.js +28 -15
- package/lib/src/asff-mapper/case-previously-hdf.js.map +1 -1
- package/lib/src/asff-mapper/case-prowler.d.ts +1 -0
- package/lib/src/asff-mapper/case-prowler.d.ts.map +1 -0
- package/lib/src/asff-mapper/case-prowler.js +19 -9
- package/lib/src/asff-mapper/case-prowler.js.map +1 -1
- package/lib/src/asff-mapper/case-security-hub.d.ts +1 -0
- package/lib/src/asff-mapper/case-security-hub.d.ts.map +1 -0
- package/lib/src/asff-mapper/case-security-hub.js +24 -9
- package/lib/src/asff-mapper/case-security-hub.js.map +1 -1
- package/lib/src/asff-mapper/case-trivy.d.ts +1 -0
- package/lib/src/asff-mapper/case-trivy.d.ts.map +1 -0
- package/lib/src/asff-mapper/case-trivy.js +18 -9
- package/lib/src/asff-mapper/case-trivy.js.map +1 -1
- package/lib/src/aws-config-mapper.d.ts +1 -0
- package/lib/src/aws-config-mapper.d.ts.map +1 -0
- package/lib/src/aws-config-mapper.js +38 -22
- package/lib/src/aws-config-mapper.js.map +1 -1
- package/lib/src/base-converter.d.ts +2 -1
- package/lib/src/base-converter.d.ts.map +1 -0
- package/lib/src/base-converter.js +51 -33
- package/lib/src/base-converter.js.map +1 -1
- package/lib/src/burpsuite-mapper.d.ts +7 -0
- package/lib/src/burpsuite-mapper.d.ts.map +1 -0
- package/lib/src/burpsuite-mapper.js +115 -88
- package/lib/src/burpsuite-mapper.js.map +1 -1
- package/lib/src/checkov-mapper.d.ts +67 -0
- package/lib/src/checkov-mapper.d.ts.map +1 -0
- package/lib/src/checkov-mapper.js +240 -0
- package/lib/src/checkov-mapper.js.map +1 -0
- package/lib/src/ckl-mapper/checklist-jsonix-converter.d.ts +17 -0
- package/lib/src/ckl-mapper/checklist-jsonix-converter.d.ts.map +1 -0
- package/lib/src/ckl-mapper/checklist-jsonix-converter.js +59 -25
- package/lib/src/ckl-mapper/checklist-jsonix-converter.js.map +1 -1
- package/lib/src/ckl-mapper/checklist-mapper.d.ts +35 -0
- package/lib/src/ckl-mapper/checklist-mapper.d.ts.map +1 -0
- package/lib/src/ckl-mapper/checklist-mapper.js +264 -155
- package/lib/src/ckl-mapper/checklist-mapper.js.map +1 -1
- package/lib/src/ckl-mapper/checklist-metadata-utils.d.ts +1 -0
- package/lib/src/ckl-mapper/checklist-metadata-utils.d.ts.map +1 -0
- package/lib/src/ckl-mapper/checklist-metadata-utils.js +38 -16
- package/lib/src/ckl-mapper/checklist-metadata-utils.js.map +1 -1
- package/lib/src/ckl-mapper/checklistJsonix.d.ts +6 -0
- package/lib/src/ckl-mapper/checklistJsonix.d.ts.map +1 -0
- package/lib/src/ckl-mapper/checklistJsonix.js +8 -8
- package/lib/src/ckl-mapper/checklistJsonix.js.map +1 -1
- package/lib/src/ckl-mapper/jsonixMapping.d.ts +5 -0
- package/lib/src/ckl-mapper/jsonixMapping.d.ts.map +1 -0
- package/lib/src/ckl-mapper/jsonixMapping.js +4 -0
- package/lib/src/ckl-mapper/jsonixMapping.js.map +1 -1
- package/lib/src/converters-from-hdf/asff/asff-types.d.ts +1 -0
- package/lib/src/converters-from-hdf/asff/asff-types.d.ts.map +1 -0
- package/lib/src/converters-from-hdf/asff/asff-types.js +1 -0
- package/lib/src/converters-from-hdf/asff/asff-types.js.map +1 -1
- package/lib/src/converters-from-hdf/asff/reverse-asff-mapper.d.ts +1 -0
- package/lib/src/converters-from-hdf/asff/reverse-asff-mapper.d.ts.map +1 -0
- package/lib/src/converters-from-hdf/asff/reverse-asff-mapper.js +110 -84
- package/lib/src/converters-from-hdf/asff/reverse-asff-mapper.js.map +1 -1
- package/lib/src/converters-from-hdf/asff/transformers.d.ts +1 -0
- package/lib/src/converters-from-hdf/asff/transformers.d.ts.map +1 -0
- package/lib/src/converters-from-hdf/asff/transformers.js +82 -55
- package/lib/src/converters-from-hdf/asff/transformers.js.map +1 -1
- package/lib/src/converters-from-hdf/caat/reverse-caat-mapper.d.ts +1 -0
- package/lib/src/converters-from-hdf/caat/reverse-caat-mapper.d.ts.map +1 -0
- package/lib/src/converters-from-hdf/caat/reverse-caat-mapper.js +65 -38
- package/lib/src/converters-from-hdf/caat/reverse-caat-mapper.js.map +1 -1
- package/lib/src/converters-from-hdf/html/embedded-assets.d.ts +4 -0
- package/lib/src/converters-from-hdf/html/embedded-assets.d.ts.map +1 -0
- package/lib/src/converters-from-hdf/html/embedded-assets.js +8 -0
- package/lib/src/converters-from-hdf/html/embedded-assets.js.map +1 -0
- package/lib/src/converters-from-hdf/html/html-types.d.ts +1 -0
- package/lib/src/converters-from-hdf/html/html-types.d.ts.map +1 -0
- package/lib/src/converters-from-hdf/html/html-types.js +1 -0
- package/lib/src/converters-from-hdf/html/html-types.js.map +1 -1
- package/lib/src/converters-from-hdf/html/reverse-html-mapper.d.ts +3 -2
- package/lib/src/converters-from-hdf/html/reverse-html-mapper.d.ts.map +1 -0
- package/lib/src/converters-from-hdf/html/reverse-html-mapper.js +151 -107
- package/lib/src/converters-from-hdf/html/reverse-html-mapper.js.map +1 -1
- package/lib/src/converters-from-hdf/reverse-any-base-converter.d.ts +1 -0
- package/lib/src/converters-from-hdf/reverse-any-base-converter.d.ts.map +1 -0
- package/lib/src/converters-from-hdf/reverse-any-base-converter.js +3 -0
- package/lib/src/converters-from-hdf/reverse-any-base-converter.js.map +1 -1
- package/lib/src/converters-from-hdf/reverse-base-converter.d.ts +1 -0
- package/lib/src/converters-from-hdf/reverse-base-converter.d.ts.map +1 -0
- package/lib/src/converters-from-hdf/reverse-base-converter.js +29 -9
- package/lib/src/converters-from-hdf/reverse-base-converter.js.map +1 -1
- package/lib/src/converters-from-hdf/splunk/reverse-splunk-mapper.d.ts +1 -0
- package/lib/src/converters-from-hdf/splunk/reverse-splunk-mapper.d.ts.map +1 -0
- package/lib/src/converters-from-hdf/splunk/reverse-splunk-mapper.js +40 -16
- package/lib/src/converters-from-hdf/splunk/reverse-splunk-mapper.js.map +1 -1
- package/lib/src/converters-from-hdf/xccdf/reverse-xccdf-mapper.d.ts +1 -0
- package/lib/src/converters-from-hdf/xccdf/reverse-xccdf-mapper.d.ts.map +1 -0
- package/lib/src/converters-from-hdf/xccdf/reverse-xccdf-mapper.js +33 -12
- package/lib/src/converters-from-hdf/xccdf/reverse-xccdf-mapper.js.map +1 -1
- package/lib/src/conveyor-mapper.d.ts +1 -0
- package/lib/src/conveyor-mapper.d.ts.map +1 -0
- package/lib/src/conveyor-mapper.js +85 -40
- package/lib/src/conveyor-mapper.js.map +1 -1
- package/lib/src/cyclonedx-sbom-mapper.d.ts +1 -0
- package/lib/src/cyclonedx-sbom-mapper.d.ts.map +1 -0
- package/lib/src/cyclonedx-sbom-mapper.js +377 -309
- package/lib/src/cyclonedx-sbom-mapper.js.map +1 -1
- package/lib/src/dbprotect-mapper.d.ts +1 -0
- package/lib/src/dbprotect-mapper.d.ts.map +1 -0
- package/lib/src/dbprotect-mapper.js +74 -63
- package/lib/src/dbprotect-mapper.js.map +1 -1
- package/lib/src/dependency-track-mapper.d.ts +1 -0
- package/lib/src/dependency-track-mapper.d.ts.map +1 -0
- package/lib/src/dependency-track-mapper.js +144 -130
- package/lib/src/dependency-track-mapper.js.map +1 -1
- package/lib/src/fortify-mapper.d.ts +7 -0
- package/lib/src/fortify-mapper.d.ts.map +1 -0
- package/lib/src/fortify-mapper.js +118 -92
- package/lib/src/fortify-mapper.js.map +1 -1
- package/lib/src/gosec-mapper.d.ts +1 -0
- package/lib/src/gosec-mapper.d.ts.map +1 -0
- package/lib/src/gosec-mapper.js +90 -72
- package/lib/src/gosec-mapper.js.map +1 -1
- package/lib/src/ionchannel-mapper.d.ts +1 -0
- package/lib/src/ionchannel-mapper.d.ts.map +1 -0
- package/lib/src/ionchannel-mapper.js +130 -110
- package/lib/src/ionchannel-mapper.js.map +1 -1
- package/lib/src/jfrog-xray-mapper.d.ts +1 -0
- package/lib/src/jfrog-xray-mapper.d.ts.map +1 -0
- package/lib/src/jfrog-xray-mapper.js +92 -78
- package/lib/src/jfrog-xray-mapper.js.map +1 -1
- package/lib/src/jsonix-converter.d.ts +1 -0
- package/lib/src/jsonix-converter.d.ts.map +1 -0
- package/lib/src/jsonix-converter.js +1 -0
- package/lib/src/jsonix-converter.js.map +1 -1
- package/lib/src/jsonix-intermediate-converter.d.ts +1 -0
- package/lib/src/jsonix-intermediate-converter.d.ts.map +1 -0
- package/lib/src/jsonix-intermediate-converter.js.map +1 -1
- package/lib/src/mappings/AwsConfigMapping.d.ts +1 -0
- package/lib/src/mappings/AwsConfigMapping.d.ts.map +1 -0
- package/lib/src/mappings/AwsConfigMapping.js +19 -9
- package/lib/src/mappings/AwsConfigMapping.js.map +1 -1
- package/lib/src/mappings/AwsConfigMappingData.d.ts +1 -0
- package/lib/src/mappings/AwsConfigMappingData.d.ts.map +1 -0
- package/lib/src/mappings/AwsConfigMappingData.js.map +1 -1
- package/lib/src/mappings/CciNistMapping.d.ts +1 -0
- package/lib/src/mappings/CciNistMapping.d.ts.map +1 -0
- package/lib/src/mappings/CciNistMapping.js +6 -2
- package/lib/src/mappings/CciNistMapping.js.map +1 -1
- package/lib/src/mappings/CciNistMappingData.d.ts +1 -0
- package/lib/src/mappings/CciNistMappingData.d.ts.map +1 -0
- package/lib/src/mappings/CciNistMappingData.js.map +1 -1
- package/lib/src/mappings/CciNistMappingItem.d.ts +1 -0
- package/lib/src/mappings/CciNistMappingItem.d.ts.map +1 -0
- package/lib/src/mappings/CciNistMappingItem.js +2 -0
- package/lib/src/mappings/CciNistMappingItem.js.map +1 -1
- package/lib/src/mappings/CheckovToCciAndNistMappingData.d.ts +5 -0
- package/lib/src/mappings/CheckovToCciAndNistMappingData.d.ts.map +1 -0
- package/lib/src/mappings/CheckovToCciAndNistMappingData.js +2695 -0
- package/lib/src/mappings/CheckovToCciAndNistMappingData.js.map +1 -0
- package/lib/src/mappings/CweNistMapping.d.ts +1 -0
- package/lib/src/mappings/CweNistMapping.d.ts.map +1 -0
- package/lib/src/mappings/CweNistMapping.js +1 -0
- package/lib/src/mappings/CweNistMapping.js.map +1 -1
- package/lib/src/mappings/CweNistMappingData.d.ts +1 -0
- package/lib/src/mappings/CweNistMappingData.d.ts.map +1 -0
- package/lib/src/mappings/CweNistMappingData.js.map +1 -1
- package/lib/src/mappings/CweNistMappingItem.d.ts +1 -0
- package/lib/src/mappings/CweNistMappingItem.d.ts.map +1 -0
- package/lib/src/mappings/CweNistMappingItem.js +5 -0
- package/lib/src/mappings/CweNistMappingItem.js.map +1 -1
- package/lib/src/mappings/NessusPluginNistMappingData.d.ts +1 -0
- package/lib/src/mappings/NessusPluginNistMappingData.d.ts.map +1 -0
- package/lib/src/mappings/NessusPluginNistMappingData.js.map +1 -1
- package/lib/src/mappings/NessusPluginsNistMapping.d.ts +1 -0
- package/lib/src/mappings/NessusPluginsNistMapping.d.ts.map +1 -0
- package/lib/src/mappings/NessusPluginsNistMapping.js +1 -0
- package/lib/src/mappings/NessusPluginsNistMapping.js.map +1 -1
- package/lib/src/mappings/NessusPluginsNistMappingItem.d.ts +1 -0
- package/lib/src/mappings/NessusPluginsNistMappingItem.d.ts.map +1 -0
- package/lib/src/mappings/NessusPluginsNistMappingItem.js +4 -0
- package/lib/src/mappings/NessusPluginsNistMappingItem.js.map +1 -1
- package/lib/src/mappings/NiktoNistMapping.d.ts +1 -0
- package/lib/src/mappings/NiktoNistMapping.d.ts.map +1 -0
- package/lib/src/mappings/NiktoNistMapping.js.map +1 -1
- package/lib/src/mappings/NiktoNistMappingData.d.ts +1 -0
- package/lib/src/mappings/NiktoNistMappingData.d.ts.map +1 -0
- package/lib/src/mappings/NiktoNistMappingData.js.map +1 -1
- package/lib/src/mappings/NiktoNistMappingItem.d.ts +1 -0
- package/lib/src/mappings/NiktoNistMappingItem.d.ts.map +1 -0
- package/lib/src/mappings/NiktoNistMappingItem.js +4 -0
- package/lib/src/mappings/NiktoNistMappingItem.js.map +1 -1
- package/lib/src/mappings/NistCciMappingData.d.ts +1 -0
- package/lib/src/mappings/NistCciMappingData.d.ts.map +1 -0
- package/lib/src/mappings/NistCciMappingData.js.map +1 -1
- package/lib/src/mappings/OwaspNistMapping.d.ts +1 -0
- package/lib/src/mappings/OwaspNistMapping.d.ts.map +1 -0
- package/lib/src/mappings/OwaspNistMapping.js +19 -8
- package/lib/src/mappings/OwaspNistMapping.js.map +1 -1
- package/lib/src/mappings/OwaspNistMappingData.d.ts +1 -0
- package/lib/src/mappings/OwaspNistMappingData.d.ts.map +1 -0
- package/lib/src/mappings/OwaspNistMappingData.js.map +1 -1
- package/lib/src/mappings/OwaspNistMappingItem.d.ts +1 -0
- package/lib/src/mappings/OwaspNistMappingItem.d.ts.map +1 -0
- package/lib/src/mappings/OwaspNistMappingItem.js +5 -0
- package/lib/src/mappings/OwaspNistMappingItem.js.map +1 -1
- package/lib/src/mappings/ScoutsuiteNistMapping.d.ts +1 -0
- package/lib/src/mappings/ScoutsuiteNistMapping.d.ts.map +1 -0
- package/lib/src/mappings/ScoutsuiteNistMapping.js +1 -0
- package/lib/src/mappings/ScoutsuiteNistMapping.js.map +1 -1
- package/lib/src/mappings/ScoutsuiteNistMappingData.d.ts +1 -0
- package/lib/src/mappings/ScoutsuiteNistMappingData.d.ts.map +1 -0
- package/lib/src/mappings/ScoutsuiteNistMappingData.js.map +1 -1
- package/lib/src/mappings/ScoutsuiteNistMappingItem.d.ts +1 -0
- package/lib/src/mappings/ScoutsuiteNistMappingItem.d.ts.map +1 -0
- package/lib/src/mappings/ScoutsuiteNistMappingItem.js +2 -0
- package/lib/src/mappings/ScoutsuiteNistMappingItem.js.map +1 -1
- package/lib/src/msft-secure-score-mapper.d.ts +1 -0
- package/lib/src/msft-secure-score-mapper.d.ts.map +1 -0
- package/lib/src/msft-secure-score-mapper.js +202 -185
- package/lib/src/msft-secure-score-mapper.js.map +1 -1
- package/lib/src/nessus-mapper.d.ts +2 -1
- package/lib/src/nessus-mapper.d.ts.map +1 -0
- package/lib/src/nessus-mapper.js +122 -105
- package/lib/src/nessus-mapper.js.map +1 -1
- package/lib/src/netsparker-mapper.d.ts +7 -0
- package/lib/src/netsparker-mapper.d.ts.map +1 -0
- package/lib/src/netsparker-mapper.js +34 -9
- package/lib/src/netsparker-mapper.js.map +1 -1
- package/lib/src/neuvector-mapper.d.ts +1 -0
- package/lib/src/neuvector-mapper.d.ts.map +1 -0
- package/lib/src/neuvector-mapper.js +123 -124
- package/lib/src/neuvector-mapper.js.map +1 -1
- package/lib/src/nikto-mapper.d.ts +1 -0
- package/lib/src/nikto-mapper.d.ts.map +1 -0
- package/lib/src/nikto-mapper.js +85 -74
- package/lib/src/nikto-mapper.js.map +1 -1
- package/lib/src/prisma-mapper.d.ts +1 -0
- package/lib/src/prisma-mapper.d.ts.map +1 -0
- package/lib/src/prisma-mapper.js +138 -128
- package/lib/src/prisma-mapper.js.map +1 -1
- package/lib/src/sarif-mapper.d.ts +1 -0
- package/lib/src/sarif-mapper.d.ts.map +1 -0
- package/lib/src/sarif-mapper.js +116 -105
- package/lib/src/sarif-mapper.js.map +1 -1
- package/lib/src/scoutsuite-mapper.d.ts +1 -0
- package/lib/src/scoutsuite-mapper.d.ts.map +1 -0
- package/lib/src/scoutsuite-mapper.js +174 -163
- package/lib/src/scoutsuite-mapper.js.map +1 -1
- package/lib/src/snyk-mapper.d.ts +1 -0
- package/lib/src/snyk-mapper.d.ts.map +1 -0
- package/lib/src/snyk-mapper.js +112 -100
- package/lib/src/snyk-mapper.js.map +1 -1
- package/lib/src/sonarqube-mapper.d.ts +18 -5
- package/lib/src/sonarqube-mapper.d.ts.map +1 -0
- package/lib/src/sonarqube-mapper.js +526 -278
- package/lib/src/sonarqube-mapper.js.map +1 -1
- package/lib/src/splunk-mapper.d.ts +3 -2
- package/lib/src/splunk-mapper.d.ts.map +1 -0
- package/lib/src/splunk-mapper.js +72 -16
- package/lib/src/splunk-mapper.js.map +1 -1
- package/lib/src/trufflehog-mapper.d.ts +1 -0
- package/lib/src/trufflehog-mapper.d.ts.map +1 -0
- package/lib/src/trufflehog-mapper.js +72 -69
- package/lib/src/trufflehog-mapper.js.map +1 -1
- package/lib/src/twistlock-mapper.d.ts +1 -0
- package/lib/src/twistlock-mapper.d.ts.map +1 -0
- package/lib/src/twistlock-mapper.js +140 -126
- package/lib/src/twistlock-mapper.js.map +1 -1
- package/lib/src/utils/CCI_List.d.ts +1 -0
- package/lib/src/utils/CCI_List.d.ts.map +1 -0
- package/lib/src/utils/CCI_List.js.map +1 -1
- package/lib/src/utils/attestations.d.ts +1 -0
- package/lib/src/utils/attestations.d.ts.map +1 -0
- package/lib/src/utils/attestations.js +28 -13
- package/lib/src/utils/attestations.js.map +1 -1
- package/lib/src/utils/compliance.d.ts +1 -0
- package/lib/src/utils/compliance.d.ts.map +1 -0
- package/lib/src/utils/compliance.js +11 -3
- package/lib/src/utils/compliance.js.map +1 -1
- package/lib/src/utils/fingerprinting.d.ts +2 -0
- package/lib/src/utils/fingerprinting.d.ts.map +1 -0
- package/lib/src/utils/fingerprinting.js +28 -11
- package/lib/src/utils/fingerprinting.js.map +1 -1
- package/lib/src/utils/global.d.ts +3 -1
- package/lib/src/utils/global.d.ts.map +1 -0
- package/lib/src/utils/global.js +35 -17
- package/lib/src/utils/global.js.map +1 -1
- package/lib/src/utils/parseJson.d.ts +1 -0
- package/lib/src/utils/parseJson.d.ts.map +1 -0
- package/lib/src/utils/parseJson.js +7 -3
- package/lib/src/utils/parseJson.js.map +1 -1
- package/lib/src/utils/result.d.ts +1 -0
- package/lib/src/utils/result.d.ts.map +1 -0
- package/lib/src/utils/result.js.map +1 -1
- package/lib/src/utils/splunk-tools.d.ts +2 -1
- package/lib/src/utils/splunk-tools.d.ts.map +1 -0
- package/lib/src/utils/splunk-tools.js +52 -32
- package/lib/src/utils/splunk-tools.js.map +1 -1
- package/lib/src/veracode-mapper.d.ts +1 -0
- package/lib/src/veracode-mapper.d.ts.map +1 -0
- package/lib/src/veracode-mapper.js +50 -7
- package/lib/src/veracode-mapper.js.map +1 -1
- package/lib/src/xccdf-results-mapper.d.ts +7 -0
- package/lib/src/xccdf-results-mapper.d.ts.map +1 -0
- package/lib/src/xccdf-results-mapper.js +336 -301
- package/lib/src/xccdf-results-mapper.js.map +1 -1
- package/lib/src/zap-mapper.d.ts +8 -0
- package/lib/src/zap-mapper.d.ts.map +1 -0
- package/lib/src/zap-mapper.js +119 -90
- package/lib/src/zap-mapper.js.map +1 -1
- package/lib/tsconfig.build.tsbuildinfo +1 -0
- package/lib/types/neuvector-types.d.ts +1 -0
- package/lib/types/neuvector-types.d.ts.map +1 -0
- package/lib/types/neuvector-types.js +80 -0
- package/lib/types/neuvector-types.js.map +1 -1
- package/lib/types/splunk-config-types.d.ts +1 -0
- package/lib/types/splunk-config-types.d.ts.map +1 -0
- package/lib/types/splunk-config-types.js.map +1 -1
- package/lib/types/splunk-control-types.d.ts +1 -0
- package/lib/types/splunk-control-types.d.ts.map +1 -0
- package/lib/types/splunk-control-types.js.map +1 -1
- package/lib/types/splunk-profile-types.d.ts +1 -0
- package/lib/types/splunk-profile-types.d.ts.map +1 -0
- package/lib/types/splunk-profile-types.js.map +1 -1
- package/lib/types/splunk-report-types.d.ts +1 -0
- package/lib/types/splunk-report-types.d.ts.map +1 -0
- package/lib/types/splunk-report-types.js.map +1 -1
- package/package.json +29 -46
- package/lib/data/converters/csv2json.ts +0 -36
- package/lib/data/converters/xml2json.ts +0 -57
|
@@ -12,156 +12,155 @@ const CweNistMapping_1 = require("./mappings/CweNistMapping");
|
|
|
12
12
|
const global_1 = require("./utils/global");
|
|
13
13
|
const CWE_NIST_MAPPING = new CweNistMapping_1.CweNistMapping();
|
|
14
14
|
function cweTags(description) {
|
|
15
|
-
var _a;
|
|
16
15
|
const regex = /CWE-\d{3}/g;
|
|
17
|
-
return
|
|
16
|
+
return description.match(regex) ?? undefined;
|
|
18
17
|
}
|
|
19
18
|
function nistTags(cweTags) {
|
|
20
|
-
|
|
21
|
-
const identifiers = (_a = cweTags === null || cweTags === void 0 ? void 0 : cweTags.map((tag) => tag.slice(-3))) !== null && _a !== void 0 ? _a : [];
|
|
19
|
+
const identifiers = cweTags?.map((tag) => tag.slice(-3)) ?? [];
|
|
22
20
|
return CWE_NIST_MAPPING.nistFilter(identifiers, global_1.DEFAULT_UPDATE_REMEDIATION_NIST_TAGS);
|
|
23
21
|
}
|
|
24
22
|
function cveIdMatches(cveName) {
|
|
25
23
|
return (cve) => cve.name === cveName;
|
|
26
24
|
}
|
|
27
25
|
class NeuVectorMapper extends base_converter_1.BaseConverter {
|
|
26
|
+
withRaw;
|
|
27
|
+
rawData;
|
|
28
|
+
getModules;
|
|
28
29
|
memoizedGetModules() {
|
|
29
30
|
const cache = {};
|
|
30
31
|
return (moduleName) => {
|
|
31
|
-
var _a, _b;
|
|
32
32
|
if (Object.prototype.hasOwnProperty.call(cache, moduleName)) {
|
|
33
33
|
return cache[moduleName];
|
|
34
34
|
}
|
|
35
|
-
cache[moduleName] =
|
|
35
|
+
cache[moduleName] = this.data.report.modules?.find((value) => value.name === moduleName)?.source;
|
|
36
36
|
return cache[moduleName];
|
|
37
37
|
};
|
|
38
38
|
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
{
|
|
62
|
-
path: '
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
source: {
|
|
81
|
-
path: 'package_name',
|
|
82
|
-
transformer: (packageName) => this.getModules(packageName)
|
|
83
|
-
},
|
|
84
|
-
status: {
|
|
85
|
-
path: 'name',
|
|
86
|
-
transformer: (name) => {
|
|
87
|
-
var _a, _b, _c, _d;
|
|
88
|
-
return (_d = (_c = (_b = (_a = this.rawData.report.modules) === null || _a === void 0 ? void 0 : _a.find((module) => { var _a; return (_a = module.cves) === null || _a === void 0 ? void 0 : _a.find(cveIdMatches(name)); })) === null || _b === void 0 ? void 0 : _b.cves) === null || _c === void 0 ? void 0 : _c.find(cveIdMatches(name))) === null || _d === void 0 ? void 0 : _d.status;
|
|
89
|
-
}
|
|
90
|
-
},
|
|
91
|
-
feed_rating: { path: 'feed_rating' },
|
|
92
|
-
link: { path: 'link' },
|
|
93
|
-
published_timestamp: { path: 'published_timestamp' },
|
|
94
|
-
last_modified_timestamp: { path: 'last_modified_timestamp' },
|
|
95
|
-
in_base_image: { path: 'in_base_image' },
|
|
96
|
-
tags: {
|
|
97
|
-
path: 'tags',
|
|
98
|
-
transformer: (tags) => JSON.stringify(tags, null, 2)
|
|
99
|
-
},
|
|
100
|
-
envs: {
|
|
101
|
-
path: '$.report.envs',
|
|
102
|
-
transformer: (envs) => envs ? envs.join('\n') : undefined
|
|
103
|
-
},
|
|
104
|
-
cmds: {
|
|
105
|
-
path: '$.report.cmds',
|
|
106
|
-
transformer: (cmds) => cmds ? cmds.join('\n') : undefined
|
|
107
|
-
}
|
|
39
|
+
mappings = {
|
|
40
|
+
platform: {
|
|
41
|
+
name: 'Heimdall Tools',
|
|
42
|
+
release: package_json_1.version
|
|
43
|
+
},
|
|
44
|
+
version: package_json_1.version,
|
|
45
|
+
statistics: {},
|
|
46
|
+
profiles: [
|
|
47
|
+
{
|
|
48
|
+
name: 'NeuVector Scan',
|
|
49
|
+
title: {
|
|
50
|
+
path: 'report',
|
|
51
|
+
transformer: (data) => `${data.registry}/${data.repository}:${data.tag} - Digest: ${data.digest} - Image ID: ${data.image_id}`
|
|
52
|
+
},
|
|
53
|
+
supports: [],
|
|
54
|
+
attributes: [],
|
|
55
|
+
groups: [],
|
|
56
|
+
status: 'loaded',
|
|
57
|
+
controls: [
|
|
58
|
+
{
|
|
59
|
+
path: 'report.vulnerabilities',
|
|
60
|
+
key: 'id',
|
|
61
|
+
tags: {
|
|
62
|
+
cves: { path: 'cves' },
|
|
63
|
+
cpes: { path: 'cpes' },
|
|
64
|
+
cwe: {
|
|
65
|
+
path: 'description',
|
|
66
|
+
transformer: cweTags
|
|
67
|
+
},
|
|
68
|
+
nist: {
|
|
69
|
+
path: 'description',
|
|
70
|
+
transformer: (description) => nistTags(cweTags(description))
|
|
71
|
+
},
|
|
72
|
+
score: { path: 'score' },
|
|
73
|
+
vectors: { path: 'vectors' },
|
|
74
|
+
vectors_v3: { path: 'vectors_v3' },
|
|
75
|
+
score_v3: { path: 'score_v3' },
|
|
76
|
+
severity: { path: 'severity' },
|
|
77
|
+
source: {
|
|
78
|
+
path: 'package_name',
|
|
79
|
+
transformer: (packageName) => this.getModules(packageName)
|
|
108
80
|
},
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
81
|
+
status: {
|
|
82
|
+
path: 'name',
|
|
83
|
+
transformer: (name) => this.rawData.report.modules
|
|
84
|
+
?.find((module) => module.cves?.find(cveIdMatches(name)))
|
|
85
|
+
?.cves?.find(cveIdMatches(name))?.status
|
|
113
86
|
},
|
|
114
|
-
|
|
115
|
-
|
|
87
|
+
feed_rating: { path: 'feed_rating' },
|
|
88
|
+
link: { path: 'link' },
|
|
89
|
+
published_timestamp: { path: 'published_timestamp' },
|
|
90
|
+
last_modified_timestamp: { path: 'last_modified_timestamp' },
|
|
91
|
+
in_base_image: { path: 'in_base_image' },
|
|
92
|
+
tags: {
|
|
93
|
+
path: 'tags',
|
|
94
|
+
transformer: (tags) => JSON.stringify(tags, null, 2)
|
|
116
95
|
},
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
transformer: (
|
|
96
|
+
envs: {
|
|
97
|
+
path: '$.report.envs',
|
|
98
|
+
transformer: (envs) => envs ? envs.join('\n') : undefined
|
|
120
99
|
},
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
100
|
+
cmds: {
|
|
101
|
+
path: '$.report.cmds',
|
|
102
|
+
transformer: (cmds) => cmds ? cmds.join('\n') : undefined
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
refs: [],
|
|
106
|
+
source_location: { ref: { path: 'file_name' } },
|
|
107
|
+
title: {
|
|
108
|
+
transformer: (data) => `NeuVector found a vulnerability to ${data.name} in ${data.package_name}/${data.package_version}.`
|
|
109
|
+
},
|
|
110
|
+
id: {
|
|
111
|
+
transformer: (data) => `${data.name}/${data.package_name}/${data.package_version}`
|
|
112
|
+
},
|
|
113
|
+
desc: { path: 'description' },
|
|
114
|
+
impact: {
|
|
115
|
+
transformer: (data) => data.score_v3 / 10
|
|
116
|
+
},
|
|
117
|
+
results: [
|
|
118
|
+
{
|
|
119
|
+
status: inspecjs_1.ExecJSON.ControlResultStatus.Failed,
|
|
120
|
+
code_desc: '',
|
|
121
|
+
message: {
|
|
122
|
+
transformer: (data) => {
|
|
123
|
+
const { package_name, package_version, fixed_version } = data;
|
|
124
|
+
if (!fixed_version) {
|
|
125
|
+
return `Vulnerable package ${package_name} is at version ${package_version}. No fixed version available.`;
|
|
132
126
|
}
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
}
|
|
136
|
-
|
|
127
|
+
return `Vulnerable package ${package_name} is at version ${package_version}. Update to fixed version ${fixed_version}.`;
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
start_time: ''
|
|
131
|
+
}
|
|
132
|
+
]
|
|
133
|
+
}
|
|
134
|
+
],
|
|
135
|
+
sha256: ''
|
|
136
|
+
}
|
|
137
|
+
],
|
|
138
|
+
passthrough: {
|
|
139
|
+
transformer: (data) => {
|
|
140
|
+
return {
|
|
141
|
+
auxiliary_data: [
|
|
142
|
+
{
|
|
143
|
+
name: 'NeuVector',
|
|
144
|
+
data: lodash_1.default.omit([
|
|
145
|
+
'reports.vulnerabilities',
|
|
146
|
+
'reports.cmds',
|
|
147
|
+
'reports.envs',
|
|
148
|
+
'reports.registry',
|
|
149
|
+
'reports.repository',
|
|
150
|
+
'reports.tag',
|
|
151
|
+
'reports.digest',
|
|
152
|
+
'reports.image_id'
|
|
153
|
+
])
|
|
137
154
|
}
|
|
138
155
|
],
|
|
139
|
-
|
|
140
|
-
}
|
|
141
|
-
],
|
|
142
|
-
passthrough: {
|
|
143
|
-
transformer: (data) => {
|
|
144
|
-
return {
|
|
145
|
-
auxiliary_data: [
|
|
146
|
-
{
|
|
147
|
-
name: 'NeuVector',
|
|
148
|
-
data: lodash_1.default.omit([
|
|
149
|
-
'reports.vulnerabilities',
|
|
150
|
-
'reports.cmds',
|
|
151
|
-
'reports.envs',
|
|
152
|
-
'reports.registry',
|
|
153
|
-
'reports.repository',
|
|
154
|
-
'reports.tag',
|
|
155
|
-
'reports.digest',
|
|
156
|
-
'reports.image_id'
|
|
157
|
-
])
|
|
158
|
-
}
|
|
159
|
-
],
|
|
160
|
-
...(this.withRaw && { raw: data })
|
|
161
|
-
};
|
|
162
|
-
}
|
|
156
|
+
...(this.withRaw && { raw: data })
|
|
157
|
+
};
|
|
163
158
|
}
|
|
164
|
-
}
|
|
159
|
+
}
|
|
160
|
+
};
|
|
161
|
+
constructor(exportJson, withRaw = false) {
|
|
162
|
+
const rawParams = JSON.parse(exportJson);
|
|
163
|
+
super(rawParams);
|
|
165
164
|
this.withRaw = withRaw;
|
|
166
165
|
this.rawData = rawParams;
|
|
167
166
|
this.getModules = this.memoizedGetModules();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"neuvector-mapper.js","sourceRoot":"","sources":["../../src/neuvector-mapper.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"neuvector-mapper.js","sourceRoot":"","sources":["../../src/neuvector-mapper.ts"],"names":[],"mappings":"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","sourcesContent":["import {ExecJSON} from 'inspecjs';\nimport _ from 'lodash';\nimport {version as HeimdallToolsVersion} from '../package.json';\nimport {BaseConverter, ILookupPath, MappedTransform} from './base-converter';\nimport {CweNistMapping} from './mappings/CweNistMapping';\nimport {DEFAULT_UPDATE_REMEDIATION_NIST_TAGS} from './utils/global';\nimport {\n NeuVectorScanJson,\n RESTModuleCve,\n RESTScanModule,\n RESTScanRepoReport,\n RESTVulnerability\n} from '../types/neuvector-types';\n\nconst CWE_NIST_MAPPING = new CweNistMapping();\n\nfunction cweTags(description: string): string[] | undefined {\n const regex = /CWE-\\d{3}/g;\n return description.match(regex) ?? undefined;\n}\n\nfunction nistTags(cweTags: string[] | undefined): string[] {\n const identifiers = cweTags?.map((tag: string) => tag.slice(-3)) ?? [];\n return CWE_NIST_MAPPING.nistFilter(\n identifiers,\n DEFAULT_UPDATE_REMEDIATION_NIST_TAGS\n );\n}\n\nfunction cveIdMatches(cveName: string): (value: RESTModuleCve) => boolean {\n return (cve: RESTModuleCve) => cve.name === cveName;\n}\n\nexport class NeuVectorMapper extends BaseConverter {\n withRaw: boolean;\n rawData: NeuVectorScanJson;\n getModules: (moduleName: string) => RESTScanModule['source'] | undefined;\n\n memoizedGetModules(): (\n moduleName: string\n ) => RESTScanModule['source'] | undefined {\n const cache: Record<string, RESTScanModule['source'] | undefined> = {};\n\n return (moduleName: string) => {\n if (Object.prototype.hasOwnProperty.call(cache, moduleName)) {\n return cache[moduleName];\n }\n cache[moduleName] = (this.data as NeuVectorScanJson).report.modules?.find(\n (value) => value.name === moduleName\n )?.source;\n return cache[moduleName];\n };\n }\n\n mappings: MappedTransform<\n ExecJSON.Execution & {passthrough: unknown},\n ILookupPath\n > = {\n platform: {\n name: 'Heimdall Tools',\n release: HeimdallToolsVersion\n },\n version: HeimdallToolsVersion,\n statistics: {},\n profiles: [\n {\n name: 'NeuVector Scan',\n title: {\n path: 'report',\n transformer: (data: RESTScanRepoReport) =>\n `${data.registry}/${data.repository}:${data.tag} - Digest: ${data.digest} - Image ID: ${data.image_id}`\n },\n supports: [],\n attributes: [],\n groups: [],\n status: 'loaded',\n controls: [\n {\n path: 'report.vulnerabilities',\n key: 'id',\n tags: {\n cves: {path: 'cves'},\n cpes: {path: 'cpes'},\n cwe: {\n path: 'description',\n transformer: cweTags\n },\n nist: {\n path: 'description',\n transformer: (description: string) =>\n nistTags(cweTags(description))\n },\n score: {path: 'score'},\n vectors: {path: 'vectors'},\n vectors_v3: {path: 'vectors_v3'},\n score_v3: {path: 'score_v3'},\n severity: {path: 'severity'},\n source: {\n path: 'package_name',\n transformer: (packageName: string) =>\n this.getModules(packageName)\n },\n status: {\n path: 'name',\n transformer: (name: string) =>\n this.rawData.report.modules\n ?.find((module) => module.cves?.find(cveIdMatches(name)))\n ?.cves?.find(cveIdMatches(name))?.status\n },\n feed_rating: {path: 'feed_rating'},\n link: {path: 'link'},\n published_timestamp: {path: 'published_timestamp'},\n last_modified_timestamp: {path: 'last_modified_timestamp'},\n in_base_image: {path: 'in_base_image'},\n tags: {\n path: 'tags',\n transformer: (tags: string[]) => JSON.stringify(tags, null, 2)\n },\n envs: {\n path: '$.report.envs',\n transformer: (envs?: string[]) =>\n envs ? envs.join('\\n') : undefined\n },\n cmds: {\n path: '$.report.cmds',\n transformer: (cmds?: string[]) =>\n cmds ? cmds.join('\\n') : undefined\n }\n },\n refs: [],\n source_location: {ref: {path: 'file_name'}},\n title: {\n transformer: (data: RESTVulnerability) =>\n `NeuVector found a vulnerability to ${data.name} in ${data.package_name}/${data.package_version}.`\n },\n id: {\n transformer: (data: RESTVulnerability) =>\n `${data.name}/${data.package_name}/${data.package_version}`\n },\n desc: {path: 'description'},\n impact: {\n transformer: (data: RESTVulnerability) => data.score_v3 / 10\n },\n results: [\n {\n status: ExecJSON.ControlResultStatus.Failed,\n code_desc: '',\n message: {\n transformer: (data: RESTVulnerability) => {\n const {package_name, package_version, fixed_version} = data;\n if (!fixed_version) {\n return `Vulnerable package ${package_name} is at version ${package_version}. No fixed version available.`;\n }\n return `Vulnerable package ${package_name} is at version ${package_version}. Update to fixed version ${fixed_version}.`;\n }\n },\n start_time: ''\n }\n ]\n }\n ],\n sha256: ''\n }\n ],\n passthrough: {\n transformer: (\n data: NeuVectorScanJson\n ): Record<string, unknown> & {raw?: NeuVectorScanJson} => {\n return {\n auxiliary_data: [\n {\n name: 'NeuVector',\n data: _.omit([\n 'reports.vulnerabilities',\n 'reports.cmds',\n 'reports.envs',\n 'reports.registry',\n 'reports.repository',\n 'reports.tag',\n 'reports.digest',\n 'reports.image_id'\n ])\n }\n ],\n ...(this.withRaw && {raw: data})\n };\n }\n }\n };\n constructor(exportJson: string, withRaw = false) {\n const rawParams = JSON.parse(exportJson);\n super(rawParams);\n this.withRaw = withRaw;\n this.rawData = rawParams;\n this.getModules = this.memoizedGetModules();\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nikto-mapper.d.ts","sourceRoot":"","sources":["../../src/nikto-mapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,UAAU,CAAC;AAGlC,OAAO,EAAC,aAAa,EAAE,WAAW,EAAE,eAAe,EAAC,MAAM,kBAAkB,CAAC;AAsB7E,qBAAa,WAAY,SAAQ,aAAa;IAC5C,OAAO,EAAE,OAAO,CAAC;IAEjB,QAAQ,EAAE,eAAe,CACvB,QAAQ,CAAC,SAAS,GAAG;QAAC,WAAW,EAAE,OAAO,CAAA;KAAC,EAC3C,WAAW,CACZ,CAqEC;gBACU,SAAS,EAAE,MAAM,EAAE,OAAO,UAAQ;CAI/C"}
|
package/lib/src/nikto-mapper.js
CHANGED
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
36
|
exports.NiktoMapper = void 0;
|
|
27
37
|
const inspecjs_1 = require("inspecjs");
|
|
@@ -44,77 +54,78 @@ function nistTag(id) {
|
|
|
44
54
|
return NIKTO_NIST_MAPPING.nistTag(id);
|
|
45
55
|
}
|
|
46
56
|
class NiktoMapper extends base_converter_1.BaseConverter {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
transformer: (id) => (0, global_1.getCCIsForNISTTags)(nistTag(id))
|
|
80
|
-
},
|
|
81
|
-
ösvdb: { path: 'OSVDB' }
|
|
82
|
-
},
|
|
83
|
-
refs: [],
|
|
84
|
-
source_location: {},
|
|
85
|
-
title: { path: 'msg' },
|
|
86
|
-
id: { path: 'id' },
|
|
87
|
-
desc: { path: 'msg' },
|
|
88
|
-
impact: 0.5,
|
|
89
|
-
code: {
|
|
90
|
-
transformer: (vulnerability) => JSON.stringify(vulnerability, null, 2)
|
|
57
|
+
withRaw;
|
|
58
|
+
mappings = {
|
|
59
|
+
platform: {
|
|
60
|
+
name: 'Heimdall Tools',
|
|
61
|
+
release: package_json_1.version,
|
|
62
|
+
target_id: { transformer: projectName }
|
|
63
|
+
},
|
|
64
|
+
version: package_json_1.version,
|
|
65
|
+
statistics: {},
|
|
66
|
+
profiles: [
|
|
67
|
+
{
|
|
68
|
+
name: 'Nikto Website Scanner',
|
|
69
|
+
title: { transformer: formatTitle },
|
|
70
|
+
summary: {
|
|
71
|
+
path: 'banner',
|
|
72
|
+
transformer: (input) => {
|
|
73
|
+
return `Banner: ${input}`;
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
supports: [],
|
|
77
|
+
attributes: [],
|
|
78
|
+
groups: [],
|
|
79
|
+
status: 'loaded',
|
|
80
|
+
controls: [
|
|
81
|
+
{
|
|
82
|
+
path: 'vulnerabilities',
|
|
83
|
+
key: 'id',
|
|
84
|
+
tags: {
|
|
85
|
+
nist: { path: 'id', transformer: nistTag },
|
|
86
|
+
cci: {
|
|
87
|
+
path: 'id',
|
|
88
|
+
transformer: (id) => (0, global_1.getCCIsForNISTTags)(nistTag(id))
|
|
91
89
|
},
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
passthrough: {
|
|
105
|
-
transformer: (data) => {
|
|
106
|
-
return {
|
|
107
|
-
auxiliary_data: [
|
|
90
|
+
ösvdb: { path: 'OSVDB' }
|
|
91
|
+
},
|
|
92
|
+
refs: [],
|
|
93
|
+
source_location: {},
|
|
94
|
+
title: { path: 'msg' },
|
|
95
|
+
id: { path: 'id' },
|
|
96
|
+
desc: { path: 'msg' },
|
|
97
|
+
impact: 0.5,
|
|
98
|
+
code: {
|
|
99
|
+
transformer: (vulnerability) => JSON.stringify(vulnerability, null, 2)
|
|
100
|
+
},
|
|
101
|
+
results: [
|
|
108
102
|
{
|
|
109
|
-
|
|
110
|
-
|
|
103
|
+
status: inspecjs_1.ExecJSON.ControlResultStatus.Failed,
|
|
104
|
+
code_desc: { transformer: formatCodeDesc },
|
|
105
|
+
start_time: ''
|
|
111
106
|
}
|
|
112
|
-
]
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
107
|
+
]
|
|
108
|
+
}
|
|
109
|
+
],
|
|
110
|
+
sha256: ''
|
|
116
111
|
}
|
|
117
|
-
|
|
112
|
+
],
|
|
113
|
+
passthrough: {
|
|
114
|
+
transformer: (data) => {
|
|
115
|
+
return {
|
|
116
|
+
auxiliary_data: [
|
|
117
|
+
{
|
|
118
|
+
name: 'Nikto',
|
|
119
|
+
data: _.omit(data, ['banner', 'host', 'port', 'vulnerabilities'])
|
|
120
|
+
}
|
|
121
|
+
],
|
|
122
|
+
...(this.withRaw && { raw: data })
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
};
|
|
127
|
+
constructor(niktoJson, withRaw = false) {
|
|
128
|
+
super(JSON.parse(niktoJson));
|
|
118
129
|
this.withRaw = withRaw;
|
|
119
130
|
}
|
|
120
131
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nikto-mapper.js","sourceRoot":"","sources":["../../src/nikto-mapper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"nikto-mapper.js","sourceRoot":"","sources":["../../src/nikto-mapper.ts"],"names":[],"mappings":"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","sourcesContent":["import {ExecJSON} from 'inspecjs';\nimport * as _ from 'lodash';\nimport {version as HeimdallToolsVersion} from '../package.json';\nimport {BaseConverter, ILookupPath, MappedTransform} from './base-converter';\nimport {NiktoNistMapping} from './mappings/NiktoNistMapping';\nimport {getCCIsForNISTTags} from './utils/global';\n\nconst NIKTO_NIST_MAPPING = new NiktoNistMapping();\n\nfunction formatTitle(file: unknown): string {\n return `Nikto Target: ${projectName(file)}`;\n}\nfunction projectName(file: unknown): string {\n return `Host: ${_.get(file, 'host')} Port: ${_.get(file, 'port')}`;\n}\nfunction formatCodeDesc(vulnerability: unknown): string {\n return `URL : ${_.get(vulnerability, 'url')} Method: ${_.get(\n vulnerability,\n 'method'\n )}`;\n}\nfunction nistTag(id: string): string[] {\n return NIKTO_NIST_MAPPING.nistTag(id);\n}\n\nexport class NiktoMapper extends BaseConverter {\n withRaw: boolean;\n\n mappings: MappedTransform<\n ExecJSON.Execution & {passthrough: unknown},\n ILookupPath\n > = {\n platform: {\n name: 'Heimdall Tools',\n release: HeimdallToolsVersion,\n target_id: {transformer: projectName}\n },\n version: HeimdallToolsVersion,\n statistics: {},\n profiles: [\n {\n name: 'Nikto Website Scanner',\n title: {transformer: formatTitle},\n summary: {\n path: 'banner',\n transformer: (input: unknown): string => {\n return `Banner: ${input}`;\n }\n },\n supports: [],\n attributes: [],\n groups: [],\n status: 'loaded',\n controls: [\n {\n path: 'vulnerabilities',\n key: 'id',\n tags: {\n nist: {path: 'id', transformer: nistTag},\n cci: {\n path: 'id',\n transformer: (id: string) => getCCIsForNISTTags(nistTag(id))\n },\n ösvdb: {path: 'OSVDB'}\n },\n refs: [],\n source_location: {},\n title: {path: 'msg'},\n id: {path: 'id'},\n desc: {path: 'msg'},\n impact: 0.5,\n code: {\n transformer: (vulnerability: Record<string, unknown>): string =>\n JSON.stringify(vulnerability, null, 2)\n },\n results: [\n {\n status: ExecJSON.ControlResultStatus.Failed,\n code_desc: {transformer: formatCodeDesc},\n start_time: ''\n }\n ]\n }\n ],\n sha256: ''\n }\n ],\n passthrough: {\n transformer: (data: Record<string, unknown>): Record<string, unknown> => {\n return {\n auxiliary_data: [\n {\n name: 'Nikto',\n data: _.omit(data, ['banner', 'host', 'port', 'vulnerabilities'])\n }\n ],\n ...(this.withRaw && {raw: data})\n };\n }\n }\n };\n constructor(niktoJson: string, withRaw = false) {\n super(JSON.parse(niktoJson));\n this.withRaw = withRaw;\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prisma-mapper.d.ts","sourceRoot":"","sources":["../../src/prisma-mapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,UAAU,CAAC;AAGlC,OAAO,EACL,aAAa,EACb,WAAW,EACX,eAAe,EAEhB,MAAM,kBAAkB,CAAC;AAO1B,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAUF,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,YAMjD;AAED,qBAAa,mBAAoB,SAAQ,aAAa;IACpD,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,CAqHxD;gBAEU,cAAc,EAAE,aAAa,EAAE;CAG5C;AAED,qBAAa,YAAY;IACvB,IAAI,EAAE,aAAa,EAAE,CAAM;IAE3B,KAAK,IAAI,QAAQ,CAAC,SAAS,EAAE;gBAgBjB,SAAS,EAAE,MAAM;CAG9B"}
|