Software Supply Chain Security Study Plan
September 9, 2026 · View on GitHub
This study plan is based on milestones. So, check how much you can cover within the timeline. The more you cover the topics, the better candidate you are for the job roles which require good knowledge of software supply chain security. Also, I assume you have already checked and are comfortable with Common Security Skills study plan.
Just to make sure that everyone understands what you need to learn to be good at Software Supply Chain Security. Software supply chain security is about securing all the components, tools, and services that go into building, packaging, and delivering software: source code, dependencies, build systems, CI/CD pipelines, artifacts, and runtime environments.
It is more towards:
- understanding how code and dependencies flow from dev laptops to production,
- securing dependencies and third-party components,
- hardening build and CI/CD systems,
- ensuring integrity of artifacts and deployments,
- and responding to supply chain incidents quickly.
Usually it will take you 8-16 weeks to be comfortable with software supply chain security fundamentals, depending on your background in AppSec, DevSecOps, and cloud.
In short
- Software supply chain security is not just dependency scanning.
- Think more of end-to-end integrity: from source to production.
- You should be comfortable with version control, CI/CD, and package managers.
- You should know the basics of DevSecOps, Docker/Kubernetes, and cloud.
- You must understand how real-world incidents happened to avoid repeating them.
ToC
- Supply Chain Fundamentals - 2-3 weeks
- Dependencies and Package Ecosystems - 2-3 weeks
- Build Systems and CI/CD Security - 2-3 weeks
- Artifact Integrity, Signing and SBOM - 2-3 weeks
- Historical Supply Chain Incidents - 1-2 weeks
- Detection, Response and Governance - 2-3 weeks
- Books
- Videos
- Courses
- Certifications
- Interview Questions
Supply Chain Fundamentals
Duration: 2-3 weeks
Goal here is to understand what “software supply chain” actually means.
Week 1-3: The Chain
- Understand the basic stages:
- Developer workstation and source control.
- Dependencies and package managers.
- Build systems and CI/CD pipelines.
- Artifact repositories and container registries.
- Deployment and runtime environments.
- Read or refresh related study plans:
- Map risks at each stage:
- Source code tampering, credential theft.
- Malicious or vulnerable dependencies.
- Compromised build agents or pipelines.
- Poisoned images or artifacts.
- Misconfigurations in deployment.
- Learn the frameworks that give this domain a common language:
- SLSA: Supply-chain Levels for Software Artifacts — the de facto standard for build provenance. Current spec is SLSA v1.2 (Approved); v1.1 is still widely cited.
- The Build track and its levels (Build track basics):
- L0 — no provenance, no guarantees. Where most projects start.
- L1 — the build runs on a build platform that automatically generates provenance describing how the artifact was built, and that provenance is distributed to consumers.
- L2 — the build platform itself generates and signs the provenance, so a tampered artifact can be detected without trusting the uploader.
- L3 — hardened build platform: builds are isolated from each other, and the provenance signing key is not reachable from user-defined build steps. This is what defends against a SolarWinds- or tj-actions-style build compromise.
- Understand the terms provenance, attestation, build platform, producer/consumer and verifier — you will meet them again in in-toto and Sigstore.
- Practical framing: pick a target level per artifact tier, and know which controls move you from L1 to L3 rather than treating SLSA as a badge.
- The Build track and its levels (Build track basics):
- OWASP Top 10 CI/CD Security Risks — the risk taxonomy for the build side of the chain.
- A03:2025 Software Supply Chain Failures in the OWASP Top 10:2025 — supply chain is now a top-three web application risk category in its own right; useful when you need to justify this work to AppSec leadership. See Application Security Study Plan.
- SLSA: Supply-chain Levels for Software Artifacts — the de facto standard for build provenance. Current spec is SLSA v1.2 (Approved); v1.1 is still widely cited.
Dependencies and Package Ecosystems
Duration: 2-3 weeks
Dependencies are one of the largest attack surfaces.
Week 4-6: Dependencies
- Understand different ecosystems:
- npm/yarn/pnpm for JavaScript/TypeScript.
- PyPI for Python, Maven/Gradle for Java, NuGet for .NET, etc.
- Common risks:
- Dependency confusion and typosquatting.
- Malicious maintainers or compromised accounts.
- Abandoned or unmaintained packages.
- Basic protections:
- Lockfiles and deterministic builds.
- Private registries or proxies.
- Using allowlists/blocklists for dependencies.
- Dependency scanning:
- Understanding SCA (Software Composition Analysis).
- Severity, exploitability, and prioritization of dependency vulns.
Build Systems and CI/CD Security
Duration: 2-3 weeks
Here you focus on securing the build and delivery machinery.
Week 7-9: Pipeline Security
- Understand key components:
- CI servers/agents.
- Build scripts and configuration.
- Secrets used in pipelines (cloud creds, signing keys, etc.).
- Common risks:
- Attackers gaining access to CI agents or configuration.
- Insecure storage or handling of secrets.
- Unreviewed changes to build scripts.
- Basic hardening:
- Least privilege for CI service accounts.
- Separate build agents for different trust levels.
- Code review and change control for build configs.
- Cross-link with DevSecOps Study Plan for CI/CD details.
Artifact Integrity, Signing and SBOM
Duration: 2-3 weeks
This is about making sure what you build is exactly what gets deployed.
Week 10-12: Integrity
- Artifact repositories and registries:
- Access control and separation of environments.
- Immutable artifacts where possible.
- Signing and verification (high level):
- Code signing concepts.
- Image signing and verification.
- Get hands-on with the current standard tooling — this is what "signing and SBOM" actually looks like in practice:
- Sigstore — keyless signing for artifacts and container images using short-lived certificates tied to an OIDC identity (your CI workflow), with a public transparency log (Rekor) so signatures are auditable.
- cosign — the tool you will use day to day:
cosign sign/cosign verifyfor images and blobs, and attaching attestations and SBOMs to an image. Start with the signing overview. - Understand why keyless beats long-lived signing keys: nothing to steal, and the identity in the certificate tells you which pipeline built the artifact.
- Learn to enforce verification at admission time (e.g. a Kubernetes policy controller), not just to sign — an unverified signature buys you nothing. Cross-link with Kubernetes Security Study Plan.
- cosign — the tool you will use day to day:
- in-toto attestations — a signed, machine-readable statement about an artifact ("this image was built by this workflow from this source", "these tests passed", "this SBOM belongs to this digest").
- Learn the in-toto attestation framework format: subject (artifact digest), predicate type, predicate. SLSA provenance is itself an in-toto attestation predicate.
- This is how provenance, SBOMs and scan results get bound to a specific artifact digest instead of floating around as loose files.
- OpenSSF Scorecard — automated checks on the security posture of an open source repository (branch protection, code review, pinned dependencies, dangerous workflow patterns, signed releases, maintenance activity).
- Run it via the scorecard CLI or GitHub Action on your own repos, and use published scores as one input when evaluating a new dependency.
- Know its limits: it measures practices, not the absence of vulnerabilities, and a high score is not a substitute for review.
- Sigstore — keyless signing for artifacts and container images using short-lived certificates tied to an OIDC identity (your CI workflow), with a public transparency log (Rekor) so signatures are auditable.
- SBOM (Software Bill of Materials):
- What an SBOM is and why it matters.
- How SBOMs help in incident response and compliance.
- Know the two formats you will actually be asked for:
- CycloneDX — OWASP-backed, security-focused; current spec is 1.7 (Oct 2025), backward compatible with 1.4-1.6, and it also carries VEX, attestations and cryptographic (CBOM) data.
- SPDX — ISO/IEC 5962 standardized, licensing/compliance heritage; 3.0 line is current (3.0.1), but a large share of real-world tooling still emits 2.3, so expect to handle both.
- Understand VEX (Vulnerability Exploitability eXchange) alongside SBOM: the SBOM says what is in there, VEX says whether a given CVE is actually exploitable in your product.
- Generation and consumption in a pipeline: generate the SBOM at build time (not by scanning the finished artifact later), attach it to the artifact digest as an attestation, and store it so you can answer "where do we use log4j / xz / this package" in minutes.
- Simple practices:
- Track which artifact versions are deployed where.
- Ensure builds are reproducible and traceable.
- Pin dependencies and third-party CI actions by immutable digest/commit SHA, not by mutable tag.
Historical Supply Chain Incidents
Duration: 1-2 weeks
You will learn a lot by understanding how major incidents happened.
Week 13-14: Case Studies
- npm ecosystem attacks (examples at a high level):
- Malicious packages published to npm to steal credentials, exfiltrate data, or run cryptominers.
- Typosquatting attacks where packages with names similar to popular libraries are published.
- Incidents where maintainers’ accounts were compromised and releases were backdoored.
- SHA-1 related attacks (e.g., SHA-1 collision attacks):
- Collision attacks against SHA-1 showed that older hash algorithms may no longer be safe for integrity.
- Understand why moving away from weak hashes (like SHA-1) matters in signing and integrity checks.
- xz-utils backdoor, CVE-2024-3094 (discovered 29 March 2024 by Andres Freund) — the canonical maintainer trust case study, and the one to study first:
- What happened: a contributor ("Jia Tan"/JiaT75) spent roughly two years building credibility on the xz project until they were granted maintainer rights, then shipped a backdoor in xz 5.6.0/5.6.1 that patched liblzma at build time to hijack OpenSSH's authentication path — remote code execution for whoever held a specific Ed448 private key. CVSS 10.0.
- Why it is the better teaching example: the malicious payload was in the release tarball, not the git repository, and was activated only by the distro build process — so reading the upstream source would not have found it. It was caught by accident, via a performance anomaly in sshd.
- Controls it stresses: reproducible builds and build-from-source-of-truth (would have exposed the tarball/repo divergence), maintainer succession and social-engineering risk, single-maintainer critical dependencies, and the size of the transitive dependency graph that pulled liblzma into sshd at all.
- It landed in Fedora 40 beta/Rawhide, Debian unstable/testing, Kali and Arch — not in stable Ubuntu or Amazon Linux, largely by timing luck.
- tj-actions/changed-files GitHub Action compromise, CVE-2025-30066 (March 2025) — the canonical CI/CD and mutable-reference case study:
- What happened: an attacker used a compromised bot personal access token to retag versions v1 through v45.0.7 of a very widely used GitHub Action to point at a malicious commit. The injected code dumped the CI runner's memory and printed harvested secrets — cloud keys, GitHub PATs, npm tokens, private keys — into the workflow logs, which are public for public repos. Around 23,000 repositories used the action; patched in v46.0.1. Read it together with the related reviewdog/action-setup compromise, CVE-2025-30154, which is believed to be how the tj-actions bot token was obtained in the first place — a two-hop compromise through the Action ecosystem. Good technical write-up: Wiz.
- Controls it stresses: pinning third-party actions by full commit SHA instead of a mutable tag, least-privilege
GITHUB_TOKENand workflow permissions, short-lived OIDC credentials instead of long-lived secrets in CI, treating build logs as a secret sink, and monitoring for unexpected outbound network calls from runners. - Response practice: work out how you would answer "did any of our workflows run this action in that window, and which secrets were exposed?" — then rotate.
- SolarWinds-style attacks (2020, still the reference build system compromise):
- Attackers compromised the vendor’s build system.
- Malicious code was inserted into legitimate updates.
- Customers trusted signed updates, so the backdoor spread widely.
- Note that signing alone did not help here — the malicious build was legitimately signed. This is exactly the gap SLSA Build L3 (isolated builds, signing keys unreachable from build steps) and verifiable provenance are meant to close.
- For each incident type, focus on:
- Where in the supply chain the attacker gained control.
- What controls were missing or weak.
- What changes were made after the incident (e.g., more signing, better monitoring, stricter access control).
Detection, Response and Governance
Duration: 2-3 weeks
Finally, focus on how to detect and respond to supply chain issues and how to govern the program.
Week 15-17: Operations
- Detection:
- Monitoring dependency changes and vulnerability feeds.
- Alerting on unusual build or deployment behavior.
- Logging around CI/CD and registries.
- Response:
- Having an inventory of where components are used.
- Rapid patching or rollback strategies.
- Communication with stakeholders and customers.
- Governance:
- Policies for dependency management and updates.
- Standards for CI/CD and artifact handling.
- Regular reviews and tabletop exercises based on real incidents.
Books
- Any good book on software supply chain or modern software security that includes supply chain chapters.
- Books on DevSecOps and cloud-native security that cover CI/CD and dependencies.
Videos
- Conference talks on software supply chain attacks and defenses.
- Deep dives on major incidents (e.g., large vendor compromises, dependency attacks).
- Talks on SBOMs, signing, and secure build pipelines.
Courses
- Courses specifically focused on software supply chain security, if available.
- DevSecOps courses with strong coverage of CI/CD and dependency scanning.
- Cloud-native security courses that include supply chain topics.
- RansomLeak Git & Repository Security - CI/CD secret exposure, malicious PRs, branch-protection bypass, commit spoofing
Certifications
- General cloud security and DevSecOps certifications that include supply chain security.
- Any vendor-neutral or vendor-specific certifications that emphasize secure SDLC and CI/CD.
Interview Questions
You can reuse questions from Application Security, DevSecOps, and cloud security, but add supply chain focus:
- How would you reduce the risk of malicious dependencies in a large organization?
- What controls would you put around CI/CD systems to protect against supply chain attacks?
- How would you respond if a widely used third-party library in your product was suddenly found to be compromised?
- How would you explain the importance of SBOMs and artifact signing to engineering leadership?