Supply Chain Security

The practice of securing all components, processes, and dependencies in the software development and delivery pipeline from malicious tampering or vulnerabilities.

Also known as:Software Supply Chain SecurityDependency Security

What is Software Supply Chain Security?

Software supply chain security focuses on protecting the integrity and security of all components involved in creating, building, and deploying software. This includes source code, dependencies, build systems, and distribution mechanisms.

Supply Chain Attack Vectors

Compromised Dependencies

  • Malicious packages
  • Typosquatting
  • Dependency confusion
  • Abandoned package takeover

Build System Attacks

  • CI/CD compromise
  • Build server infiltration
  • Artifact tampering

Source Code Attacks

  • Repository compromise
  • Malicious commits
  • Credential theft

Distribution Attacks

  • Update mechanism hijacking
  • Mirror compromise
  • Certificate theft

Notable Incidents

  • SolarWinds (2020)
  • Codecov (2021)
  • Log4j (2021)
  • npm package attacks

Security Measures

Dependency Management

  • Software Bill of Materials (SBOM)
  • Vulnerability scanning
  • License compliance
  • Dependency pinning

Build Security

  • Reproducible builds
  • Signed artifacts
  • Isolated build environments
  • SLSA framework compliance

Code Security

  • Code signing
  • Branch protection
  • Code review requirements
  • Secret scanning

Distribution Security

  • Signed releases
  • Secure update mechanisms
  • Integrity verification

Frameworks and Standards

  • SLSA (Supply-chain Levels for Software Artifacts)
  • NIST SSDF
  • OpenSSF Scorecard
  • Sigstore