Poisoned Pipeline

Poisoned Pipeline / Incidents / AS69

AS69 · 2025-07

npm is 3.3.1 / 5.0.0 via phished old maintainer

npmDeveloper workstation

On 19 July 2025 malicious versions 3.3.1 and 5.0.0 of the widely used
type-checking package is were published. Attackers phished an old
maintainer, had that account dropped from the package, then emailed
current maintainer Jordan Harband claiming npm had removed them for
missing 2FA. Re-adding the account let the attackers publish the next
morning. Same phishing campaign as eslint-config-prettier. Malicious
code sat unnoticed for about six hours. StepSecurity write-up; Harband
posted the sequence on Bluesky.

Mapped techniques

supply-chain social-engineered maintainer restore

T0113 · Initial Access · Compromised user account

Old maintainer npm account phished.

T0137 · Initial Access · Weak authentication methods

Ownership restore via a 2FA-removal story, no extra verification.

T0121 · Resource Development · Compromised legitimate artifact

is 3.3.1 and 5.0.0 on npm.

T0109 · Resource Development · Publish malicious artifact

Published from a restored maintainer session.

Sources