MalwareSupply-Chain-SicherheitSchwachstellen

Kritischer Malware-Fund in beliebtem Node.js-Paket gefährdet Entwickler-Secrets

Kritischer Malware-Fund in beliebtem Node.js-Paket gefährdet Entwickler-Secrets
Zusammenfassung

In drei aktuellen Versionen des beliebten npm-Pakets node-ipc haben Sicherheitsforscher von Socket und StepSecurity eine gefährliche Backdoor mit Stealer-Funktionalität entdeckt. Die betroffenen Versionen 9.1.6, 9.2.3 und 12.0.1 wurden von einem Konto namens "atiertant" veröffentlicht, das keine Verbindung zum ursprünglichen Entwickler hat und nach einer 21 Monate andauernden Pause plötzlich aktiv wurde. Die eingebettete Malware ist hochgradig obfuskiert und führt beim Laden des Pakets automatisch aus – sie sammelt systematisch Entwickler- und Cloud-Geheimnisse wie AWS-Zugangsdaten, SSH-Schlüssel, GitHub-Tokens und Datenbank-Passwörter und versucht, diese über versteckte Kanäle zu einem Kommando-und-Kontroll-Server zu exfiltrieren. Besonders bemerkenswert ist die Verwendung einer DNS-basierten Exfiltrationsmethode, die herkömmliche Sicherheitskontrollen umgeht. Da node-ipc millionenfach heruntergeladen wird und in vielen deutschen Entwicklungsprojekten sowie Unternehmensumgebungen zum Einsatz kommt, stellt diese Kompromittierung ein erhebliches Sicherheitsrisiko dar. Betroffene Entwickler und Organisationen müssen sofort reagieren, kompromittierte Versionen entfernen, ihre Zugangsdaten rotieren und ihre Cloud-Konten auf verdächtige Aktivitäten überprüfen.

Die entdeckte Malware operiert mit bemerkenswert sophistizierten Techniken. Im Gegensatz zu typischen npm-Angriffen nutzt sie keine Standard-Lifecycle-Hooks wie preinstall oder postinstall-Skripte. Stattdessen wird ein bösartiges Code-Fragment als sogenannte Immediately Invoked Function Expression (IIFE) direkt an die Datei “node-ipc.cjs” angehängt. Dies triggert die Malware automatisch bei jedem Laden des Pakets durch den Befehl require(’node-ipc’).

Besonders beachtlich ist ein Sicherheitsmechanismus des Angreifers: Die Version 12.0.1 führt zunächst eine SHA-256-Fingerprint-Kontrolle durch und vergleicht diese mit einem hart codierten Hash. Dies deutet darauf hin, dass der Angreifer einzelne Ziele im Voraus berechnet und präzise adressiert hat. Die älteren 9.x-Versionen hingegen führen die volle Malware-Routine auf jedem System aus, das sie lädt.

Die Datenexfiltration erfolgt über zwei Kanäle: Primär werden die komprimierten Daten per HTTPS-POST an die gefälschte Azure-Domain “sh.azurestaticprovider[.]net” übertragen. Zusätzlich nutzt die Malware DNS-TXT-Records zur Datenübertragung, nachdem sie den System-DNS-Resolver auf Google Public DNS (1.1.1.1 und 8.8.8.8) umgeleitet hat. Diese Technik umgeht lokale DNS-basierte Sicherheitskontrollen und hinterlässt keine Spuren in öffentlichen DNS-Logs – ein gezieltes Anti-Detection-Manöver.

Die Account-Übernahme von “atiertant” erfolgte nach einer 21-monatigen Pause seit der letzten legitimen Aktualisierung im August 2024. Das deutet entweder auf eine Credential-Kompromittierung oder eine absichtliche Hinzufügung als Maintainer hin.

Deutsche Entwickler und IT-Leiter sollten unverzüglich folgende Schritte einleiten: Die drei infizierten Versionen müssen deinstalliert und durch die sauberen Versionen 9.2.1 oder 12.0.0 ersetzt werden. Alle Credentials, SSH-Schlüssel und Cloud-Token, die auf betroffenen Systemen aktiv waren, müssen sofort rotiert werden. Zudem sollten npm-Publish-Aktivitäten überprüft und Cloud-IAM-Logs auf verdächtige Zugriffe analysiert werden. Der Egress-Traffic zur genannten C2-Domain muss blockiert werden. Unternehmen, bei denen personenbezogene oder geschäftskritische Daten offengelegt wurden, müssen die Meldepflicht nach DSGVO beachten.