axios Supply Chain RAT (BlueNoroff/Lazarus) — Scanned with SUNGLASSES v0.1.1 | April 1, 2026
On March 31, 2026, the npm package axios (~83M weekly downloads) was compromised via maintainer account hijack. Malicious versions 1.14.1 and 0.30.4 deployed a cross-platform Remote Access Trojan attributed to BlueNoroff (Lazarus Group) — a North Korean state-sponsored threat actor.
The same day, Anthropic accidentally leaked Claude Code's full source (512K lines). Anyone who installed Claude Code or its forks during a 3-hour window may have pulled the compromised axios.
We obtained the real deobfuscated malware source (460 lines, JavaScript) and scanned it with SUNGLASSES v0.1.1.
[email protected] — typosquat of crypto-js. Contains obfuscated dropper.[email protected] published to npm. Adds plain-crypto-js as dependency with postinstall hook.npm install pulls the RAT. Concurrent with Claude Code source leak.45.128.52.14:1224 identified. Attribution: BlueNoroff.Category: supply_chain | ID: GLS-SC-002
Code accessing well-known credential file paths — signature of credential-stealing malware.
~/.config/solana/id.json)exodus.wallet/)Login Data)login.keychain-db)Category: supply_chain | ID: GLS-SC-004
Accessing browser extension storage and profile data — targets crypto wallets and saved passwords across Chrome, Brave, and Opera.
Category: supply_chain | ID: GLS-SC-007
Anti-debugging technique — code that crashes debuggers and analysis tools to prevent reverse engineering. The RAT uses recursive debugger constructor calls with an infinite setInterval loop.
Scans every Chrome/Brave/Opera/Edge profile (up to 200 each) for saved passwords, extension data, and wallet keys. Targets 21 specific crypto wallet extension IDs including MetaMask, Phantom, and Coinbase Wallet.
All stolen data is POSTed as multipart form data to http://45.128.52.14:1224/uploads (AS44477, Stark Industries Solutions). Each upload is tagged with hostname and timestamp.
Downloads a ~51MB archive from the C2 server, extracts it, then fetches and executes a Python script from /client/39/391. Platform-specific: macOS gets a Mach-O binary (NukeSped family), Windows gets PowerShell, Linux gets Python RAT.
Recursive debugger traps via setInterval(f3, 4000) — crashes any attached debugger every 4 seconds. Uses Function constructor to generate debugger calls dynamically.
The postinstall hook runs automatically on npm install. The dropper (setup.js) self-deletes after execution and replaces its package.json with a clean stub — making forensic detection harder.
BlueNoroff / Lazarus Group (HIGH confidence)
macWebT links to BlueNoroff's documented webT module (RustBucket campaign, 2023)Sources: Mandiant/Google Cloud, Elastic Security Labs, Datadog Security Labs, Microsoft Security Blog
| Scanner | SUNGLASSES v0.1.1 |
| Patterns | 61 attack patterns (53 prompt injection + 8 supply chain), 334 keywords, 13 languages |
| Scan Mode | FAST (pattern matching, file channel) |
| Scan Time | 3.67ms |
| Scanned File | real_axios_deobfuscated.js (460 lines, deobfuscated from [email protected]) |
| Data Sent | None. Everything runs locally on your machine. |
| False Positives | 0 (validated against 66-test suite including normal files, CSS, API responses) |
| Source | github.com/sunglasses-dev/sunglasses |