Poisoned Pipeline

Poisoned Pipeline / Incidents / AS22

AS22 · 2026-03

axios npm remote-access trojan

npmCI/CD SaaSGitHub Actions

In March 2026, alongside the Team PCP wave, malicious versions axios@1.14.1
and axios@0.30.4 pulled in a fake dependency that dropped a cross-platform
remote-access trojan on install, called attacker C2, then tried to erase
traces. axios has over 100 million weekly downloads. StepSecurity's
Harden-Runner captured the live C2 callback during a GitHub Actions run
in CNCF's Backstage repository.

Mapped techniques

supply-chain axios on npm

T0121 · Resource Development · Compromised legitimate artifact

Two versions of axios, one of the most downloaded npm packages, shipped
a malicious extra dependency.

T0109 · Resource Development · Publish malicious artifact

Malicious versions 1.14.1 and 0.30.4 were published to npm.

T0181 · Initial Access · Malicious module injection

A fake dependency carried the RAT rather than axios source itself.

post-supply-chain Installers including CNCF Backstage CI

T0151 · Execution · Installation scripts

The RAT dropped on install.

T0159 · Execution · Malicious artifact execution

Harden-Runner observed the C2 callback in a Backstage GitHub Actions run.

T0145 · Exfiltration · Bypass of outbound traffic control

The malware called home from CI; it was built to erase evidence of that call.

T0176 · Defense Evasion · Disable or misconfigure security measures

After the C2 callback the malware attempted to wipe its own traces.

T0201 · Impact · Customers compromised

Any project resolving those axios versions, including CNCF Backstage CI,
executed the payload.

Sources