100% Free Forever
AI-Powered Learning
Industry Expert Content
Certificates & Badges
Learn At Your Own Pace
DevSecOps & Security Automation
25 minadvanced

Supply chain security — SBOM and SLSA framework basics

Modern applications are assembled far more than they are written, pulling in hundreds of open-source libraries, base images, and build tools. This dependency web is the software supply chain, and each component is a potential entry point for an attacker. Supply chain security aims to know exactly what goes into a build and to prove that nothing was tampered with along the way. Two foundational tools support this goal: the SBOM and the SLSA framework.

Analogy🏏Cricket
💼 Think of it like business: a manufacturer that buys parts from hundreds of outside suppliers cannot guarantee its product unless it knows exactly which vendor supplied each component and can prove none were swapped for counterfeits in transit. Modern software is assembled far more than it is written, pulling in hundreds of open-source libraries, base images, and build tools, and each is a possible entry point for an attacker. Supply chain security means knowing precisely what goes into a build and proving nothing was tampered with. This reveals that you cannot secure a product whose ingredients and their origins you cannot even name.

A Software Bill of Materials, or SBOM, is a complete, machine-readable inventory of every component in a piece of software, including transitive dependencies buried several layers deep. Standard formats such as SPDX and CycloneDX let tools generate and consume these inventories automatically. When a new vulnerability is disclosed, an SBOM answers the urgent question "are we affected, and where" in seconds rather than the days of frantic manual searching that teams without one endure.

Analogy🏏Cricket
🍳 Think of it like cooking: a complete, printed ingredient label lists not just the obvious items but every sub-ingredient hidden inside them — the additives within the sauce within the filling. When an allergy alert hits, a diner scans that label and knows in seconds whether the dish is dangerous. An SBOM is that label for software: a machine-readable inventory of every component, including transitive dependencies buried several layers deep, in formats like SPDX and CycloneDX. When a vulnerability drops, it answers 'are we affected, and where' instantly. This reveals that a full ingredient list turns a frantic search into a quick lookup.

SLSA, pronounced "salsa" and standing for Supply-chain Levels for Software Artifacts, is a framework of increasing maturity levels that describe how trustworthy a build process is. Higher levels require tamper-resistant, fully automated builds that produce signed provenance — cryptographic evidence recording exactly how, where, and from what an artifact was built. This provenance lets a consumer verify that the binary they are about to deploy genuinely came from the expected source and pipeline, not a malicious substitute.

Analogy🏏Cricket
♟️ Think of it like chess: a recorded, signed scoresheet of every move lets officials later prove a game was played legitimately and that the final position was reached honestly, not quietly rearranged after the clocks stopped. SLSA works this way for builds — a framework of maturity levels where higher tiers demand tamper-resistant, automated pipelines that emit signed provenance, cryptographic evidence of exactly how, where, and from what an artifact was built. A consumer verifies the binary genuinely came from the expected source, not a malicious substitute. This reveals that a trustworthy result depends on a trustworthy, verifiable record of how it was produced.
bash
# Generate an SBOM (CycloneDX) and scan it for known vulnerabilities
syft packages dir:. -o cyclonedx-json > sbom.json
grype sbom:sbom.json            # flags components with known CVEs

# Verify signed build provenance before deploy (SLSA-style)
cosign verify-attestation --type slsaprovenance \
  --certificate-identity-regexp '.*' registry.example.com/app:1.4.2
Analogy🏏Cricket
🎬 Think of it like movies: the closing credits list every contributor down to the assistants nobody noticed on set, so when a dispute arises producers can prove instantly who actually worked on the film. And a studio's certified master print carries a seal proving the reel was not tampered with before it reached cinemas. An SBOM is that full credit list for software, naming even the buried dependencies, while SLSA provenance is the certified seal proving the build was not swapped afterward. This reveals that a complete cast list plus a tamper-proof seal together answer both 'what is inside' and 'can we trust it'.

Best practice generates an SBOM automatically for every build and stores it alongside the artifact, so the inventory always matches what was actually shipped. Continuously scan those SBOMs against vulnerability feeds, pin and verify dependencies by cryptographic digest, and adopt signed provenance so downstream consumers can verify origin before deployment. Climbing the SLSA levels incrementally — starting with scripted, automated builds — steadily raises the bar an attacker must clear to poison your supply chain.

Analogy🏏Cricket
🎵 Think of it like music: a professional studio archives the exact master recording of every release, tagged with its precise version, so any later remaster or dispute can be checked against the authentic original rather than a lossy copy. Supply chain hygiene mirrors this — generate an SBOM automatically for every build and store it beside the artifact so the inventory always matches what shipped, then scan those SBOMs against vulnerability feeds, pin and verify dependencies by cryptographic digest, and adopt signed provenance. Climbing the SLSA levels step by step raises the bar. This reveals that keeping a faithful master of every build is what makes later verification possible.

In the real world, when a critical library vulnerability is announced, an organisation with SBOMs for every service can query its inventory and identify affected systems within minutes, then prioritise patching by exposure. A competitor without SBOMs spends days manually grepping through repositories and container images, unsure whether it has found every instance. The same disclosure becomes a calm, scoped operation for one team and a chaotic fire drill for the other.

Analogy🏏Cricket
✈️ Think of it like travel: when a health alert names a specific flight, an airline with a full passenger manifest contacts every exposed traveller within the hour, while one relying on scattered paper stubs spends days unsure whom it even carried. The manifest turns panic into a scoped operation. When a critical library vulnerability is announced, an organisation with SBOMs for every service queries its inventory and identifies affected systems in minutes, then patches by exposure. A competitor without them greps repositories for days, never certain it found every instance. This reveals that a maintained inventory separates a calm response from a chaotic fire drill.
  • Applications are assembled from many dependencies, each a supply-chain risk.
  • An SBOM is a machine-readable inventory of every component, including transitive ones.
  • SBOMs answer "are we affected" in seconds when a new vulnerability drops.
  • SLSA levels describe build trustworthiness and require signed provenance at higher tiers.
  • Generate SBOMs per build, scan continuously, and verify signed provenance before deploy.
Lesson 5 of 35
0% complete