Software Securityhome
Fix a findingSearch
Tag

Supply chain attacks

19 guides tagged Supply chain attacks, grouped by topic, with the SDLC phase and role each is written for.

SDLC phases
Roles

Software supply chain

12 guides
Guide · Software supply chain

Investigate a suspected malicious package safely

Distinguish package substitution, publisher compromise and dangerous installation behavior while containing exposure and preserving evidence.

Development, Maintenance · Platform engineers and SREs

Case study · Software supply chain

Case study: the Shai-Hulud npm worm (2025-2026)

How a self-replicating npm worm turned stolen tokens into hundreds of infected packages in 2025, how its 2026 successors hijacked release pipelines and trusted publishing, what npm and GitHub changed in response, and the publishing, install and response practices that stop it.

Development, Release, Maintenance · Developers, AppSec engineers, Platform engineers and SREs

Case study · Software supply chain

Case study: the tj-actions/changed-files compromise (CVE-2025-30066)

In March 2025 an attacker moved the version tags of a popular GitHub Action, and of a reviewdog action before it, to code that printed CI secrets into build logs. This case study traces the token chain back to one pull_request_target workflow, sizes the exposure, and shows how it was caught and which controls held.

Development, Release, Maintenance · Developers, AppSec engineers, Platform engineers and SREs

Case study · Software supply chain

Case study: the xz Utils backdoor (CVE-2024-3094)

How a multi-year maintainer takeover planted a backdoor in xz Utils release tarballs, how build-time injection hid it from the git repository, why a performance anomaly exposed it, which systems shipped it, and what it teaches about reproducible builds and maintainer health.

Development, Release, Maintenance, Security program · Developers, AppSec engineers, Platform engineers and SREs

Case study · Software supply chain

Case study: the SolarWinds Orion build compromise (SUNBURST)

How an implant on SolarWinds' build server inserted the SUNBURST backdoor into signed Orion updates in 2020, how it was found, why code signing and review could not catch it, and which build controls would have.

Release, Maintenance · AppSec engineers, Platform engineers and SREs

Case study · Software supply chain

Case study: the Codecov Bash Uploader compromise (2021)

How a credential leaked through Codecov's Docker image process let an attacker change the Bash Uploader that many CI pipelines downloaded and ran, which sent their environment variables, and the secrets in them, to the attacker for two months in 2021.

Development, Release, Maintenance · AppSec engineers, Platform engineers and SREs

Case study · Software supply chain

Case study: the 3CX DesktopApp supply-chain attack (CVE-2023-29059)

How a trojanized trading application on one employee's personal computer led to 3CX's build servers and to signed, malicious 3CX DesktopApp releases in 2023: the first cascading software supply-chain compromise Mandiant had seen, how EDR caught it, and the controls that would have stopped it.

Release, Maintenance · Platform engineers and SREs

Case study · Software supply chain

Case study: event-stream and ua-parser-js, two npm package takeovers

Two ways attackers took over popular npm packages: event-stream (2018), handed to a stranger who added a targeted, encrypted payload through a new dependency, and ua-parser-js (2021), whose maintainer's account was hijacked to publish versions that installed malware for four hours. Timelines, detection and the controls that stop both.

Development, Maintenance, Security program · Developers, Platform engineers and SREs

Case study · Software supply chain

Case study: the polyfill.io CDN takeover (2024)

How the sale of the polyfill.io domain and project in February 2024 turned a script tag on more than 100,000 websites into a channel for malicious redirects by June, why Subresource Integrity could not have protected it, and the controls that would have.

Development, Maintenance, Security program · AppSec engineers, Platform engineers and SREs

Guide · Software supply chain

Stop dependency confusion and typosquatting at install time

Pin every internal package name to its real source, verify installed bytes against a lockfile, and delay or gate install scripts so a public look-alike cannot replace a private dependency.

Development · Developers, AppSec engineers, Platform engineers and SREs

Guide · Software supply chain

Secure the developer workstation: extensions, package managers, secrets and AI agents

Attackers reach the software supply chain through developers' editors, package installs and AI agents. Allow-list extensions, stop install scripts and brand-new versions, keep long-lived secrets off laptops, and lock down repository files that run code when a project opens.

Design, Development, Release · Developers, AppSec engineers, Platform engineers and SREs

Guide · Software supply chain

Meet the OpenSSF OSPS Baseline as a maintainer: the levels, every Level 1 control on GitHub, and the evidence

Walk through the eight control families and three maturity levels of OSPS Baseline v2026.08.28, meet each Level 1 requirement on a GitHub repository, and keep evidence a consumer can check.

Development, Release, Security program · Developers

Governance & frameworks

2 guides

AI security

5 guides
Guide · AI security

Treat model releases as executable supply-chain inputs

Verify provenance, constrain loading and preserve the relationship between model weights, configuration and runtime dependencies.

Development, Release · Developers, AppSec engineers, Platform engineers and SREs

Guide · AI security

Protect training and retrieval data from targeted poisoning

Track who can influence datasets, keep evaluation independent and investigate targeted behavior changes without relying on aggregate accuracy.

Development, Testing, Release, Security program · Developers, AppSec engineers, Platform engineers and SREs

Guide · AI security

Secure AI-assisted development with coding assistants and agents

Treat generated code, suggested packages, repository text and MCP servers as untrusted inputs, and confine coding agents with OS-level isolation and short-lived, narrowly scoped credentials.

Design, Development · Developers, AppSec engineers

Case study · AI security

Case study: the Nx s1ngularity compromise and its AI-assisted payload (2025)

How a pull-request-title injection in a GitHub Actions workflow on an outdated branch gave an attacker the Nx npm token in August 2025, how the malicious versions tried to turn developers' own AI command-line tools into file-search agents, and the workflow, publishing and agent controls that stop the same chain.

Design, Development, Release, Maintenance · Developers, Platform engineers and SREs

Case study · AI security

Case study: the Amazon Q Developer extension compromise (2025)

How an over-scoped GitHub token, extracted from an AWS CodeBuild pull request build, let a threat actor commit code to the Amazon Q Developer extension for VS Code that shipped in version 1.84.0 in July 2025, why the injected code aimed at the Q Developer CLI failed, and the CI and AI-agent controls the incident argues for.

Design, Development, Testing, Release, Maintenance · Developers, Platform engineers and SREs

All tags, lifecycle stages and roles

Find your next answer

Type to search. Search runs in your browser.

Searches run in your browser, but the host can infer them from the index files they load. The address shows your search so you can bookmark or share it.