Skip to content
Briefings are running a touch slower this week while we rebuild the foundations.See roadmap
Plain-Crypto-Js
Technology

Plain-Crypto-Js

Malicious npm package injected by UNC1069 into Axios, carrying the WAVESHAPER.V2 backdoor.

Last refreshed: 8 May 2026 · Appears in 1 active topic

Timeline for plain-crypto-js

#35 May

Introduced into Axios versions v1.14.1 and v0.30.4 as the delivery vehicle for WAVESHAPER.V2

Cybersecurity: Threats and Defences: UNC1069 planted WAVESHAPER.V2 in Axios via maintainer phishing
View full timeline →
Common Questions
What is the plain-crypto-js malicious npm package?
plain-crypto-js is a malicious npm package published by threat actor UNC1069 and injected into Axios versions 1.14.1 and 0.30.4 via a compromised maintainer account. When installed, it deploys the WAVESHAPER.V2 backdoor on the victim's system.Source: event
How was Axios compromised in 2026?
UNC1069 phished the Axios npm maintainer's account, then published malicious versions (1.14.1 and 0.30.4) that included plain-crypto-js as a dependency. This package installed the WAVESHAPER.V2 backdoor on any system that installed the affected Axios versions.Source: event
How do malicious npm packages get into popular libraries?
Attackers typically compromise a maintainer's npm account (via phishing or credential theft), publish a backdoored version of the package, or create a malicious package with a convincing name. In the Axios attack, UNC1069 phished the maintainer and injected plain-crypto-js as a hidden dependency.

Background

`plain-crypto-js` is a malicious npm package created and published by UNC1069 as part of a supply-chain attack targeting the npm ecosystem. The package was injected as a dependency into the Axios HTTP client library — one of the most widely used JavaScript/Node.js packages globally — by compromising the Axios maintainer's npm account via a phishing campaign . The malicious dependency was present in Axios versions 1.14.1 and 0.30.4. When developers or automated build pipelines installed these Axios versions, `plain-crypto-js` was also installed and executed, deploying the WAVESHAPER.V2 backdoor onto the developer's machine or CI/CD environment.

The package name `plain-crypto-js` was chosen to appear as a plausible cryptographic utility dependency — a common category of npm package — reducing the chance that a developer reviewing a lock-file diff would flag it as suspicious. This typosquatting-adjacent naming is a standard technique in npm supply-chain attacks, alongside dependency confusion and maintainer account compromise.

The incident is part of a persistent pattern of UNC1069 activity targeting software development infrastructure. Developer endpoints and CI/CD systems are high-value targets: compromising them gives threat actors access to source code, secrets stored in environment variables, cloud credentials used for deployment, and — through automated build pipelines — potentially the production artefacts themselves.

Source Material