Axios npm-Konto gehackt: RAT über Phantom-Abhängigkeit und Claude-Code-Leak
Am 31. März 2026 übernahmen Angreifer das npm-Konto des Axios-Maintainers (jasonsaayman) und veröffentlichten bösartige Versionen 1.14.1 (aktuell) und 0.30.4 (Legacy). Die Pakete verteilten drei Stunden lang – von 00:21 bis 03:15 UTC – einen RAT-Trojaner. Bei 100 Millionen wöchentlichen Downloads war das potenzielle Schadensausmaß enorm.
Der Axios-Code selbst blieb unberührt. Die Angreifer fügten eine Abhängigkeit von [email protected] in package.json hinzu – ein Paket, das einen Tag vor dem Angriff erstellt wurde. Diese Abhängigkeit wird im Code nicht importiert und fungiert als Phantom-Abhängigkeit.
Angriffsmechanismus
Die Installation verläuft wie folgt:
npm installlädt alle Abhängigkeiten auspackage.jsonherunter.plain-crypto-jsführt einpostinstall-Skript aus.- Das Skript lädt eine Payload von einem C2-Server herunter.
- Ein plattformübergreifender RAT für macOS, Windows und Linux wird eingesetzt.
- Das Skript stellt eine saubere
package.jsonwieder her und vertuscht Spuren.
Eine Standard-Code-Review erkennt das Problem nicht: Die JS-Dateien sind sauber, und die verdächtige Abhängigkeit ist nur im Manifest sichtbar. Scanner müssen postinstall-Skripte transitiver Pakete prüfen.
Sofortmaßnahmen
| Branch | Bösartige Version | Sichere Version |
|--------|-------------------|--------------|
| aktuell | 1.14.1 | 1.14.0 |
| Legacy | 0.30.4 | 0.30.3 |
Prüfen Sie:
package-lock.json/yarn.lockauf bösartige Versionen.- Vorhandensein von
plain-crypto-jsin den Abhängigkeiten.
Wenn gefunden – das System ist infiziert. Rotieren Sie Schlüssel, Token und Geheimnisse. IOCs wurden von StepSecurity, Socket und anderen veröffentlicht.
Zugeschrieben UNC1069/Lazarus – ein typischer Supply-Chain-Angriff über Konto-Übernahme ohne Kompromittierung des npm-Registry.
Claude-Code-Quelltext-Leak über Sourcemap
Am selben Tag veröffentlichte Anthropic @anthropic-ai/[email protected] mit einer 59,8 MB großen cli.js.map-Datei. Die Sourcemap enthüllte ~512.000 Zeilen TypeScript, 1.900 Dateien, System-Prompts, Speicherlogik, Planung und unangekündigte Funktionen.
Ursache und Folgen
Ein Fehler in .npmignore: Sourcemaps wurden nicht vom Paket ausgeschlossen. Die Sourcemap verwies auf einen öffentlichen R2-Bucket von Anthropic. Der Code wurde nach einem Bericht von Chaofan Shou schnell auf GitHub gespiegelt.
Anthropic löschte die Version und veröffentlichte einen Patch, aber Spiegelungen verbreiteten sich. Dies war kein Hack, sondern ein Build-Fehler.
Clean-Room-Implementierung: Vom Leak zum Open-Source-Projekt
Sigrid Jean (instructkr) schrieb die Claude-Code-Architektur in Python neu, ohne den Quellcode zu kopieren, und umging so DMCA. Nutzte oh-my-codex für Beschleunigung.
Implementiert:
- Agent-Harness.
- Tools.
- Speicher und Planung.
- Schwarm-Sub-Agenten.
Das claw-code-Repository erhielt 50.000 Sterne in 2 Stunden, über 100.000 an einem Tag – ein GitHub-Rekord. Ein Rust-Port ist ebenfalls beliebt. Das Projekt positioniert sich als verbesserte Harness-Tools.
Wichtige Erkenntnisse
- Phantom-Abhängigkeit in Axios: RAT tarnt sich als Krypto-Bibliothek, wird über postinstall aktiviert, plattformübergreifend.
- Claude-Code-Leak: 512k Zeilen über Sourcemap aufgrund fehlender .npmignore.
- Clean-Room-Ansatz: Neuimplementierung der Architektur in Python/Rust umgeht DMCA, schafft offene Alternative.
- Lock-Datei-Prüfungen: Essenziell, um 1.14.1/0.30.4 und plain-crypto-js zu erkennen.
- npm-Konto-Audits: Maintainer-Hijacking ist ein Vektor für Supply-Chain-Angriffe.
— Editorial Team
Noch keine Kommentare.