Secure the Supply Chain: SBOMs, Provenance, and Sigstore in CI/CD
Protect your software supply chain in CI/CD pipelines with SBOMs, Sigstore, provenance checks, and policy enforcement. Learn practical strategies to mitigate dependency-based attacks.
Secure the Supply Chain: SBOMs, Provenance, and Sigstore in CI/CD
Intro: Why Supply Chain Attacks Exploded
From SolarWinds to Log4Shell, recent breaches show that attackers are increasingly targeting the software supply chain.
Your dependencies, build systems, and deployment pipelines are now prime targets. A single compromised library can cascade across thousands of environments.
In 2025, securing your CI/CD pipelines isnβt optional β itβs foundational to protecting your users and business.
Key Security Layers for CI/CD
1. Generate & Verify SBOMs (Software Bill of Materials)
An SBOM lists every package, dependency, and artifact in your build. Tools like Syft or CycloneDX generate SBOMs automatically.
Example: Generate SBOM with Syft
syft packages docker:my-app:latest -o json > sbom.json
Then, verify SBOMs against known vulnerabilities using Grype or similar scanners:
grype sbom:sbom.json
2. Use Sigstore for Artifact Signing & Verification
Sigstore simplifies signing and verifying container images, binaries, and manifests.
Example: Sign an Image
cosign sign --key cosign.key registry.example.com/app:1.0
Example: Verify the Signature
cosign verify registry.example.com/app:1.0
By integrating cosign into your pipeline, you ensure only signed, verified artifacts are deployed.
3. Implement Provenance Checks for Dependencies
Provenance = knowing who built what, when, and how.
Adopt frameworks like SLSA (Supply-chain Levels for Software Artifacts) to enforce stronger provenance guarantees:
- Require all artifacts to come from trusted builders.
- Validate integrity via checksums and signed attestations.
- Block unknown or unverifiable sources from entering your build.
Pipeline Enforcement Strategies
1. Use OPA/CUE Policies
Integrate Open Policy Agent (OPA) or CUE to enforce security policies inside your pipelines:
- Reject unsigned container images.
- Fail builds using outdated or vulnerable dependencies.
- Require SBOM generation for every artifact.
Example: OPA Policy to Block Unsigned Images
package cicd.policy
deny[msg] {
input.image.signed == false
msg := sprintf("Unsigned image: %s", [input.image.name])
}
2. Fail Early for Unsigned or Outdated Artifacts
The earlier you block bad dependencies, the safer your release pipeline stays:
- Break builds when SBOM scans find critical vulnerabilities.
- Block deploying unverified images into staging/production.
- Require artifact signing before pushing to registries.
Case Study: Mitigating a Malicious Dependency Injection
In 2024, a fintech startup narrowly avoided a breach:
- A malicious dependency update entered staging via npm.
- SBOM scanning caught the suspicious new transitive dependency.
- The pipeline blocked deployment until the artifact was verified via Sigstore.
- Incident resolved in under 15 minutes with zero production impact.
By combining SBOM scanning, artifact signing, and policy enforcement, the company reduced their supply chain risk significantly.
CI/CD Pipeline Hardening Example
Stage | Action | Tools |
---|---|---|
Build | Generate SBOM | Syft, CycloneDX |
Scan | Check for vulnerabilities | Grype, Trivy |
Sign | Sign artifacts & containers | Cosign, Sigstore |
Verify | Validate signatures in pipeline | Cosign |
Enforce | Apply OPA/CUE policies | OPA, Conftest |
Deploy | Allow only verified artifacts | ArgoCD, FluxCD |
Key Takeaways
- Supply chain security is a CI/CD responsibility, not just an ops task.
- Always generate and verify SBOMs to know what you're shipping.
- Use Sigstore and cosign to sign & verify artifacts before deployment.
- Enforce provenance with OPA policies and fail early on unsigned or outdated components.
- Integrate security checks into the pipeline itself to block threats before they reach production.
With modern threats, securing your supply chain is no longer optional β itβs your first line of defense.