Supply Chain Attack Research
Research Hub
- AI & LLM Security Research
- SaaS Risk & Shadow IT Research
- Original Research & Reports
- AI & Cybersecurity Policy Tracker
- Cyber & AI Market Intelligence
- AI Model Benchmark Lab
- Security & AI Glossary
- Breach & Incident Timeline
- Ransomware Research
- Phishing Research
- » Supply Chain Attack Research
- Social Engineering Research
- Nation-State Threat Research
- Malware Analysis Research
- Cyber Insights Library
Contact Us
Independent cybersecurity and AI research — free to browse, updated as the threat landscape moves, with no vendor sponsorship influencing the coverage.
Software Supply Chain Attacks: Named Incidents and Defence

A supply chain attack does not target an organisation directly. It targets something the organisation already trusts and depends on: a software vendor, a managed service provider, or an open-source package buried deep in a dependency tree. Compromise that trusted component once, and every downstream user inherits the compromise automatically, often through a routine update they never questioned.
This page focuses specifically on software and open-source supply chain attacks. For SaaS integration and OAuth-specific supply chain risk, see our dedicated SaaS Risk & Shadow IT Research page.
Named Incidents That Defined This Threat
The SolarWinds compromise (2020) remains the reference case for build-pipeline attacks: attackers inserted malicious code directly into SolarWinds’ Orion software during the build process, distributed to thousands of customers as a routine, digitally signed update.
The XZ Utils backdoor (CVE-2024-3094) showed a slower version of the same threat: an account using the identity “Jia Tan” spent over two years building maintainer trust before pushing a version in February 2024 containing a backdoor in liblzma, indirectly compromising sshd on affected systems.
September 2025 marked a genuine inflection point: Shai-Hulud, the first self-replicating npm worm, compromised maintainer credentials via phishing, then automatically stole tokens and republished itself into additional packages without human involvement. Trend Micro tracked close to 500 impacted packages within two weeks. A follow-up campaign, “Shai-Hulud: The Third Coming,” began April 22, 2026.
In March 2026, attackers compromised axios (100M weekly downloads), delivering cross-platform malware before removal within three hours; Huntress observed at least 135 endpoints contacting attacker infrastructure during the exposure window.
Source: Microsoft Security Blog; Unit 42, Palo Alto Networks; Sonatype 2026 State of the Software Supply Chain report; Huntress; National Vulnerability Database CVE-2024-3094.
- Sonatype 2026: 454,600+ new malicious open-source packages identified in 2025, a 75% year-over-year increase
- Cumulative blocked malicious packages now exceed 1.233 million across npm, PyPI, Maven, NuGet, Hugging Face
- Over 99% of open-source malware specifically targets npm
- XZ Utils backdoor (CVE-2024-3094): 2+ years of maintainer trust-building before the malicious commit
- Shai-Hulud (Sept 2025): first self-replicating npm worm, ~500 packages compromised, 2.6B+ weekly downloads affected
- Axios compromise (March 2026): 100M-weekly-download package compromised, removed within 3 hours
- Dependency confusion: attacker publishes a public package matching an internal package name at a higher version
- 71.2% of malicious npm packages use long names (10+ characters); 67.3% include dashes to mimic legitimate naming
How These Attacks Work and How to Defend Against Them
Dependency confusion exploits how package managers resolve names across public and private registries — if an internal package name is duplicated publicly with a higher version number, many resolvers default to the public copy. Typosquatting relies on developer typing errors, publishing malicious packages under names resembling popular ones. Maintainer account takeover, the mechanism behind Shai-Hulud and axios, is often simplest: steal the credentials of a maintainer who already has legitimate publishing rights.
Defence: Pin dependencies to specific verified versions rather than auto-accepting the latest release. Route installs through a private registry proxy enforcing a cooldown period. Disable automatic postinstall script execution where practical. Maintain a Software Bill of Materials (SBOM), increasingly required under emerging regulation including the EU Cyber Resilience Act. Note that cryptographic build provenance (Sigstore, SLSA) confirms which pipeline built a package, not whether that pipeline was clean — the June 2026 redhat-cloud-services incident carried entirely valid provenance because the pipeline itself had been compromised beforehand.
A software supply chain attack compromises a trusted software vendor, open-source package, or build pipeline rather than attacking a target organisation directly. Once the trusted component is compromised, every downstream user who installs or updates it inherits the compromise automatically.
An account using the identity "Jia Tan" spent over two years building trust as a maintainer of the xz-utils compression library before pushing a version in February 2024 containing a malicious backdoor in liblzma (CVE-2024-3094). Because many Linux distributions link sshd to liblzma via systemd, the backdoor created a path into SSH on affected systems.
Dependency confusion is a technique where an attacker publishes a public package with the same name as an organisation's internal private package, using a higher version number, so package managers default to resolving and installing the malicious public package instead.
Shai-Hulud compromised an initial maintainer's credentials via a phishing email disguised as an npm security alert, then automatically harvested tokens from the infected environment, used them to compromise further accounts, and republished itself into additional packages without further human intervention.
Pin dependencies to specific verified versions, route installs through a private registry proxy with a cooldown period, disable automatic postinstall script execution where feasible, and maintain a Software Bill of Materials (SBOM) so every component in your environment is known and auditable.