@mitre/hdf-converters 3.4.4 → 3.5.1
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 +12 -0
- package/dist/detect.d.ts.map +1 -1
- package/dist/detect.js +1 -1
- package/dist/index.d.ts +57 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4888 -921
- package/dist/index.js.map +1 -1
- package/dist/{register-all-WRR-vAZf.js → register-all-As5mLT-V.js} +105 -2
- package/dist/register-all-As5mLT-V.js.map +1 -0
- package/package.json +7 -7
- package/dist/register-all-WRR-vAZf.js.map +0 -1
package/README.md
CHANGED
|
@@ -55,6 +55,7 @@ All converter output conforms to the [HDF JSON Schema](https://mitre.github.io/h
|
|
|
55
55
|
| ScoutSuite | `convertScoutsuiteToHdf` | JSON |
|
|
56
56
|
| Snyk | `convertSnykToHdf` | JSON |
|
|
57
57
|
| SonarQube | `convertSonarqubeToHdf` | JSON |
|
|
58
|
+
| SPDX VEX (SPDX 3.0 security profile → HDF Amendments) | `convertSpdxVexToHdf` | JSON |
|
|
58
59
|
| Splunk | `convertSplunkToHdf` | JSON |
|
|
59
60
|
| TruffleHog | `convertTrufflehogToHdf` | JSON |
|
|
60
61
|
| Twistlock | `convertTwistlockToHdf` | JSON |
|
|
@@ -87,6 +88,17 @@ All converter output conforms to the [HDF JSON Schema](https://mitre.github.io/h
|
|
|
87
88
|
| Legacy HDF (InSpec exec-json format) to current HDF | `convertV1ToV2` |
|
|
88
89
|
| Detect legacy HDF format | `isHDFV1` |
|
|
89
90
|
|
|
91
|
+
### Enrichment
|
|
92
|
+
|
|
93
|
+
Enrichment overlays external context onto an existing HDF results document as inert `externalReferences[]` (matched to findings by CVE, else the results root). It is informational — it never changes a finding's status or impact — and is distinct from a converter (it takes a results doc *plus* a source, and returns the enriched results doc).
|
|
94
|
+
|
|
95
|
+
| Source | Function | Format |
|
|
96
|
+
|---|---|---|
|
|
97
|
+
| STIX 2.1 bundle → results `externalReferences[]` | `enrichStix` | JSON |
|
|
98
|
+
| Detect / parse a STIX 2.1 bundle | `detectStixBundle` / `parseStixBundle` | JSON |
|
|
99
|
+
|
|
100
|
+
CLI: `hdf enrich <results> <source>` (see the [hdf-cli README](../hdf-cli/README.md#enrich)).
|
|
101
|
+
|
|
90
102
|
## Installation
|
|
91
103
|
|
|
92
104
|
```bash
|
package/dist/detect.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect.d.ts","names":[],"sources":["../shared/typescript/fingerprint.ts","../shared/typescript/register-all.ts"],"mappings":";;UASiB;EACf,aAAa;EACb;;EAEA;;iBAMc,gBAAgB,gBAAgB;iBAgBhC,mBAAmB,gBAAgB;iBAgDnC,aAAa,gBAAgB;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"detect.d.ts","names":[],"sources":["../shared/typescript/fingerprint.ts","../shared/typescript/register-all.ts"],"mappings":";;UASiB;EACf,aAAa;EACb;;EAEA;;iBAMc,gBAAgB,gBAAgB;iBAgBhC,mBAAmB,gBAAgB;iBAgDnC,aAAa,gBAAgB;;;;;;;;;;;;;iBC8C7B"}
|
package/dist/detect.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { getFingerprint, getFingerprints, getIngestFingerprints, registerFingerprint } from "./registry.js";
|
|
2
|
-
import {
|
|
2
|
+
import { a as detectFamily, i as detectConverterAll, r as detectConverter, t as registerAllFingerprints } from "./register-all-As5mLT-V.js";
|
|
3
3
|
export { detectConverter, detectConverterAll, detectFamily, getFingerprint, getFingerprints, getIngestFingerprints, registerAllFingerprints, registerFingerprint };
|
package/dist/index.d.ts
CHANGED
|
@@ -210,6 +210,14 @@ interface V2Baseline {
|
|
|
210
210
|
algorithm?: string;
|
|
211
211
|
value?: string;
|
|
212
212
|
};
|
|
213
|
+
originalChecksum?: {
|
|
214
|
+
algorithm?: string;
|
|
215
|
+
value?: string;
|
|
216
|
+
};
|
|
217
|
+
integrity?: {
|
|
218
|
+
algorithm?: string;
|
|
219
|
+
checksum?: string;
|
|
220
|
+
};
|
|
213
221
|
depends?: V2Dependency[];
|
|
214
222
|
parentBaseline?: string;
|
|
215
223
|
status?: string;
|
|
@@ -234,7 +242,7 @@ interface HDFV2Results {
|
|
|
234
242
|
remediation?: unknown;
|
|
235
243
|
extensions?: Record<string, unknown>;
|
|
236
244
|
}
|
|
237
|
-
declare function convertV1ToV2(v1Data: HDFV1Results): HDFV2Results;
|
|
245
|
+
declare function convertV1ToV2(v1Data: HDFV1Results, converterVersion?: string): HDFV2Results;
|
|
238
246
|
/**
|
|
239
247
|
* Validate that data appears to be HDF v1.0 format.
|
|
240
248
|
*
|
|
@@ -432,9 +440,10 @@ declare function convertSplunkToHdf(input: string, converterVersion?: string): P
|
|
|
432
440
|
//#endregion
|
|
433
441
|
//#region converters/hdf-to-xml/typescript/converter.d.ts
|
|
434
442
|
/**
|
|
435
|
-
* Convert HDF JSON to XML
|
|
443
|
+
* Convert HDF Results JSON to XML.
|
|
444
|
+
*
|
|
436
445
|
* @param input HDF JSON string
|
|
437
|
-
* @returns XML string
|
|
446
|
+
* @returns XML string
|
|
438
447
|
*/
|
|
439
448
|
declare function convertHdfToXml(input: string): string;
|
|
440
449
|
//#endregion
|
|
@@ -694,6 +703,9 @@ declare function convertCsafVexToHdf(input: string, converterVersion?: string):
|
|
|
694
703
|
//#region converters/cyclonedx-vex-to-hdf/typescript/converter.d.ts
|
|
695
704
|
declare function convertCyclonedxVexToHdf(input: string, converterVersion?: string): Promise<HDFAmendments>;
|
|
696
705
|
//#endregion
|
|
706
|
+
//#region converters/spdx-vex-to-hdf/typescript/converter.d.ts
|
|
707
|
+
declare function convertSpdxVexToHdf(input: string, converterVersion?: string): Promise<HDFAmendments>;
|
|
708
|
+
//#endregion
|
|
697
709
|
//#region converters/hdf-to-csaf-vex/typescript/converter.d.ts
|
|
698
710
|
declare function convertHdfToCsafVex(input: string, converterVersion: string): string;
|
|
699
711
|
//#endregion
|
|
@@ -825,5 +837,46 @@ declare function convertOscalPoamToHdf(input: string): Promise<string>;
|
|
|
825
837
|
*/
|
|
826
838
|
declare function convertOscalSarToHdf(input: string): Promise<string>;
|
|
827
839
|
//#endregion
|
|
828
|
-
|
|
840
|
+
//#region shared/typescript/enrichStix.d.ts
|
|
841
|
+
/** Options for the enrich pass. The empty object is the informational-only pass. */
|
|
842
|
+
interface EnrichOptions {
|
|
843
|
+
/** Enable the opt-in E:H CVSS Threat recompute (Phase 5). Off by default. */
|
|
844
|
+
recomputeCvss?: boolean;
|
|
845
|
+
/** appliedAt for authored overrides; expiresAt = asOf + review horizon. Default: now. */
|
|
846
|
+
asOf?: Date;
|
|
847
|
+
/** Review horizon in ms before an authored riskAdjustment expires. Default: 90 days. */
|
|
848
|
+
reviewHorizonMs?: number;
|
|
849
|
+
/** Cap each input's byte size. Default: the shared DEFAULT_MAX_INPUT_SIZE.
|
|
850
|
+
* Callers with a user-configurable limit pass it through. */
|
|
851
|
+
maxSize?: number;
|
|
852
|
+
}
|
|
853
|
+
/**
|
|
854
|
+
* Overlay a STIX 2.1 bundle onto an existing HDF results document, attaching
|
|
855
|
+
* each STIX object as an inert externalReferences[] entry: a CVE-bearing object
|
|
856
|
+
* attaches to the finding whose requirementId is that CVE (fanning out to every
|
|
857
|
+
* match), and everything else — non-CVE objects and CVEs with no matching
|
|
858
|
+
* finding — attaches to the results root. Each entry carries the raw STIX object
|
|
859
|
+
* losslessly in `document`.
|
|
860
|
+
*
|
|
861
|
+
* Informational only: authors no overrides and fabricates no status/impact (the
|
|
862
|
+
* E:A recompute is a separate, opt-in step). The results document is preserved
|
|
863
|
+
* verbatim except for the appended references — manipulated structurally so
|
|
864
|
+
* every pre-existing field, including timestamp strings, round-trips unchanged.
|
|
865
|
+
* TypeScript peer of shared/go/enrich_stix.go (kept at parity).
|
|
866
|
+
*/
|
|
867
|
+
declare function enrichStix(resultsInput: string, bundleInput: string, opts?: EnrichOptions): string;
|
|
868
|
+
//#endregion
|
|
869
|
+
//#region shared/typescript/stix.d.ts
|
|
870
|
+
type StixObject = Record<string, unknown>;
|
|
871
|
+
interface StixBundle {
|
|
872
|
+
type: string;
|
|
873
|
+
id?: string;
|
|
874
|
+
objects: StixObject[];
|
|
875
|
+
}
|
|
876
|
+
/** Parse and validate a STIX 2.1 bundle. Objects are kept raw for lossless carriage. */
|
|
877
|
+
declare function parseStixBundle(input: string): StixBundle;
|
|
878
|
+
/** Report whether the input looks like a STIX 2.1 bundle, without throwing. */
|
|
879
|
+
declare function detectStixBundle(input: string): boolean;
|
|
880
|
+
//#endregion
|
|
881
|
+
export { type EnrichOptions, type HDFV1Results, type HDFV2Results, convertAsffToHdf, convertAwsConfigToHdf, convertBurpsuiteToHdf, convertCheckovToHdf, convertCklToHdf, convertCklbToHdf, convertConveyorToHdf, convertCsafVexToHdf, convertCyclonedxToHdf, convertCyclonedxVexToHdf, convertDbprotectToHdf, convertDefectDojoToHdf, convertDeptrackToHdf, convertFortifyToHdf, convertGitlabToHdf, convertGosecToHdf, convertGrypeToHdf, convertHdfToAsff, convertHdfToCkl, convertHdfToCklb, convertHdfToCsafVex, convertHdfToCsv, convertHdfToCyclonedxVex, convertHdfToEcs, convertHdfToOcsf, convertHdfToOpenVex, convertHdfToOscalPoam, convertHdfToOscalSar, convertHdfToSplunk, convertHdfToXccdf, convertHdfToXml, convertHipcheckToHdf, convertIonchannelToHdf, convertJfrogXrayToHdf, convertJunitToHdf, convertMsftDefenderCloudToHdf, convertMsftDefenderDevopsToHdf, convertMsftDefenderEndpointToHdf, convertMsftSecureScoreToHdf, convertNessusToHdf, convertNetsparkerToHdf, convertNeuvectorToHdf, convertNiktoToHdf, convertOpenVexToHdf, convertOscalCatalogToHdf, convertOscalComponentToHdf, convertOscalPoamToHdf, convertOscalProfileToHdf, convertOscalSapToHdf, convertOscalSarToHdf, convertOscalSspToHdf, convertPrismaToHdf, convertSarifToHdf, convertScoutsuiteToHdf, convertSnykToHdf, convertSonarqubeToHdf, convertSpdxVexToHdf, convertSplunkToHdf, convertTrufflehogToHdf, convertTwistlockToHdf, convertV1ToV2, convertVeracodeToHdf, convertXccdfResultsToHdf, convertZapToHdf, detectOscalDocumentType, detectStixBundle, enrichStix, isHDFV1, parseStixBundle };
|
|
829
882
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../converters/legacyhdf-to-hdf/typescript/converter.ts","../converters/asff-to-hdf/typescript/converter.ts","../converters/sarif-to-hdf/typescript/converter.ts","../converters/junit-to-hdf/typescript/converter.ts","../converters/xccdf-results-to-hdf/typescript/converter.ts","../converters/ckl-to-hdf/typescript/converter.ts","../converters/cklb-to-hdf/typescript/converter.ts","../converters/hdf-to-ckl/typescript/converter.ts","../converters/hdf-to-cklb/typescript/converter.ts","../converters/snyk-to-hdf/typescript/converter.ts","../converters/grype-to-hdf/typescript/converter.ts","../converters/defectdojo-to-hdf/typescript/converter.ts","../converters/nessus-to-hdf/typescript/converter.ts","../converters/sonarqube-to-hdf/typescript/converter.ts","../converters/aws-config-to-hdf/typescript/converter.ts","../converters/checkov-to-hdf/typescript/converter.ts","../converters/gosec-to-hdf/typescript/converter.ts","../converters/nikto-to-hdf/typescript/converter.ts","../converters/zap-to-hdf/typescript/converter.ts","../converters/cyclonedx-to-hdf/typescript/converter.ts","../converters/hdf-to-csv/typescript/converter.ts","../converters/hdf-to-ecs/typescript/converter.ts","../converters/hdf-to-splunk/typescript/converter.ts","../converters/hdf-to-ocsf/typescript/converter.ts","../converters/hdf-to-asff/typescript/converter.ts","../converters/splunk-to-hdf/typescript/converter.ts","../converters/hdf-to-xml/typescript/converter.ts","../converters/gitlab-to-hdf/typescript/converter.ts","../converters/trufflehog-to-hdf/typescript/converter.ts","../converters/hipcheck-to-hdf/typescript/converter.ts","../converters/burpsuite-to-hdf/typescript/converter.ts","../converters/dbprotect-to-hdf/typescript/converter.ts","../converters/twistlock-to-hdf/typescript/converter.ts","../converters/deptrack-to-hdf/typescript/converter.ts","../converters/jfrog-xray-to-hdf/typescript/converter.ts","../converters/neuvector-to-hdf/typescript/converter.ts","../converters/fortify-to-hdf/typescript/converter.ts","../converters/prisma-to-hdf/typescript/converter.ts","../converters/netsparker-to-hdf/typescript/converter.ts","../converters/scoutsuite-to-hdf/typescript/converter.ts","../converters/conveyor-to-hdf/typescript/converter.ts","../converters/veracode-to-hdf/typescript/converter.ts","../converters/msft-secure-score-to-hdf/typescript/converter.ts","../converters/msft-defender-devops-to-hdf/typescript/converter.ts","../converters/msft-defender-cloud-to-hdf/typescript/converter.ts","../converters/msft-defender-endpoint-to-hdf/typescript/converter.ts","../converters/hdf-to-xccdf/typescript/converter.ts","../converters/hdf-to-oscal-sar/typescript/converter.ts","../converters/hdf-to-oscal-poam/typescript/converter.ts","../converters/ionchannel-to-hdf/typescript/converter.ts","../converters/openvex-to-hdf/typescript/converter.ts","../converters/csaf-vex-to-hdf/typescript/converter.ts","../converters/cyclonedx-vex-to-hdf/typescript/converter.ts","../converters/hdf-to-csaf-vex/typescript/converter.ts","../converters/hdf-to-openvex/typescript/converter.ts","../converters/hdf-to-cyclonedx-vex/typescript/converter.ts","../converters/oscal-to-hdf/typescript/detect.ts","../converters/oscal-to-hdf/typescript/converter-catalog.ts","../converters/oscal-to-hdf/typescript/converter-profile.ts","../converters/oscal-to-hdf/typescript/converter-component.ts","../converters/oscal-to-hdf/typescript/converter-ssp.ts","../converters/oscal-to-hdf/typescript/converter-sap.ts","../converters/oscal-to-hdf/typescript/converter-poam.ts","../converters/oscal-to-hdf/typescript/converter-sar.ts"],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../converters/legacyhdf-to-hdf/typescript/converter.ts","../converters/asff-to-hdf/typescript/converter.ts","../converters/sarif-to-hdf/typescript/converter.ts","../converters/junit-to-hdf/typescript/converter.ts","../converters/xccdf-results-to-hdf/typescript/converter.ts","../converters/ckl-to-hdf/typescript/converter.ts","../converters/cklb-to-hdf/typescript/converter.ts","../converters/hdf-to-ckl/typescript/converter.ts","../converters/hdf-to-cklb/typescript/converter.ts","../converters/snyk-to-hdf/typescript/converter.ts","../converters/grype-to-hdf/typescript/converter.ts","../converters/defectdojo-to-hdf/typescript/converter.ts","../converters/nessus-to-hdf/typescript/converter.ts","../converters/sonarqube-to-hdf/typescript/converter.ts","../converters/aws-config-to-hdf/typescript/converter.ts","../converters/checkov-to-hdf/typescript/converter.ts","../converters/gosec-to-hdf/typescript/converter.ts","../converters/nikto-to-hdf/typescript/converter.ts","../converters/zap-to-hdf/typescript/converter.ts","../converters/cyclonedx-to-hdf/typescript/converter.ts","../converters/hdf-to-csv/typescript/converter.ts","../converters/hdf-to-ecs/typescript/converter.ts","../converters/hdf-to-splunk/typescript/converter.ts","../converters/hdf-to-ocsf/typescript/converter.ts","../converters/hdf-to-asff/typescript/converter.ts","../converters/splunk-to-hdf/typescript/converter.ts","../converters/hdf-to-xml/typescript/converter.ts","../converters/gitlab-to-hdf/typescript/converter.ts","../converters/trufflehog-to-hdf/typescript/converter.ts","../converters/hipcheck-to-hdf/typescript/converter.ts","../converters/burpsuite-to-hdf/typescript/converter.ts","../converters/dbprotect-to-hdf/typescript/converter.ts","../converters/twistlock-to-hdf/typescript/converter.ts","../converters/deptrack-to-hdf/typescript/converter.ts","../converters/jfrog-xray-to-hdf/typescript/converter.ts","../converters/neuvector-to-hdf/typescript/converter.ts","../converters/fortify-to-hdf/typescript/converter.ts","../converters/prisma-to-hdf/typescript/converter.ts","../converters/netsparker-to-hdf/typescript/converter.ts","../converters/scoutsuite-to-hdf/typescript/converter.ts","../converters/conveyor-to-hdf/typescript/converter.ts","../converters/veracode-to-hdf/typescript/converter.ts","../converters/msft-secure-score-to-hdf/typescript/converter.ts","../converters/msft-defender-devops-to-hdf/typescript/converter.ts","../converters/msft-defender-cloud-to-hdf/typescript/converter.ts","../converters/msft-defender-endpoint-to-hdf/typescript/converter.ts","../converters/hdf-to-xccdf/typescript/converter.ts","../converters/hdf-to-oscal-sar/typescript/converter.ts","../converters/hdf-to-oscal-poam/typescript/converter.ts","../converters/ionchannel-to-hdf/typescript/converter.ts","../converters/openvex-to-hdf/typescript/converter.ts","../converters/csaf-vex-to-hdf/typescript/converter.ts","../converters/cyclonedx-vex-to-hdf/typescript/converter.ts","../converters/spdx-vex-to-hdf/typescript/converter.ts","../converters/hdf-to-csaf-vex/typescript/converter.ts","../converters/hdf-to-openvex/typescript/converter.ts","../converters/hdf-to-cyclonedx-vex/typescript/converter.ts","../converters/oscal-to-hdf/typescript/detect.ts","../converters/oscal-to-hdf/typescript/converter-catalog.ts","../converters/oscal-to-hdf/typescript/converter-profile.ts","../converters/oscal-to-hdf/typescript/converter-component.ts","../converters/oscal-to-hdf/typescript/converter-ssp.ts","../converters/oscal-to-hdf/typescript/converter-sap.ts","../converters/oscal-to-hdf/typescript/converter-poam.ts","../converters/oscal-to-hdf/typescript/converter-sar.ts","../shared/typescript/enrichStix.ts","../shared/typescript/stix.ts"],"mappings":";;;;;;;;;;;;UAwBiB;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;GACC;;UAGc;EACf;EACA;EACA;EACA,eAAe;IAAO;IAAe;;EACrC;EACA;EACA,OAAO;EACP;EACA;IACE;IACA;;EAEF,cAAc;EACd,UAAU;EACV;GACC;;UAGc;EACf;EACA;EACA;GACC;;UAGc;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;GACC;;UAGc;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,SAAS;EACT,WAAW;EACX;EACA,UAAU;EACV;EACA;EACA;EACA;GACC;;UAGc;EACf;EACA;EACA;GACC;;UAGc;EACf;EACA,UAAU;EACV,UAAU;EACV;EACA;EACA;GACC;;UAKc;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;GACC;;UAGc;EACf;EACA;EACA;IAAU;;EACV;EACA;IAAa;IAAe;;EAC5B;EACA;GACC;;UAGc;EACf;EACA;EACA;IAAa;IAAe;;EAC5B;GACC;;UAGc;EACf;EACA;EACA;EACA,eAAe;IAAO;IAAe;;EACrC;EACA;EACA,OAAO;EACP;EACA;IACE;IACA;;EAEF,aAAa;EACb,UAAU;EACV;EACA;EACA;EACA,kBAAkB;EAClB,QAAQ;EACR;EACA,OAAO;IAAO;;GACb;;UAGc;EACf;EACA;EACA;GACC;;UAGc;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;GACC;;UAGc;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,SAAS;EACT,eAAe;EACf;IACE;IACA;;EAEF;IACE;IACA;;EAEF;IACE;IACA;;EAEF;IACE;IACA;;EAEF,UAAU;EACV;EACA;EACA;EACA;GACC;;UAGc;EACf,WAAW;EACX;EACA;EACA;EACA;IAAS;IAAe;IAAkB;;EAC1C;EACA;EACA;EACA;EACA;EACA,aAAa;;iBAotBC,cAAc,QAAQ,cAAc,4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"}
|