Third-party package dependencies · Inventory & provenance

Produce and keep an SBOM for every release

When it fails: Releases have no record of the components they contain.

CB-DEP-INV-001mediumdraftpartialprofile baseline

Status draft: not part of any release yet, may still change.

Description

Each release produces a software bill of materials (SBOM) in a standard format, listing every component and version, generated from the actual build. It is stored with the release artifact for at least as long as the release is supported.

Rationale

When a vulnerability or a malicious package is announced, the SBOM answers "are we affected, and where?" for every version in the field, including old ones no longer in the repository.

Impact

Build pipelines need an extra step and storage.

Audit

  1. Pick a recent release and retrieve its SBOM.
  2. Check it uses a standard format, includes transitive dependencies and matches the shipped artifact.

Automated: every check must pass. Scanners report each check by its id.

postmortem

an SBOM step in the pipelines; storage with releases is by hand

command: postmortem harden --json
control: CB-DEP-INV-001
coverage: partial

Remediation

  1. Add SBOM generation to the release build.
  2. Store it with the release artifact.

References

Mappings

FrameworkIDRelationNote
NIST SP 800-53 Rev. 55.1.1CM-8related
NIST SP 800-53 Rev. 55.1.1SR-4related

How this control relates to the other framework's: equivalent, stricter, looser, partial or related.

  • related CB-DEP-INV-002 Know where any package version is used within a set time

People and lifecycle

AuthorsAlice
Introduced inv1.0.0
Created, updated2026-10-16, 2026-10-16