Axios NPM Supply Chain Kompromittierung

(PresseBox) - Am 30. März 2026 wurde das weit verbreitete NPM-Paket axios durch nordkoreanische Angreifer kompromittiert. Über einen übernommenen Maintainer-Account veröffentlichten sie zwei manipulierte Versionen, die den Remote-Access-Trojaner „WAVESHAPER.V2“ für Windows, macOS und Linuxenthielten.
Enginsight nutzt das Paket ebenfalls, hatte die spezifische, kompromittierte Version (1.14.1) aber nicht installiert und ist somit nicht betroffen!
Betroffene Versionen und Sicherheitskennungen
Zwei manipulierte axios-Versionen wurdenüber den kompromittierten Account veröffentlicht, beide mit einer neuen bösartigen Abhängigkeit plain-crypto-js:
Sichere Versionen: axios(at)1.14.0 (letztes legitimes 1.x-Release) und axios(at)0.30.3 (letztes legitimes 0.x-Release). Weitere betroffene Pakete im Ökosystem: (at)shadanai/openclaw (mehrere Versionen) und (at)qqbrowser/openclaw-qbot(at)0.0.130, die den manipulierten axios transitiv auslieferten.
Ablauf des Angriffs
Die Angriffskette begann mit der Vorbereitung einer bösartigen Abhängigkeit. Der Angreifer veröffentlichte zunächst das Paket plain-crypto-js als nahezu identischen Klon von crypto-js, um Vertrauen aufzubauen und eine unauffällige Historie in der npm-Registry zu erzeugen. Wenige Stunden später folgte eine neue Version, die ein manipuliertes postinstall-Skript enthielt.
Anschließend wurden zwei scheinbar legitime axios-Versionen veröffentlicht. Der einzige Unterschied bestand darin, dass sie die präparierte Abhängigkeit plain-crypto-js einbanden. Der eigentliche Schadcode befand sich somit nicht direkt in axios, sondern versteckt in dieser transitiven Abhängigkeit.
Beim Ausführen von npm install wurde automatisch das bösartige postinstall-Skript gestartet. Dieses war stark verschleiert, entschlüsselte sich zur Laufzeit und lud benötigte Systemfunktionen dynamisch nach. Danach identifizierte es das Betriebssystem und nahm Kontakt zu einem Command-&-Control-Server auf.
Im nächsten Schritt wurde je nach Plattform ein passender Remote-Access-Trojaner nachgeladen und ausgeführt. Dabei nutzte der Angreifer Tarntechniken, etwa unauffällige Domainnamen, um die Kommunikation weniger verdächtig erscheinen zu lassen.
Abschließend führte die Malware Anti-Forensik-Maßnahmen durch. Dabei löschte das Installationsskript sich selbst und manipulierte Dateien so, dass die Installation wie eine harmlose Version wirkte. Sicherheitsprüfungen wie npm audit schlugen daher nicht an. Der einzige verbleibende Hinweis auf eine Kompromittierung war das Vorhandensein des verdächtigen Pakets im node_modules-Verzeichnis.
Indicators of Compromise
Malicious npm Packages
axios(at)1.14.1· shasum: 2553649f2322049666871cea80a5d0d6adc700ca
axios(at)0.30.4· shasum: d6f3f62fd3b9f5432f5782b62d8cfd5247d5ee71
plain-crypto-js(at)4.2.1· shasum: 07d889e2dadce6f3910dcbc253317d28ca61c766
Network Indicators
C2 domain· sfrclak.com
C2 IP· 142.11.206.73
C2 URL· http://sfrclak.com:8000/6202033
C2 POST body (macOS)· packages.npm.org/product0
C2 POST body (Windows)· packages.npm.org/product1
C2 POST body (Linux)· packages.npm.org/product2
File System Indicators
macOS· /Library/Caches/com.apple.act.mond
Windows (persistent)· %PROGRAMDATA%wt.exe
Windows (temp, self-deletes)· %TEMP%6202033.vbs
Windows (temp, self-deletes)· %TEMP%6202033.ps1
Linux· /tmp/ld.py
Attacker-Controlled Accounts
jasonsaayman· compromised legitimate axios maintainer, email changed to ifstap(at)proton.me
nrwise· attacker-created account, nrwise(at)proton.me, published plain-crypto-js
Quelle: https://www.stepsecurity.io/blog/axios-compromised-on-npm-malicious-versions-drop-remote-access-trojan#indicators-of-compromise
Erkennung durch Enginsight SIEM
Die Streams wurden anhand der unten aufgeführten Quellen erarbeitet. Da das Paket nicht mehr zur Verfügung steht, konnten bisher keine Tests durchgeführt werden.
Kill Chain Windows:
Der Entwickler hat auf axios(at)1.14.1 aktualisiert, wodurch automatisch der postinstall- Hook,über das Paket plain-crypto-js ausgeführt wird. Dadurch erzeugt node eine cmd.exe oder cscript.exe als Kindprozess
sysmon.EventID:"1"AND sysmon.ParentImage_str:"node"AND (sysmon.Image_str:"cmd.exe"OR sysmon.Image_str:"cscript.exe")
Es wird eine Verbindung zum C2 Server aufgebaut (siehe Indicators of Compromise) sysmon.EventID:"3"AND gen.dest.ip_str:"142.11.206.73"AND (gen.dest.port:"8000"OR gen.dest.port:"3000")
Es wird eine unbenannte Powershell-Kopie wt.exe und eine versteckte Batch Datei system.bat (als Fallback Loader) in %PROGRAMDATA% abgelegt. %PROGRAMDATA% erfordert keine Admin-Rechte und wird von vielen AV-Lösungen weniger restriktiv behandelt.
sysmon.EventID:"11"AND sysmon.TargetFilename_str:in("C:ProgramDatawt.exe","C:ProgramDatasystem.bat")
Als letzten Schritt schreibt der Dropper den Registry-Eintrag HKCUSoftwareMicrosoftWindowsCurrentVersionRunMicrosoftUpdate mit dem Wert %PROGRAMDATA%system.bat Damit wird sichergestellt, dass system.bat bei jedem Login des aktuellen Benutzers automatisch ausgeführt wird
sysmon.EventID:"13"AND sysmon.TargetObject_str:"CurrentVersionRunMicrosoftUpdate"
Quellen:
https://gist.github.com/N3mes1s/0c0fc7a0c23cdb5e1c8f66b208053ed6
https://www.elastic.co/security-labs/axios-one-rat-to-rule-them-all
Bereitgestellt von Benutzer: PresseBox
Datum: 30.04.2026 - 13:41 Uhr
Sprache: Deutsch
News-ID 2248371
Anzahl Zeichen: 0
Kontakt-Informationen:
Ansprechpartner: Sabine Kuch
Stadt:
Jena
Kategorie:
Softwareindustrie
Dieser Fachartikel wurde bisher 4 mal aufgerufen.
Der Fachartikel mit dem Titel:
"Axios NPM Supply Chain Kompromittierung"
steht unter der journalistisch-redaktionellen Verantwortung von
Enginsight GmbH (Nachricht senden)
Beachten Sie bitte die weiteren Informationen zum Haftungsauschluß (gemäß TMG - TeleMedianGesetz) und dem Datenschutz (gemäß der DSGVO).




