Concepts

Supply Chain Security

Practices for ensuring the integrity and security of all dependencies, tools, and processes comprising the software development pipeline.

seed#supply-chain#security#sbom#dependencies#slsa#sigstore

What it is

Software supply chain security protects against attacks compromising dependencies, build tools, or distribution processes. Attacks like SolarWinds and Log4Shell demonstrated its importance.

Attack vectors

VectorReal-world exampleMitigation
Malicious dependenciesTyposquatting on npm/PyPILockfiles, dependency review
Build system compromiseSolarWinds (2020)Hermetic builds, SLSA Level 3+
CI/CD pipeline injectionCodecov breach (2021)Least privilege, rotated secrets
Compromised imagesBase images with vulnerabilitiesScanning with Trivy, signed images

Mitigation practices

  • SBOM: Software Bill of Materials (dependency inventory)
  • Dependency scanning: Snyk, Dependabot, Trivy
  • Artifact signing: cosign, Sigstore
  • SLSA: Supply-chain Levels for Software Artifacts (maturity framework)
  • Lockfiles: exact dependency versions

SLSA Levels

LevelRequirements
1Build process documentation
2Hosted build service, retained logs
3Isolated build, verifiable provenance
4Hermetic build, two-party review

Why it matters

Software supply chain attacks exploit trust in third-party dependencies. A single compromised package can affect thousands of applications. Verifying signatures, auditing dependencies, and using SBOMs are essential defensive practices.

References

  • SLSA — Security framework.
  • Sigstore — Artifact signing.
  • OpenSSF — Linux Foundation, 2024. Foundation for open source software security.
Concepts