@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asff-mapper.js","sourceRoot":"","sources":["../../../src/asff-mapper/asff-mapper.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"asff-mapper.js","sourceRoot":"","sources":["../../../src/asff-mapper/asff-mapper.ts"],"names":[],"mappings":"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","sourcesContent":["// ASFF (AWS Security Finding Format) is intended as being another data exchange format to be used in displaying data within AWS SecurityHub - in this regard, it is analogous to HDF and Heimdall.\n// Like in every scenario where there is an open specification, people interpret the intent of each of the attributes in slightly different ways. Consequently, while many products provide 'ASFF' output, providing a mapper back to HDF can be complicated.\n\nimport {compare, validate} from 'compare-versions';\nimport {encode} from 'html-entities';\nimport {ExecJSON} from 'inspecjs';\nimport * as _ from 'lodash';\nimport {version as HeimdallToolsVersion} from '../../package.json';\nimport {BaseConverter, ILookupPath, MappedTransform} from '../base-converter';\nimport {\n DEFAULT_STATIC_CODE_ANALYSIS_NIST_TAGS,\n getCCIsForNISTTags\n} from '../utils/global';\nimport {getCMSInSpec} from './case-cms-inspec';\nimport {getFirewallManager} from './case-firewall-manager';\nimport {getGuardDuty} from './case-guardduty';\nimport {getInspector} from './case-inspector';\nimport {getPreviouslyHDF} from './case-previously-hdf';\nimport {getProwler} from './case-prowler';\nimport {getSecurityHub} from './case-security-hub';\nimport {getTrivy} from './case-trivy';\n\nconst IMPACT_MAPPING: Map<string, number> = new Map([\n ['CRITICAL', 0.9],\n ['HIGH', 0.7],\n ['MEDIUM', 0.5],\n ['LOW', 0.3],\n ['INFORMATIONAL', 0.0]\n]);\n\nconst SEVERITY_LABEL = 'Severity.Label';\nconst COMPLIANCE_STATUS = 'Compliance.Status';\n\n// Sometimes certain ASFF file types require massaging in order to generate good HDF files. These are the supported special cases and a catchall 'Default'. 'Default' files and non-special cased methods for otherwise special cased files do the pre-defined default behaviors when generating the HDF file.\nexport enum SpecialCasing {\n CMSInSpec = 'CMS Chef InSpec',\n FirewallManager = 'AWS Firewall Manager',\n GuardDuty = 'AWS GuardDuty',\n Inspector = 'AWS Inspector',\n Prowler = 'Prowler',\n SecurityHub = 'AWS Security Hub',\n Trivy = 'Aqua Trivy',\n PreviouslyHDF = 'MITRE SAF HDF2ASFF',\n Default = 'Default'\n}\n\n// typically you can just look at the ProductArn field to get information on the product type but we also support some custom formats/products that require alternative means of identification\nfunction whichSpecialCase(finding: Record<string, unknown>): SpecialCasing {\n const productArn = _.get(finding, 'ProductArn') as string;\n if (\n _.get(finding, 'ProductName') === 'Default' &&\n _.get(finding, 'GeneratorId') === 'cms.Chef Inspec'\n ) {\n return SpecialCasing.CMSInSpec;\n } else if (\n productArn.match(\n /^arn:[^:]+:securityhub:[^:]+:[^:]*:product\\/aws\\/firewall-manager$/\n )\n ) {\n return SpecialCasing.FirewallManager;\n } else if (\n productArn.match(\n /^arn:[^:]+:securityhub:[^:]+:[^:]*:product\\/aws\\/guardduty$/\n )\n ) {\n return SpecialCasing.GuardDuty;\n } else if (\n _.some(\n _.get(finding, 'FindingProviderFields.Types') as string[],\n (type: string) => {\n // 'type' should look like \"MITRE/SAF/2.6.29-hdf2asff\"\n if (!_.startsWith(type, 'MITRE/SAF/')) {\n return false;\n }\n const version = type.split('/').pop()?.split('-')[0] ?? '';\n return validate(version) && compare(version, '2.6.20', '>'); // older versions aren't supported by the 'PreviouslyHDF' specialcasing and instead use the default casing\n }\n )\n ) {\n return SpecialCasing.PreviouslyHDF;\n } else if (\n productArn.match(\n /^arn:[^:]+:securityhub:[^:]+:[^:]*:product\\/aws\\/inspector$/\n )\n ) {\n return SpecialCasing.Inspector;\n } else if (\n productArn.match(\n /^arn:[^:]+:securityhub:[^:]+:[^:]*:product\\/prowler\\/prowler$/\n )\n ) {\n return SpecialCasing.Prowler;\n } else if (\n productArn.match(\n /^arn:[^:]+:securityhub:[^:]+:[^:]*:product\\/aws\\/securityhub$/\n )\n ) {\n return SpecialCasing.SecurityHub;\n } else if (\n productArn.match(\n /^arn:[^:]+:securityhub:[^:]+:[^:]*:product\\/aquasecurity\\/aquasecurity$/\n )\n ) {\n return SpecialCasing.Trivy;\n } else {\n return SpecialCasing.Default;\n }\n}\n\nconst SPECIAL_CASE_MAPPING: Map<\n SpecialCasing,\n // eslint-disable-next-line @typescript-eslint/ban-types\n Record<string, Function>\n> = new Map([\n [SpecialCasing.CMSInSpec, getCMSInSpec()],\n [SpecialCasing.FirewallManager, getFirewallManager()],\n [SpecialCasing.GuardDuty, getGuardDuty()],\n [SpecialCasing.Inspector, getInspector()],\n [SpecialCasing.PreviouslyHDF, getPreviouslyHDF()],\n [SpecialCasing.Prowler, getProwler()],\n [SpecialCasing.SecurityHub, getSecurityHub()],\n [SpecialCasing.Trivy, getTrivy()]\n]);\n\n// If a special casing has a function override, then do the override, otherwise return the default value. This is how the 'massaging' described above is implemented.\nfunction externalProductHandler<T>(\n context: ASFFMapper | ASFFResults,\n product: SpecialCasing,\n data: unknown,\n func: string,\n defaultVal: T | (() => T)\n): T {\n if (\n product !== SpecialCasing.Default &&\n _.has(SPECIAL_CASE_MAPPING.get(product), func)\n ) {\n let keywords: Record<string, unknown> = {};\n if (context.supportingDocs.has(product)) {\n keywords = {...context.supportingDocs.get(product)};\n }\n return _.get(SPECIAL_CASE_MAPPING.get(product), func)?.apply(context, [\n data,\n keywords\n ]);\n } else {\n if (typeof defaultVal === 'function') {\n return (defaultVal as () => T)();\n } else {\n return defaultVal;\n }\n }\n}\n\n// helper function to take all the controls that have the same id and turn them into results/subtests within an overarching control\nfunction handleIdGroup(\n context: ASFFMapper,\n idGroup: [string, [ExecJSON.Control, Record<string, unknown>][]]\n): ExecJSON.Control {\n const [id, data] = idGroup;\n const group = data.map((d) => d[0]);\n const findings = data.map((d) => d[1]);\n\n const productInfo = (_.get(findings[0], 'ProductArn') as string)\n .split(':')\n .slice(-1)[0]\n .split('/');\n const productName = externalProductHandler(\n context,\n whichSpecialCase(findings[0]),\n findings,\n 'productName',\n encode(`${productInfo[1]}/${productInfo[2]}`)\n );\n const titlePrefix = externalProductHandler(\n context,\n whichSpecialCase(findings[0]),\n findings,\n 'titlePrefix',\n `${productName}: `\n );\n const waiverData = externalProductHandler(\n context,\n whichSpecialCase(findings[0]),\n group,\n 'waiverData',\n {}\n ) as ExecJSON.ControlWaiverData;\n\n return {\n id: id,\n title: `${titlePrefix}${_.uniq(group.map((d) => d.title)).join(';')}`,\n tags: _.mergeWith(\n {},\n ...group.map((d) => d.tags),\n (acc: unknown, cur: unknown) => {\n if (acc === undefined || cur === undefined) {\n return acc || cur;\n } else {\n return Array.isArray(acc) || Array.isArray(cur)\n ? _.uniq(_.concat([], acc, cur))\n : acc;\n }\n }\n ),\n impact: Math.max(...group.map((d) => d.impact)),\n desc: externalProductHandler(\n context,\n whichSpecialCase(findings[0]),\n group,\n 'desc',\n _.uniq(group.map((d) => d.desc)).join('\\n')\n ),\n descriptions: group\n .map((d) => d.descriptions)\n .flat()\n .filter(\n (element, index, arr) =>\n element &&\n element.data !== '' &&\n index ===\n arr.findIndex(\n (e) => e !== null && e !== undefined && e.data === element.data\n ) // https://stackoverflow.com/a/36744732/645647\n ) as ExecJSON.ControlDescription[],\n refs: group\n .map((d) => d.refs)\n .flat()\n .filter((element) => _.get(element, 'url') !== undefined),\n source_location: ((): ExecJSON.SourceLocation => {\n const locs = _.uniq(group.map((d) => d.source_location)).filter(\n (loc) => Object.keys(loc || {}).length !== 0\n );\n if (locs.length === 0) {\n return {};\n } else if (locs.length === 1) {\n return locs[0];\n } else {\n return {ref: JSON.stringify(locs)};\n }\n })(),\n ...(Object.keys(waiverData || {}).length !== 0 && {\n waiver_data: waiverData\n }),\n code: externalProductHandler(\n context,\n whichSpecialCase(findings[0]),\n group,\n 'code',\n JSON.stringify({Findings: findings}, null, 2)\n ),\n results: group.map((d) => d.results).flat()\n } as ExecJSON.Control;\n}\n\n// consolidate the array of controls which were generated 1:1 with findings in order to have subfindings/results\n// the way it does this is to group by HDF id which by default is the ASFF GeneratorId field\nexport function consolidate(\n context: ASFFMapper,\n input: unknown[],\n file: Record<string, unknown>\n): ExecJSON.Control[] {\n // Group Sub-findings by HDF ID\n const allFindings = _.get(file, 'Findings') as Record<string, unknown>[];\n if (input.length !== allFindings.length) {\n throw new Error(\n 'The number of generated controls should be the same as the number of findings while consolidating.'\n );\n }\n const idGroups = _.groupBy(\n _.zip(input, allFindings),\n (value: [ExecJSON.Control, Record<string, unknown>]) => {\n const [hdfControl, asffFinding] = value;\n return externalProductHandler(\n context,\n whichSpecialCase(asffFinding),\n asffFinding,\n 'subfindingsId',\n _.get(hdfControl, 'id')\n );\n }\n ) as Record<string, [ExecJSON.Control, Record<string, unknown>][]>;\n\n return Object.entries(idGroups || {}).map((idGroup) =>\n handleIdGroup(context, idGroup)\n );\n}\n\n// the schema specifies that the file should be `{ \"Findings\": [... findings array ...] }` but sometimes only the array or even a single finding is provided so this function corrects for those cases\nfunction wrapWithFindingsObject(\n output:\n | Record<string, unknown>\n | Record<string, unknown>[]\n | Record<string, Record<string, unknown>[]>\n): Record<string, Record<string, unknown>[]> {\n if (!_.has(output, 'Findings')) {\n if (Array.isArray(output)) {\n output = {Findings: output};\n } else {\n output = {Findings: [output]};\n }\n }\n return output as Record<string, Record<string, unknown>[]>;\n}\n\n// some applications (like Prowler) give us new line seperated JSON objects (see JSON Lines or ndjson) but we need regular JSON\nfunction fixFileInput(\n asffJson: string\n): Record<string, Record<string, unknown>[]> {\n let output = {};\n try {\n output = JSON.parse(asffJson);\n } catch {\n const fixedInput = `[${asffJson\n .trim()\n .replace(/}\\n/g, '},\\n')\n .replace(/\\},\\n\\$/g, '')}]`;\n output = JSON.parse(fixedInput);\n }\n return wrapWithFindingsObject(output);\n}\n\nexport class ASFFMapper extends BaseConverter {\n meta: Record<string, string | undefined> | undefined;\n supportingDocs: Map<SpecialCasing, Record<string, Record<string, unknown>>>;\n\n defaultMappings = {\n platform: {\n name: 'Heimdall Tools',\n release: HeimdallToolsVersion,\n target_id: {\n transformer: (record: Record<string, unknown>) => {\n const productInfo = (\n _.get(record, 'Findings[0].ProductArn') as string\n )\n .split(':')\n .slice(-1)[0]\n .split('/');\n const defaultTargetId = `${productInfo[1]} - ${productInfo[2]}`;\n return externalProductHandler(\n this,\n whichSpecialCase(\n _.get(record, 'Findings[0]') as Record<string, unknown>\n ),\n [_.get(record, 'Findings[0]'), record.Findings],\n 'productName',\n encode(defaultTargetId)\n );\n }\n }\n },\n version: HeimdallToolsVersion,\n statistics: {\n duration: null\n },\n profiles: [\n {\n name: {\n transformer: (): string => {\n return this.meta?.name || 'AWS Security Finding Format';\n }\n },\n version: '',\n title: {\n transformer: (): string => {\n return (_.get(this.meta, 'title') as string) || 'ASFF Findings';\n }\n },\n maintainer: null,\n summary: '',\n license: null,\n copyright: null,\n copyright_email: null,\n supports: [],\n attributes: [],\n depends: [],\n groups: [],\n status: 'loaded',\n controls: [\n {\n path: 'Findings',\n key: 'id',\n arrayTransformer: consolidate.bind(this, this),\n id: {\n transformer: (finding: Record<string, unknown>): string =>\n externalProductHandler(\n this,\n whichSpecialCase(finding),\n finding,\n 'findingId',\n encode(_.get(finding, 'GeneratorId') as string)\n )\n },\n title: {\n transformer: (finding: Record<string, unknown>): string =>\n externalProductHandler(\n this,\n whichSpecialCase(finding),\n finding,\n 'findingTitle',\n encode(_.get(finding, 'Title') as string)\n )\n },\n desc: {\n transformer: (finding: Record<string, unknown>): string =>\n externalProductHandler(\n this,\n whichSpecialCase(finding),\n finding,\n 'findingDescription',\n encode(_.get(finding, 'Description') as string)\n )\n },\n impact: {\n transformer: (finding: Record<string, unknown>): number => {\n // There can be findings listed that are intentionally ignored due to the underlying control being superseded by a control from a different standard\n let impact: string | number;\n if (_.get(finding, 'Workflow.Status') === 'SUPPRESSED') {\n impact = 'INFORMATIONAL';\n } else {\n // Severity is required, but can be either 'label' or 'normalized' internally with 'label' being preferred. other values can be in here too such as the original severity rating.\n const defaultFunc = (): string | number =>\n (_.get(finding, SEVERITY_LABEL) as string | undefined)\n ? (_.get(finding, SEVERITY_LABEL) as string)\n : (_.get(finding, 'Severity.Normalized') as number) /\n 100.0;\n impact = externalProductHandler<string | number>(\n this,\n whichSpecialCase(finding),\n finding,\n 'findingImpact',\n defaultFunc\n );\n }\n return typeof impact === 'string'\n ? IMPACT_MAPPING.get(impact) || 0\n : impact;\n }\n },\n tags: {\n transformer: (\n finding: Record<string, unknown>\n ): Record<string, unknown> | undefined =>\n externalProductHandler(\n this,\n whichSpecialCase(finding),\n finding,\n 'findingTags',\n {}\n ) as Record<string, unknown>,\n cci: {\n transformer: (finding: Record<string, unknown>): string[] => {\n const tags = externalProductHandler(\n this,\n whichSpecialCase(finding),\n finding,\n 'findingNistTag',\n []\n ) as string[];\n if (tags.length === 0) {\n return getCCIsForNISTTags(\n DEFAULT_STATIC_CODE_ANALYSIS_NIST_TAGS\n );\n } else {\n return getCCIsForNISTTags(tags);\n }\n }\n },\n nist: {\n transformer: (finding: Record<string, unknown>): string[] => {\n const tags = externalProductHandler(\n this,\n whichSpecialCase(finding),\n finding,\n 'findingNistTag',\n []\n ) as string[];\n if (tags.length === 0) {\n return DEFAULT_STATIC_CODE_ANALYSIS_NIST_TAGS;\n } else {\n return tags;\n }\n }\n }\n },\n descriptions: [\n {\n data: {\n path: 'Remediation.Recommendation',\n transformer: (input: Record<string, string>): string => {\n const data: string[] = [];\n if (_.has(input, 'Text')) {\n data.push(_.get(input, 'Text'));\n }\n if (_.has(input, 'Url')) {\n data.push(_.get(input, 'Url'));\n }\n return data.join('\\n');\n }\n },\n label: 'fix'\n }\n ],\n refs: [\n {\n transformer: (\n finding: Record<string, unknown>\n ): Record<string, unknown> => {\n return {\n ...(_.has(finding, 'SourceUrl') && {\n url: _.get(finding, 'SourceUrl')\n })\n };\n }\n }\n ],\n source_location: {},\n code: '',\n results: [\n {\n status: {\n transformer: (\n finding: Record<string, unknown>\n ): ExecJSON.ControlResultStatus => {\n const defaultFunc = () => {\n if (_.has(finding, COMPLIANCE_STATUS)) {\n switch (_.get(finding, COMPLIANCE_STATUS)) {\n case 'PASSED':\n return ExecJSON.ControlResultStatus.Passed;\n case 'WARNING':\n return ExecJSON.ControlResultStatus.Skipped;\n case 'FAILED':\n return ExecJSON.ControlResultStatus.Failed;\n case 'NOT_AVAILABLE':\n // primary meaning is that the check could not be performed due to a service outage or API error, but it's also overloaded to mean NOT_APPLICABLE so technically 'skipped' or 'error' could be applicable, but AWS seems to do the equivalent of skipped\n return ExecJSON.ControlResultStatus.Skipped;\n default:\n // not a valid value for the status enum\n return ExecJSON.ControlResultStatus.Error;\n }\n } else {\n // if no compliance status is provided which is a weird but possible case, then fail\n return ExecJSON.ControlResultStatus.Failed;\n }\n };\n return externalProductHandler(\n this,\n whichSpecialCase(finding),\n finding,\n 'subfindingsStatus',\n defaultFunc\n ) as ExecJSON.ControlResultStatus;\n }\n },\n code_desc: {\n transformer: (finding: Record<string, unknown>): string => {\n let output = externalProductHandler(\n this,\n whichSpecialCase(finding),\n finding,\n 'subfindingsCodeDesc',\n ''\n ) as string;\n if (output) {\n output += '; ';\n }\n const resources = (\n _.get(finding, 'Resources') as Record<string, unknown>[]\n )\n .map((resource: unknown) => {\n let hash = `Type: ${encode(\n _.get(resource, 'Type')\n )}, Id: ${encode(_.get(resource, 'Id'))}`;\n if (_.has(resource, 'Partition')) {\n hash += `, Partition: ${encode(\n _.get(resource, 'Partition')\n )}`;\n }\n if (_.has(resource, 'Region')) {\n hash += `, Region: ${encode(\n _.get(resource, 'Region')\n )}`;\n }\n return hash;\n })\n .join(', ');\n output += `Resources: [${resources}]`;\n return output;\n }\n },\n transformer: (\n finding: Record<string, unknown>\n ): Record<string, unknown> => {\n const message = (() => {\n const defaultFunc = () => {\n const statusReason = this.statusReason(finding);\n switch (_.get(finding, COMPLIANCE_STATUS)) {\n case undefined: // Possible for Compliance.Status to not be there, in which case it's a skip_message\n return undefined;\n case 'PASSED':\n return statusReason;\n case 'WARNING':\n return undefined;\n case 'FAILED':\n return statusReason;\n case 'NOT_AVAILABLE':\n return undefined;\n default:\n return statusReason;\n }\n };\n return externalProductHandler(\n this,\n whichSpecialCase(finding),\n finding,\n 'subfindingsMessage',\n defaultFunc\n );\n })();\n const skipMessage = (() => {\n const statusReason = this.statusReason(finding);\n switch (_.get(finding, COMPLIANCE_STATUS)) {\n case undefined: // Possible for Compliance.Status to not be there, in which case it's a skip_message\n return statusReason;\n case 'PASSED':\n return undefined;\n case 'WARNING':\n return statusReason;\n case 'FAILED':\n return undefined;\n case 'NOT_AVAILABLE':\n // primary meaning is that the check could not be performed due to a service outage or API error, but it's also overloaded to mean NOT_APPLICABLE so technically 'skipped' or 'error' could be applicable, but AWS seems to do the equivalent of skipped\n return statusReason;\n default:\n return undefined;\n }\n })();\n return {\n ...(message !== undefined && {message}),\n ...(skipMessage !== undefined && {\n skip_message: skipMessage\n })\n };\n },\n start_time: {\n transformer: (finding: Record<string, unknown>): string =>\n (_.get(finding, 'LastObservedAt') as string) ||\n (_.get(finding, 'UpdatedAt') as string)\n }\n }\n ]\n }\n ],\n sha256: ''\n }\n ]\n };\n\n statusReason(finding: unknown): string | undefined {\n const statusReasons = _.get(finding, 'Compliance.StatusReasons') as\n | Record<string, string>[]\n | unknown;\n if (\n statusReasons !== undefined &&\n statusReasons !== null &&\n _.isArray(statusReasons)\n ) {\n return statusReasons\n .map((reason: Record<string, string>) =>\n Object.entries(reason || {}).map(([key, value]: [string, string]) => {\n return `${encode(key)}: ${encode(value)}`;\n })\n )\n .flat()\n .join('\\n');\n } else {\n return undefined;\n }\n }\n\n setMappings(): void {\n this.mappings = externalProductHandler(\n this,\n whichSpecialCase(\n _.get(this.data, 'Findings[0]') as Record<string, unknown>\n ),\n this,\n 'mapping',\n this.defaultMappings\n ) as MappedTransform<ExecJSON.Execution, ILookupPath>;\n }\n\n constructor(\n asff: Record<string, unknown>,\n supportingDocs: Map<SpecialCasing, Record<string, Record<string, unknown>>>,\n meta: Record<string, string | undefined> | undefined = undefined\n ) {\n super(asff);\n this.meta = meta;\n this.supportingDocs = supportingDocs;\n this.setMappings();\n }\n}\n\n// sometimes there is a need to change certain meta level information such as the profile name to make it clearer that the original ASFF file came from an external tool instead of SecHub\n// some special cases can take in additional files aside from findings, ex. the guidelines which contain correct severity information\nexport class ASFFResults {\n data: Record<string, Record<string, unknown>[]>;\n meta: Record<string, string | undefined> | undefined;\n supportingDocs: Map<SpecialCasing, Record<string, Record<string, unknown>>>;\n constructor(\n asffJson: string,\n securityhubStandardsJsonArray: undefined | string[] = undefined,\n meta: Record<string, string | undefined> | undefined = undefined\n ) {\n this.meta = meta;\n this.supportingDocs = new Map<\n SpecialCasing,\n Record<string, Record<string, unknown>>\n >();\n this.supportingDocs.set(\n SpecialCasing.SecurityHub,\n _.get(\n SPECIAL_CASE_MAPPING.get(SpecialCasing.SecurityHub),\n 'securityhubSupportingDocs',\n (standards: string[] | undefined) => {\n throw new Error(\n `supportingDocs function should've been defined: ${standards}`\n );\n }\n )(securityhubStandardsJsonArray)\n );\n\n // split input findings via product, each of which will get their own resultant HDF file\n const findings = _.get(fixFileInput(asffJson), 'Findings');\n this.data = _.groupBy(findings, (finding) => {\n const productInfo = (_.get(finding, 'ProductArn') as string)\n .split(':')\n .slice(-1)[0]\n .split('/');\n const defaultFilename = `${productInfo[1]} - ${productInfo[2]}.json`;\n return externalProductHandler(\n this,\n whichSpecialCase(finding),\n [finding, findings],\n 'filename',\n encode(defaultFilename)\n );\n });\n }\n\n toHdf(): Record<string, ExecJSON.Execution> {\n return _.mapValues(this.data, (val) => {\n const wrapped = wrapWithFindingsObject(val);\n return new ASFFMapper(\n externalProductHandler(\n this,\n whichSpecialCase(\n _.get(wrapped, 'Findings[0]') as unknown as Record<string, unknown>\n ),\n wrapped,\n 'preprocessingASFF',\n wrapped\n ) as Record<string, unknown>,\n externalProductHandler(\n this,\n whichSpecialCase(\n _.get(wrapped, 'Findings[0]') as unknown as Record<string, unknown>\n ),\n [wrapped, this.supportingDocs],\n 'supportingDocs',\n this.supportingDocs\n ),\n externalProductHandler(\n this,\n whichSpecialCase(\n _.get(wrapped, 'Findings[0]') as unknown as Record<string, unknown>\n ),\n undefined,\n 'meta',\n this.meta\n ) as Record<string, string>\n ).toHdf();\n });\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"case-cms-inspec.d.ts","sourceRoot":"","sources":["../../../src/asff-mapper/case-cms-inspec.ts"],"names":[],"mappings":"AAuDA,wBAAgB,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,CAUtE"}
|
|
@@ -15,15 +15,25 @@ 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
|
-
exports.getCMSInSpec =
|
|
36
|
+
exports.getCMSInSpec = getCMSInSpec;
|
|
27
37
|
const html_entities_1 = require("html-entities");
|
|
28
38
|
const _ = __importStar(require("lodash"));
|
|
29
39
|
function findingId(finding) {
|
|
@@ -70,5 +80,4 @@ function getCMSInSpec() {
|
|
|
70
80
|
filename
|
|
71
81
|
};
|
|
72
82
|
}
|
|
73
|
-
exports.getCMSInSpec = getCMSInSpec;
|
|
74
83
|
//# sourceMappingURL=case-cms-inspec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"case-cms-inspec.js","sourceRoot":"","sources":["../../../src/asff-mapper/case-cms-inspec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"case-cms-inspec.js","sourceRoot":"","sources":["../../../src/asff-mapper/case-cms-inspec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuDA,oCAUC;AAjED,iDAAqC;AACrC,0CAA4B;AAE5B,SAAS,SAAS,CAAC,OAAgC;IACjD,OAAO,IAAA,sBAAM,EACV,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,yCAAyC,CAAY;SAClE,KAAK,CAAC,GAAG,CAAC;SACV,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACZ,KAAK,CAAC,GAAG,CAAC;SACV,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SACZ,IAAI,CAAC,GAAG,CAAC,CACb,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,OAAgC;IACpD,OAAO,IAAA,sBAAM,EACV,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAY;SACtC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAW,UAAU,CAAC,MAAM,CAAC;SAC5D,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CACnB,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAgC;IAC1D,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAgC;IAC3D,OAAO,IAAA,sBAAM,EACV,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAY;SACtC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAW,UAAU,CAAC,MAAM,CAAC;SAC5D,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CACnB,CAAC;AACJ,CAAC;AAED,SAAS,WAAW;IAClB,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,WAAW,CAClB,QAA6D;IAE7D,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACjE,OAAO,mBAAmB,IAAA,sBAAM,EAC7B,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,yCAAyC,CAAY;SAClE,KAAK,CAAC,GAAG,CAAC;SACV,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAChB,EAAE,CAAC;AACN,CAAC;AAED,SAAS,QAAQ,CACf,WAAiE;IAEjE,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;AAC/C,CAAC;AAED,SAAgB,YAAY;IAC1B,OAAO;QACL,SAAS;QACT,YAAY;QACZ,kBAAkB;QAClB,mBAAmB;QACnB,WAAW;QACX,WAAW;QACX,QAAQ;KACT,CAAC;AACJ,CAAC","sourcesContent":["import {encode} from 'html-entities';\nimport * as _ from 'lodash';\n\nfunction findingId(finding: Record<string, unknown>): string {\n return encode(\n (_.get(finding, 'ProductFields.aws/securityhub/FindingId') as string)\n .split('/')\n .slice(-1)[0]\n .split('-')\n .slice(0, -1)\n .join('-')\n );\n}\n\nfunction findingTitle(finding: Record<string, unknown>): string {\n return encode(\n (_.get(finding, 'Description') as string)\n .slice(`${_.get(finding, 'Title') as string} titled `.length)\n .split(' : ')[0]\n );\n}\n\nfunction findingDescription(finding: Record<string, unknown>): string {\n return findingTitle(finding);\n}\n\nfunction subfindingsCodeDesc(finding: Record<string, unknown>): string {\n return encode(\n (_.get(finding, 'Description') as string)\n .slice(`${_.get(finding, 'Title') as string} titled `.length)\n .split(' : ')[1]\n );\n}\n\nfunction titlePrefix(): string {\n return '';\n}\n\nfunction productName(\n findings: Record<string, unknown> | Record<string, unknown>[]\n): string {\n const finding = Array.isArray(findings) ? findings[0] : findings;\n return `cms_chef_inspec-${encode(\n (_.get(finding, 'ProductFields.aws/securityhub/FindingId') as string)\n .split('/')\n .slice(-2)[0]\n )}`;\n}\n\nfunction filename(\n findingInfo: [Record<string, unknown>, Record<string, unknown>[]]\n): string {\n return `${productName(findingInfo[0])}.json`;\n}\n\nexport function getCMSInSpec(): Record<string, (...inputs: any) => any> {\n return {\n findingId,\n findingTitle,\n findingDescription,\n subfindingsCodeDesc,\n titlePrefix,\n productName,\n filename\n };\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"case-firewall-manager.d.ts","sourceRoot":"","sources":["../../../src/asff-mapper/case-firewall-manager.ts"],"names":[],"mappings":"AAyBA,wBAAgB,kBAAkB,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,CAM5E"}
|
|
@@ -15,15 +15,25 @@ 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
|
-
exports.getFirewallManager =
|
|
36
|
+
exports.getFirewallManager = getFirewallManager;
|
|
27
37
|
const html_entities_1 = require("html-entities");
|
|
28
38
|
const _ = __importStar(require("lodash"));
|
|
29
39
|
function findingId(finding) {
|
|
@@ -43,5 +53,4 @@ function getFirewallManager() {
|
|
|
43
53
|
filename
|
|
44
54
|
};
|
|
45
55
|
}
|
|
46
|
-
exports.getFirewallManager = getFirewallManager;
|
|
47
56
|
//# sourceMappingURL=case-firewall-manager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"case-firewall-manager.js","sourceRoot":"","sources":["../../../src/asff-mapper/case-firewall-manager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"case-firewall-manager.js","sourceRoot":"","sources":["../../../src/asff-mapper/case-firewall-manager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,gDAMC;AA/BD,iDAAqC;AACrC,0CAA4B;AAE5B,SAAS,SAAS,CAAC,OAAgC;IACjD,OAAO,IAAA,sBAAM,EAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAW,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,WAAW,CAClB,QAA6D;IAE7D,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACjE,OAAO,IAAA,sBAAM,EACX,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,2CAA2C,CAAC,IAAI,CAAC,CAAC,GAAG,CACrE,OAAO,EACP,2CAA2C,CAC5C,EAAE,CACJ,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CACf,WAAiE;IAEjE,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;AAC/C,CAAC;AAED,SAAgB,kBAAkB;IAChC,OAAO;QACL,SAAS;QACT,WAAW;QACX,QAAQ;KACT,CAAC;AACJ,CAAC","sourcesContent":["import {encode} from 'html-entities';\nimport * as _ from 'lodash';\n\nfunction findingId(finding: Record<string, unknown>): string {\n return encode(_.get(finding, 'Title') as string);\n}\n\nfunction productName(\n findings: Record<string, unknown> | Record<string, unknown>[]\n): string {\n const finding = Array.isArray(findings) ? findings[0] : findings;\n return encode(\n `${_.get(finding, 'ProductFields.aws/securityhub/CompanyName')} ${_.get(\n finding,\n 'ProductFields.aws/securityhub/ProductName'\n )}`\n );\n}\n\nfunction filename(\n findingInfo: [Record<string, unknown>, Record<string, unknown>[]]\n): string {\n return `${productName(findingInfo[1])}.json`;\n}\n\nexport function getFirewallManager(): Record<string, (...inputs: any) => any> {\n return {\n findingId,\n productName,\n filename\n };\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"case-guardduty.d.ts","sourceRoot":"","sources":["../../../src/asff-mapper/case-guardduty.ts"],"names":[],"mappings":"AAYA,wBAAgB,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,CAItE"}
|
|
@@ -15,15 +15,25 @@ 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
|
-
exports.getGuardDuty =
|
|
36
|
+
exports.getGuardDuty = getGuardDuty;
|
|
27
37
|
const html_entities_1 = require("html-entities");
|
|
28
38
|
const _ = __importStar(require("lodash"));
|
|
29
39
|
function findingId(finding) {
|
|
@@ -34,5 +44,4 @@ function getGuardDuty() {
|
|
|
34
44
|
findingId
|
|
35
45
|
};
|
|
36
46
|
}
|
|
37
|
-
exports.getGuardDuty = getGuardDuty;
|
|
38
47
|
//# sourceMappingURL=case-guardduty.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"case-guardduty.js","sourceRoot":"","sources":["../../../src/asff-mapper/case-guardduty.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"case-guardduty.js","sourceRoot":"","sources":["../../../src/asff-mapper/case-guardduty.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,oCAIC;AAhBD,iDAAqC;AACrC,0CAA4B;AAE5B,SAAS,SAAS,CAAC,OAAgC;IACjD,OAAO,IAAA,sBAAM,EACV,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAY,CAAC,MAAM,CAC9C,GAAG,EACF,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACzD,CACF,CAAC;AACJ,CAAC;AAED,SAAgB,YAAY;IAC1B,OAAO;QACL,SAAS;KACV,CAAC;AACJ,CAAC","sourcesContent":["import {encode} from 'html-entities';\nimport * as _ from 'lodash';\n\nfunction findingId(finding: Record<string, unknown>): string {\n return encode(\n (_.get(finding, 'GeneratorId') as string).concat(\n ' ',\n (_.get(finding, 'Id') as string).split('/').slice(-1)[0]\n )\n );\n}\n\nexport function getGuardDuty(): Record<string, (...inputs: any) => any> {\n return {\n findingId\n };\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"case-inspector.d.ts","sourceRoot":"","sources":["../../../src/asff-mapper/case-inspector.ts"],"names":[],"mappings":"AAYA,wBAAgB,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,CAItE"}
|
|
@@ -15,15 +15,25 @@ 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
|
-
exports.getInspector =
|
|
36
|
+
exports.getInspector = getInspector;
|
|
27
37
|
const html_entities_1 = require("html-entities");
|
|
28
38
|
const _ = __importStar(require("lodash"));
|
|
29
39
|
function findingId(finding) {
|
|
@@ -34,5 +44,4 @@ function getInspector() {
|
|
|
34
44
|
findingId
|
|
35
45
|
};
|
|
36
46
|
}
|
|
37
|
-
exports.getInspector = getInspector;
|
|
38
47
|
//# sourceMappingURL=case-inspector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"case-inspector.js","sourceRoot":"","sources":["../../../src/asff-mapper/case-inspector.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"case-inspector.js","sourceRoot":"","sources":["../../../src/asff-mapper/case-inspector.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,oCAIC;AAhBD,iDAAqC;AACrC,0CAA4B;AAE5B,SAAS,SAAS,CAAC,OAAgC;IACjD,OAAO,IAAA,sBAAM,EACV,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAY,CAAC,MAAM,CAC9C,GAAG,EACF,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACzD,CACF,CAAC;AACJ,CAAC;AAED,SAAgB,YAAY;IAC1B,OAAO;QACL,SAAS;KACV,CAAC;AACJ,CAAC","sourcesContent":["import {encode} from 'html-entities';\nimport * as _ from 'lodash';\n\nfunction findingId(finding: Record<string, unknown>): string {\n return encode(\n (_.get(finding, 'GeneratorId') as string).concat(\n ' ',\n (_.get(finding, 'Id') as string).split('/').slice(-1)[0]\n )\n );\n}\n\nexport function getInspector(): Record<string, (...inputs: any) => any> {\n return {\n findingId\n };\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"case-previously-hdf.d.ts","sourceRoot":"","sources":["../../../src/asff-mapper/case-previously-hdf.ts"],"names":[],"mappings":"AA2XA,wBAAgB,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,CAW1E"}
|
|
@@ -15,15 +15,25 @@ 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
|
-
exports.getPreviouslyHDF =
|
|
36
|
+
exports.getPreviouslyHDF = getPreviouslyHDF;
|
|
27
37
|
const html_entities_1 = require("html-entities");
|
|
28
38
|
const inspecjs_1 = require("inspecjs");
|
|
29
39
|
const _ = __importStar(require("lodash"));
|
|
@@ -102,10 +112,12 @@ function filename(findingInfo) {
|
|
|
102
112
|
return `${_.get(objectifyTypesArray(finding), 'File.Input')}-${target}.json`;
|
|
103
113
|
}
|
|
104
114
|
function getCodeForProfileLayer(finding, profileName) {
|
|
105
|
-
var _a, _b, _c;
|
|
106
115
|
const profileLayerToCodeMapping = {};
|
|
107
|
-
|
|
108
|
-
.find((resource) => resource.Type === 'AwsIamRole')
|
|
116
|
+
_.get(finding, 'Resources')
|
|
117
|
+
.find((resource) => resource.Type === 'AwsIamRole')
|
|
118
|
+
?.Details?.AwsIamRole?.AssumeRolePolicyDocument.split('=========================================================\n# Profile name: ')
|
|
119
|
+
.filter((codeLayer) => codeLayer)
|
|
120
|
+
.forEach((codeLayer) => {
|
|
109
121
|
const [profileLevel, code] = codeLayer.split('\n=========================================================\n\n');
|
|
110
122
|
profileLayerToCodeMapping[profileLevel] = code
|
|
111
123
|
.split('Test Description:')[0]
|
|
@@ -119,7 +131,6 @@ function getCodeForProfileLayer(finding, profileName) {
|
|
|
119
131
|
}
|
|
120
132
|
}
|
|
121
133
|
function mapping(context) {
|
|
122
|
-
var _a;
|
|
123
134
|
const execution = _.get(context.supportingDocs.get(asff_mapper_1.SpecialCasing.PreviouslyHDF), 'execution');
|
|
124
135
|
const executionTypes = objectifyTypesArray(execution);
|
|
125
136
|
const profileNames = Object.keys(executionTypes || {}).filter((type) => !['MITRE', 'File', 'Execution', 'HDF2ASFF-converter'].includes(type));
|
|
@@ -127,11 +138,13 @@ function mapping(context) {
|
|
|
127
138
|
shortcircuit: true,
|
|
128
139
|
platform: {
|
|
129
140
|
..._.get(executionTypes, 'Execution.platform'),
|
|
130
|
-
target_id: (
|
|
141
|
+
target_id: (context.supportingDocs.get(asff_mapper_1.SpecialCasing.PreviouslyHDF)?.execution
|
|
142
|
+
.Id).split('/')[0]
|
|
131
143
|
},
|
|
132
144
|
version: _.get(executionTypes, 'Execution.version'),
|
|
133
145
|
statistics: _.get(executionTypes, 'Execution.statistics'),
|
|
134
146
|
profiles: _.map(profileNames, (profileName, index) => {
|
|
147
|
+
// order could be incorrect since we're only doing it via index instead of mapping the depends tree properly
|
|
135
148
|
return {
|
|
136
149
|
name: _.get(executionTypes, `${profileName}.name`),
|
|
137
150
|
...(0, global_1.conditionallyProvideAttribute)('version', _.get(executionTypes, `${profileName}.version`), _.has(executionTypes, `${profileName}.version`)),
|
|
@@ -173,7 +186,8 @@ function mapping(context) {
|
|
|
173
186
|
refs: _.get(findingTypes, 'Control.Refs', []),
|
|
174
187
|
source_location: _.get(findingTypes, 'Control.Source_Location', {}),
|
|
175
188
|
...(0, global_1.conditionallyProvideAttribute)('waiver_data', _.get(findingTypes, 'Control.Waiver_Data'), _.has(findingTypes, 'Control.Waiver_Data')),
|
|
176
|
-
code: getCodeForProfileLayer(finding, profileName),
|
|
189
|
+
code: getCodeForProfileLayer(finding, profileName), // empty string for now but gonna need to extract out of here per profile
|
|
190
|
+
// very brittle since depends on profile indexes instead of finding the baseline profile - need to do research, but could be as simple as finding the profile without any values in its depends array
|
|
177
191
|
results: (() => {
|
|
178
192
|
if (index !== profileNames.length - 1) {
|
|
179
193
|
return [];
|
|
@@ -222,5 +236,4 @@ function getPreviouslyHDF() {
|
|
|
222
236
|
mapping
|
|
223
237
|
};
|
|
224
238
|
}
|
|
225
|
-
exports.getPreviouslyHDF = getPreviouslyHDF;
|
|
226
239
|
//# sourceMappingURL=case-previously-hdf.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"case-previously-hdf.js","sourceRoot":"","sources":["../../../src/asff-mapper/case-previously-hdf.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAqC;AACrC,uCAAkC;AAClC,0CAA4B;AAE5B,4CAIyB;AACzB,+CAAqE;AAErE,SAAS,mBAAmB,CAAI,IAAO;IACrC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACrB,OAAO,IAAI,CAAC;KACb;IACD,OAAO,IAAI,CAAC,OAAO,CAAC,0CAAiC,EAAE,GAAG,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,mBAAmB,CAC1B,UAA8C;IAE9C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QAC9B,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,6BAA6B,CAAa,CAAC;KAC3E;IACD,MAAM,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,UAAU,EAAE,EAAE,CACxD,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAC7C,CAAC;IACF,MAAM,GAAG,GAAG,EAAE,CAAC;IACf,KAAK,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;QACrE,CAAC,CAAC,KAAK,CACL,GAAG,EACH,CAAC,GAA4B,EAAE;YAC7B,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACtD,IAAI,MAAM,GAAG,mBAAmB,CAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CACnD,CAAC;YACF,IAAI;gBACF,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;aAC7B;YAAC,MAAM,GAAE;YACV,OAAO,EAAC,CAAC,IAAI,CAAC,EAAE,EAAC,CAAC,SAAS,CAAC,EAAE,MAAM,EAAC,EAAC,CAAC;QACzC,CAAC,CAAC,EAAE,CACL,CAAC;KACH;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,yBAAyB,CAChC,cAAmE,EACnE,kBAAiC;IAEjC,IAAI,kBAAkB,EAAE;QACtB,MAAM,aAAa,GAAG,kBAAkB,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,CAAC,SAAS,CAChB,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC;YAC3B,CAAC,CAAC,cAAc;YAChB,CAAC,CAAE,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,UAAU,CAA+B,EACpE,CAAC,OAAO,EAAE,EAAE,CACT,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC;YACvD,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAY,CAAC,UAAU,CAAC,aAAa,CAAC,CAC7D,CAAC;KACH;IACD,OAAO,CAAC,CAAC,SAAS,CAChB,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC;QAC3B,CAAC,CAAC,cAAc;QAChB,CAAC,CAAE,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,UAAU,CAA+B,EACpE,CAAC,OAAO,EAAE,EAAE,CAAE,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CACtE,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,IAA6B;IAE7B,MAAM,KAAK,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,KAAK,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAA8B,EAAE,KAAK,CAAC,CAAC;IACvE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,cAAc,CACrB,KAGC;IAED,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;IAC3B,MAAM,KAAK,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACpC,SAAS,CAAC,GAAG,CAAC,2BAAa,CAAC,aAAa,EAAE;QACzC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,KAAK,GAAG,CAA4B;KACxE,CAAC,CAAC;IACH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAClB,QAA6D;IAE7D,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACjE,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAW,CAAC;IAC5C,OAAO,IAAA,sBAAM,EAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,WAAW;IAClB,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,IAAI,CAAC,KAAyB;IACrC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;AAC7B,CAAC;AAED,SAAS,UAAU,CAAC,KAAyB;IAC3C,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC;AACpC,CAAC;AAED,SAAS,QAAQ,CACf,WAAiE;IAEjE,MAAM,KAAK,GAAG,yBAAyB,CACrC,WAAW,CAAC,CAAC,CAAC,EACd,WAAW,CAAC,CAAC,CAAiB,CAC/B,CAAC;IAEF,MAAM,MAAM,GAAG,mBAAmB,CAC/B,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAC7D,CAAC;IACF,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAC/B,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC,IAAI,MAAM,OAAO,CAAC;AAC/E,CAAC;AAED,SAAS,sBAAsB,CAC7B,OAAgC,EAChC,WAAmB;;IAEnB,MAAM,yBAAyB,GAA2B,EAAE,CAAC;IAC7D,MAAA,MAAA,MACE,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAO3B;SACE,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,CAAC,0CACjD,OAAO,0CAAE,UAAU,0CAAE,wBAAwB,CAAC,KAAK,CACnD,6EAA6E,EAE9E,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,EAC/B,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;QACrB,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAC1C,iEAAiE,CAClE,CAAC;QACF,yBAAyB,CAAC,YAAY,CAAC,GAAG,IAAI;aAC3C,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;aAC7B,IAAI,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IACL,IAAI,WAAW,IAAI,yBAAyB,EAAE;QAC5C,OAAO,yBAAyB,CAAC,WAAW,CAAC,CAAC;KAC/C;SAAM;QACL,OAAO,EAAE,CAAC;KACX;AACH,CAAC;AAED,SAAS,OAAO,CACd,OAAmB;;IAEnB,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CACrB,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,2BAAa,CAAC,aAAa,CAAC,EACvD,WAAW,CACZ,CAAC;IACF,MAAM,cAAc,GAAG,mBAAmB,CACxC,SAAoC,CACrC,CAAC;IACF,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,MAAM,CAC3D,CAAC,IAAI,EAAE,EAAE,CACP,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,oBAAoB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CACvE,CAAC;IACF,OAAO;QACL,YAAY,EAAE,IAAI;QAClB,QAAQ,EAAE;YACR,GAAI,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,oBAAoB,CAAuB;YACrE,SAAS,EAAE,CACT,MAAA,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,2BAAa,CAAC,aAAa,CAAC,0CAAE,SAAS,CAC/D,EACJ,CAAA,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAChB;QACD,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,mBAAmB,CAAC;QACnD,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,sBAAsB,CAAC;QACzD,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,WAAmB,EAAE,KAAa,EAAE,EAAE;YAEnE,OAAO;gBACL,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,OAAO,CAAC;gBAClD,GAAG,IAAA,sCAA6B,EAC9B,SAAS,EACT,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,UAAU,CAAC,EAC/C,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,UAAU,CAAC,CAChD;gBACD,GAAG,IAAA,sCAA6B,EAC9B,OAAO,EACP,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,QAAQ,CAAC,EAC7C,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,QAAQ,CAAC,CAC9C;gBACD,GAAG,IAAA,sCAA6B,EAC9B,YAAY,EACZ,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,aAAa,CAAC,EAClD,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,aAAa,CAAC,CACnD;gBACD,GAAG,IAAA,sCAA6B,EAC9B,SAAS,EACT,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,UAAU,CAAC,EAC/C,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,UAAU,CAAC,CAChD;gBACD,GAAG,IAAA,sCAA6B,EAC9B,SAAS,EACT,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,UAAU,CAAC,EAC/C,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,UAAU,CAAC,CAChD;gBACD,GAAG,IAAA,sCAA6B,EAC9B,WAAW,EACX,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,YAAY,CAAC,EACjD,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,YAAY,CAAC,CAClD;gBACD,GAAG,IAAA,sCAA6B,EAC9B,iBAAiB,EACjB,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,kBAAkB,CAAC,EACvD,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,kBAAkB,CAAC,CACxD;gBACD,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,WAAW,EAAE,EAAE,CAAC;gBAC9D,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,aAAa,EAAE,EAAE,CAAC;gBAClE,GAAG,IAAA,sCAA6B,EAC9B,SAAS,EACT,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,UAAU,CAAC,EAC/C,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,UAAU,CAAC,CAChD;gBACD,MAAM,EAAE,EAAE;gBACV,GAAG,IAAA,sCAA6B,EAC9B,QAAQ,EACR,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,SAAS,CAAC,EAC9C,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,SAAS,CAAC,CAC/C;gBACD,GAAG,IAAA,sCAA6B,EAC9B,aAAa,EACb,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,cAAc,CAAC,EACnD,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,cAAc,CAAC,CACpD;gBACD,GAAG,IAAA,sCAA6B,EAC9B,gBAAgB,EAChB,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,iBAAiB,CAAC,EACtD,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,iBAAiB,CAAC,CACvD;gBACD,GAAG,IAAA,sCAA6B,EAC9B,gBAAgB,EAChB,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,iBAAiB,CAAC,EACtD,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,iBAAiB,CAAC,CACvD;gBACD,GAAG,IAAA,sCAA6B,EAC9B,cAAc,EACd,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,eAAe,CAAC,EACpD,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,eAAe,CAAC,CACrD;gBACD,GAAG,IAAA,sCAA6B,EAC9B,gBAAgB,EAChB,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,iBAAiB,CAAC,EACtD,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,iBAAiB,CAAC,CACvD;gBACD,QAAQ,EAAE,IAAA,yBAAW,EACnB,OAAO,EACP,CAAC,GAAuB,EAAE;oBACxB,OAAO,CAAC,CAAC,GAAG,CACV,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAA8B,EAC5D,CAAC,OAAgC,EAAE,EAAE;wBACnC,MAAM,YAAY,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;wBAClD,OAAO;4BACL,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC;4BACrC,GAAG,IAAA,sCAA6B,EAC9B,OAAO,EACP,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,eAAe,CAAC,EACpC,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,eAAe,CAAC,CACrC;4BACD,GAAG,IAAA,sCAA6B,EAC9B,MAAM,EACN,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,cAAc,CAAC,EACnC,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,cAAc,CAAC,CACpC;4BACD,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,gBAAgB,CAAC;4BAC7C,IAAI,EAAE;gCACJ,GAAG,CAAC,CAAC,IAAI,CACP,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAA8B,EACxD,CAAC,MAAM,CAAC,CACT;gCACD,IAAI,EAAE,CAAC,GAAa,EAAE;oCACpB,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,CAEpC,CAAC;oCACb,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;wCACnD,OAAO,+CAAsC,CAAC;qCAC/C;oCACD,OAAO,QAAQ,CAAC;gCAClB,CAAC,CAAC,EAAE;6BACL;4BACD,YAAY,EAAE,CAAC,CAAC,GAAG,CACjB,MAAM,CAAC,OAAO,CACX,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,cAAc,CAGjC,IAAI,EAAE,CACT,EACD,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAC,CAAC,CAC9C;4BACD,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,EAAE,CAAC;4BAC7C,eAAe,EAAE,CAAC,CAAC,GAAG,CACpB,YAAY,EACZ,yBAAyB,EACzB,EAAE,CACH;4BACD,GAAG,IAAA,sCAA6B,EAC9B,aAAa,EACb,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,qBAAqB,CAAC,EAC1C,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAC3C;4BACD,IAAI,EAAE,sBAAsB,CAAC,OAAO,EAAE,WAAW,CAAC;4BAElD,OAAO,EAAE,CAAC,GAAG,EAAE;gCACb,IAAI,KAAK,KAAK,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;oCACrC,OAAO,EAAE,CAAC;iCACX;gCACD,MAAM,GAAG,GAAG;oCACV;wCACE,SAAS,EAAE,CAAC,CAAC,GAAG,CACd,YAAY,EACZ,mBAAmB,CACV;wCACX,UAAU,EAAE,CAAC,CAAC,GAAG,CACf,YAAY,EACZ,oBAAoB,CACX;wCACX,GAAG,CAAC,CAAC,IAAI,CACP,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAG5B,EACD,CAAC,WAAW,EAAE,YAAY,CAAC,CAC5B;qCACwB;iCAC5B,CAAC;gCAEF,OAAO,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,4BAA4B,CAAC;oCACtD,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;wCACT;4CACE,SAAS,EAAE,EAAE;4CACb,UAAU,EAAE,EAAE;4CACd,MAAM,EAAE,mBAAQ,CAAC,mBAAmB,CAAC,OAAO;4CAC5C,YAAY,EACV,wEAAwE;yCAC3E;qCACF,CAAC;oCACJ,CAAC,CAAC,GAAG,CAAC;4BACV,CAAC,CAAC,EAAE;yBACe,CAAC;oBACxB,CAAC,CACF,CAAC;gBACJ,CAAC,CAAC,EAAE,EACJ,OAAO,CAAC,IAAI,CACb;gBACD,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,WAAW,SAAS,CAAC;aACnC,CAAC;QACxB,CAAC,CAAC;QACF,GAAG,IAAA,sCAA6B,EAC9B,aAAa,EACb,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,4BAA4B,CAAC;YACjD,CAAC,CAAC;gBACE,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,uBAAuB,CAAC;gBAC9C,wEAAwE;aACzE;YACH,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,uBAAuB,CAAC,EAClD,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAC/C;KACkD,CAAC;AACxD,CAAC;AAED,SAAgB,gBAAgB;IAC9B,OAAO;QACL,iBAAiB;QACjB,cAAc;QACd,WAAW;QACX,WAAW;QACX,IAAI;QACJ,UAAU;QACV,QAAQ;QACR,OAAO;KACR,CAAC;AACJ,CAAC;AAXD,4CAWC"}
|
|
1
|
+
{"version":3,"file":"case-previously-hdf.js","sourceRoot":"","sources":["../../../src/asff-mapper/case-previously-hdf.ts"],"names":[],"mappings":"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","sourcesContent":["import {encode} from 'html-entities';\nimport {ExecJSON} from 'inspecjs';\nimport * as _ from 'lodash';\nimport {ILookupPath, MappedTransform} from '../base-converter';\nimport {\n conditionallyProvideAttribute,\n DEFAULT_STATIC_CODE_ANALYSIS_NIST_TAGS,\n FROM_ASFF_TYPES_SLASH_REPLACEMENT\n} from '../utils/global';\nimport {ASFFMapper, consolidate, SpecialCasing} from './asff-mapper';\n\nfunction replaceTypesSlashes<T>(type: T): T | string {\n if (!_.isString(type)) {\n return type;\n }\n return type.replace(FROM_ASFF_TYPES_SLASH_REPLACEMENT, '/');\n}\n\nfunction objectifyTypesArray(\n typesArray: string[] | Record<string, unknown>\n): Record<string, unknown> {\n if (!Array.isArray(typesArray)) {\n typesArray = _.get(typesArray, 'FindingProviderFields.Types') as string[];\n }\n const groupedTypes = _.groupBy(typesArray, (typeString) =>\n typeString.split('/').slice(0, -1).join('/')\n );\n const ret = {};\n for (const [typeAndAttribute, values] of Object.entries(groupedTypes)) {\n _.merge(\n ret,\n ((): Record<string, unknown> => {\n const [type, attribute] = typeAndAttribute.split('/');\n let parsed = replaceTypesSlashes(\n values.map((v) => v.split('/').slice(-1)).join('')\n );\n try {\n parsed = JSON.parse(parsed);\n } catch {}\n return {[type]: {[attribute]: parsed}};\n })()\n );\n }\n return ret;\n}\n\nfunction findExecutionFindingIndex(\n asffOrFindings: Record<string, unknown> | Record<string, unknown>[],\n asffFindingToMatch?: {Id: string}\n): number {\n if (asffFindingToMatch) {\n const targetToMatch = asffFindingToMatch.Id.split('/')[0];\n return _.findIndex(\n Array.isArray(asffOrFindings)\n ? asffOrFindings\n : (_.get(asffOrFindings, 'Findings') as Record<string, unknown>[]),\n (finding) =>\n (_.get(finding, 'Id') as string).split('/').length === 2 &&\n (_.get(finding, 'Id') as string).startsWith(targetToMatch)\n );\n }\n return _.findIndex(\n Array.isArray(asffOrFindings)\n ? asffOrFindings\n : (_.get(asffOrFindings, 'Findings') as Record<string, unknown>[]),\n (finding) => (_.get(finding, 'Id') as string).split('/').length === 2\n );\n}\n\nfunction preprocessingASFF(\n asff: Record<string, unknown>\n): Record<string, unknown> {\n const clone = _.cloneDeep(asff);\n const index = findExecutionFindingIndex(clone);\n _.pullAt(_.get(clone, 'Findings') as Record<string, unknown>[], index);\n return clone;\n}\n\nfunction supportingDocs(\n input: [\n Record<string, unknown>,\n Map<SpecialCasing, Record<string, Record<string, unknown>>>\n ]\n): Map<SpecialCasing, Record<string, Record<string, unknown>>> {\n const [asff, docs] = input;\n const index = findExecutionFindingIndex(asff);\n const docsClone = _.cloneDeep(docs);\n docsClone.set(SpecialCasing.PreviouslyHDF, {\n execution: _.get(asff, `Findings[${index}]`) as Record<string, unknown>\n });\n return docsClone;\n}\n\nfunction productName(\n findings: Record<string, unknown> | Record<string, unknown>[]\n): string {\n const finding = Array.isArray(findings) ? findings[0] : findings;\n const name = _.get(finding, 'Id') as string;\n return encode(name.split('/').slice(0, 2).join(' - '));\n}\n\nfunction titlePrefix(): string {\n return '';\n}\n\nfunction code(group: ExecJSON.Control[]): string {\n return group[0].code || '';\n}\n\nfunction waiverData(group: ExecJSON.Control[]): ExecJSON.ControlWaiverData {\n return group[0].waiver_data || {};\n}\n\nfunction filename(\n findingInfo: [Record<string, unknown>, Record<string, unknown>[]]\n): string {\n const index = findExecutionFindingIndex(\n findingInfo[1],\n findingInfo[0] as {Id: string}\n );\n\n const target = replaceTypesSlashes(\n (_.get(findingInfo[1][index], 'Id') as string).split('/')[0]\n );\n const finding = findingInfo[0];\n return `${_.get(objectifyTypesArray(finding), 'File.Input')}-${target}.json`;\n}\n\nfunction getCodeForProfileLayer(\n finding: Record<string, unknown>,\n profileName: string\n) {\n const profileLayerToCodeMapping: Record<string, string> = {};\n (\n _.get(finding, 'Resources') as {\n Type: string;\n Id: string;\n Details?: {\n AwsIamRole?: {AssumeRolePolicyDocument: string};\n };\n }[]\n )\n .find((resource) => resource.Type === 'AwsIamRole')\n ?.Details?.AwsIamRole?.AssumeRolePolicyDocument.split(\n '=========================================================\\n# Profile name: '\n )\n .filter((codeLayer) => codeLayer)\n .forEach((codeLayer) => {\n const [profileLevel, code] = codeLayer.split(\n '\\n=========================================================\\n\\n'\n );\n profileLayerToCodeMapping[profileLevel] = code\n .split('Test Description:')[0]\n .trim();\n });\n if (profileName in profileLayerToCodeMapping) {\n return profileLayerToCodeMapping[profileName];\n } else {\n return '';\n }\n}\n\nfunction mapping(\n context: ASFFMapper\n): MappedTransform<ExecJSON.Execution, ILookupPath> {\n const execution = _.get(\n context.supportingDocs.get(SpecialCasing.PreviouslyHDF),\n 'execution'\n );\n const executionTypes = objectifyTypesArray(\n execution as Record<string, unknown>\n );\n const profileNames = Object.keys(executionTypes || {}).filter(\n (type) =>\n !['MITRE', 'File', 'Execution', 'HDF2ASFF-converter'].includes(type)\n );\n return {\n shortcircuit: true,\n platform: {\n ...(_.get(executionTypes, 'Execution.platform') as ExecJSON.Platform),\n target_id: (\n context.supportingDocs.get(SpecialCasing.PreviouslyHDF)?.execution\n .Id as string\n ).split('/')[0]\n },\n version: _.get(executionTypes, 'Execution.version'),\n statistics: _.get(executionTypes, 'Execution.statistics'),\n profiles: _.map(profileNames, (profileName: string, index: number) => {\n // order could be incorrect since we're only doing it via index instead of mapping the depends tree properly\n return {\n name: _.get(executionTypes, `${profileName}.name`),\n ...conditionallyProvideAttribute(\n 'version',\n _.get(executionTypes, `${profileName}.version`),\n _.has(executionTypes, `${profileName}.version`)\n ),\n ...conditionallyProvideAttribute(\n 'title',\n _.get(executionTypes, `${profileName}.title`),\n _.has(executionTypes, `${profileName}.title`)\n ),\n ...conditionallyProvideAttribute(\n 'maintainer',\n _.get(executionTypes, `${profileName}.maintainer`),\n _.has(executionTypes, `${profileName}.maintainer`)\n ),\n ...conditionallyProvideAttribute(\n 'summary',\n _.get(executionTypes, `${profileName}.summary`),\n _.has(executionTypes, `${profileName}.summary`)\n ),\n ...conditionallyProvideAttribute(\n 'license',\n _.get(executionTypes, `${profileName}.license`),\n _.has(executionTypes, `${profileName}.license`)\n ),\n ...conditionallyProvideAttribute(\n 'copyright',\n _.get(executionTypes, `${profileName}.copyright`),\n _.has(executionTypes, `${profileName}.copyright`)\n ),\n ...conditionallyProvideAttribute(\n 'copyright_email',\n _.get(executionTypes, `${profileName}.copyright_email`),\n _.has(executionTypes, `${profileName}.copyright_email`)\n ),\n supports: _.get(executionTypes, `${profileName}.supports`, []),\n attributes: _.get(executionTypes, `${profileName}.attributes`, []),\n ...conditionallyProvideAttribute(\n 'depends',\n _.get(executionTypes, `${profileName}.depends`),\n _.has(executionTypes, `${profileName}.depends`)\n ),\n groups: [],\n ...conditionallyProvideAttribute(\n 'status',\n _.get(executionTypes, `${profileName}.status`),\n _.has(executionTypes, `${profileName}.status`)\n ),\n ...conditionallyProvideAttribute(\n 'description',\n _.get(executionTypes, `${profileName}.description`),\n _.has(executionTypes, `${profileName}.description`)\n ),\n ...conditionallyProvideAttribute(\n 'inspec_version',\n _.get(executionTypes, `${profileName}.inspec_version`),\n _.has(executionTypes, `${profileName}.inspec_version`)\n ),\n ...conditionallyProvideAttribute(\n 'parent_profile',\n _.get(executionTypes, `${profileName}.parent_profile`),\n _.has(executionTypes, `${profileName}.parent_profile`)\n ),\n ...conditionallyProvideAttribute(\n 'skip_message',\n _.get(executionTypes, `${profileName}.skip_message`),\n _.has(executionTypes, `${profileName}.skip_message`)\n ),\n ...conditionallyProvideAttribute(\n 'status_message',\n _.get(executionTypes, `${profileName}.status_message`),\n _.has(executionTypes, `${profileName}.status_message`)\n ),\n controls: consolidate(\n context,\n ((): ExecJSON.Control[] => {\n return _.map(\n _.get(context.data, 'Findings') as Record<string, unknown>[],\n (finding: Record<string, unknown>) => {\n const findingTypes = objectifyTypesArray(finding);\n return {\n id: _.get(findingTypes, 'Control.ID'),\n ...conditionallyProvideAttribute(\n 'title',\n _.get(findingTypes, 'Control.Title'),\n _.has(findingTypes, 'Control.Title')\n ),\n ...conditionallyProvideAttribute(\n 'desc',\n _.get(findingTypes, 'Control.Desc'),\n _.has(findingTypes, 'Control.Desc')\n ),\n impact: _.get(findingTypes, 'Control.Impact'),\n tags: {\n ..._.omit(\n _.get(findingTypes, 'Tags') as object | null | undefined,\n ['nist']\n ),\n nist: ((): string[] => {\n const nisttags = _.get(findingTypes, 'Tags.nist') as\n | undefined\n | string[];\n if (nisttags === undefined || nisttags.length === 0) {\n return DEFAULT_STATIC_CODE_ANALYSIS_NIST_TAGS;\n }\n return nisttags;\n })()\n },\n descriptions: _.map(\n Object.entries(\n (_.get(findingTypes, 'Descriptions') as Record<\n string,\n string\n >) || {}\n ),\n ([key, value]) => ({label: key, data: value})\n ),\n refs: _.get(findingTypes, 'Control.Refs', []),\n source_location: _.get(\n findingTypes,\n 'Control.Source_Location',\n {}\n ),\n ...conditionallyProvideAttribute(\n 'waiver_data',\n _.get(findingTypes, 'Control.Waiver_Data'),\n _.has(findingTypes, 'Control.Waiver_Data')\n ),\n code: getCodeForProfileLayer(finding, profileName), // empty string for now but gonna need to extract out of here per profile\n // very brittle since depends on profile indexes instead of finding the baseline profile - need to do research, but could be as simple as finding the profile without any values in its depends array\n results: (() => {\n if (index !== profileNames.length - 1) {\n return [];\n }\n const ret = [\n {\n code_desc: _.get(\n findingTypes,\n 'Segment.code_desc'\n ) as string,\n start_time: _.get(\n findingTypes,\n 'Segment.start_time'\n ) as string,\n ..._.omit(\n _.get(findingTypes, 'Segment') as Record<\n string,\n unknown\n >,\n ['code_desc', 'start_time']\n )\n } as ExecJSON.ControlResult\n ];\n\n return _.has(findingTypes, 'HDF2ASFF-converter.warning')\n ? ret.concat([\n {\n code_desc: '',\n start_time: '',\n status: ExecJSON.ControlResultStatus.Skipped,\n skip_message:\n 'Warning: Entry was truncated when converted to ASFF (AWS Security Hub)'\n }\n ])\n : ret;\n })()\n } as ExecJSON.Control;\n }\n );\n })(),\n context.data\n ),\n sha256: _.get(executionTypes, `${profileName}.sha256`)\n } as ExecJSON.Profile;\n }),\n ...conditionallyProvideAttribute(\n 'passthrough',\n _.has(executionTypes, 'HDF2ASFF-converter.warning')\n ? [\n _.get(executionTypes, 'Execution.passthrough'),\n 'Warning: Entry was truncated when converted to ASFF (AWS Security Hub)'\n ]\n : _.get(executionTypes, 'Execution.passthrough'),\n _.has(executionTypes, 'Execution.passthrough')\n )\n } as MappedTransform<ExecJSON.Execution, ILookupPath>;\n}\n\nexport function getPreviouslyHDF(): Record<string, (...inputs: any) => any> {\n return {\n preprocessingASFF,\n supportingDocs,\n productName,\n titlePrefix,\n code,\n waiverData,\n filename,\n mapping\n };\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"case-prowler.d.ts","sourceRoot":"","sources":["../../../src/asff-mapper/case-prowler.ts"],"names":[],"mappings":"AAiCA,wBAAgB,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,CASpE"}
|