Zum Hauptinhalt springen
Supply Chain Attack Exposes Over 2 Billion

Supply Chain Attack gefährdet über 2 Milliarden Downloads

Ein NPM Supply Chain Attack infizierte verbreitete JavaScript-Bibliotheken mit Malware. 2.6 Milliarden wöchentliche Downloads sind betroffen; Entwickler müssen prüfen.

Geschrieben von
Eliza Crichton-Stuart
Aktualisiert
Lesezeit
4 Min.
Thema
News
Supply Chain Attack Exposes Over 2 Billion
Werbung

Am 8. September traf ein schwerwiegender Software-Supply-Chain-Angriff das NPM-Ökosystem und kompromittierte mehrere weit verbreitete JavaScript-Bibliotheken. Der Breach wurde erstmals bekannt, als Charles Guillemet, Chief Technology Officer von Ledger, davor warnte, dass der Node Package Manager-Account eines vertrauenswürdigen Entwicklers gehackt wurde. Erste Schätzungen gingen von über einer Milliarde Downloads aus, doch weitere Analysen ergaben, dass die kompromittierten Pakete tatsächlich mehr als 2.6 Milliarden wöchentliche Downloads repräsentieren.

Supply Chain Attack Exposes Over 2 Billion

Supply Chain Attack Exposes Over 2 Billion

Supply Chain Attack Exposes Over 2 Billion

Der Angriff zielte auf den Account eines Entwicklers namens „qix“ ab, der mehrere populäre JavaScript-Bibliotheken pflegt, darunter chalk, strip-ansi, color-convert und debug. Diese Bibliotheken finden sich in zahllosen Projekten, die sowohl Server-Side- als auch Front-End-Umgebungen umfassen. Die Angreifer verschafften sich über eine gefälschte Support-E-Mail Zugang und schleusten bösartige Updates in etwa 18 Pakete ein. Automatisierte Dependency-Installationen ermöglichten es der Malware, sich innerhalb weniger Stunden rasant zu verbreiten.

Guillemet erklärte, dass der Schadcode bei Transaktionen im Hintergrund Kryptowährungs-Wallet-Adressen austauschte. Nutzer, die sich auf Software-Wallets verlassen, liefen Gefahr, Gelder zu verlieren, wenn sie Transaktionen bestätigten, ohne die manipulierte Empfängeradresse zu bemerken.

Malware Crypto Clipper und MetaMask

Sicherheitsforscher klassifizierten die Malware als „Crypto Clipper“. Sie ersetzt Wallet-Adressen in verschiedenen Phasen einer Transaktion. Wenn kein Wallet erkannt wird, modifiziert die Malware ausgehende Daten innerhalb dezentraler Anwendungen, indem sie sich in Browser-Funktionen wie fetch und XMLHttpRequest einklinkt, um Adressen innerhalb der Anwendungsdaten zu scannen und zu verändern.

Ist eine Wallet-Extension wie MetaMask vorhanden, fängt die Malware die Transaktion vor dem Signieren ab. Sie modifiziert die Wallet-Adresse im Arbeitsspeicher, sodass dem Nutzer beim Überprüfen der Transaktion die betrügerische Adresse angezeigt wird. Die Malware verwendet den Levenshtein-Algorithmus, um Adressen zu generieren, die dem Original täuschend ähnlich sehen, was die Erkennung der Manipulation erschwert.

Supply Chain Attack Exposes Over 2 Billion

Supply Chain Attack Exposes Over 2 Billion

Erste Anzeichen des Angriffs

Entwickler bemerkten den Angriff erstmals, als Build-Systeme eine unerwartete Fehlermeldung ausgaben. Die Untersuchung einer Dependency namens error-ex enthüllte obfuskierten Code, der eine verdächtige Funktion namens checkethereumw enthielt, was auf ein gezieltes Vorgehen gegen Ethereum-Wallets hindeutete. Analysten bestätigten, dass die Malware Referenzen auf Wallet-Adressen über mehrere Blockchains hinweg enthielt, darunter Bitcoin, Ethereum, Solana, Tron, Litecoin und Bitcoin Cash.

Zu den betroffenen Paketen gehören einige der am häufigsten verwendeten im JavaScript-Ökosystem. Chalk verzeichnet mehr als 300 Millionen wöchentliche Downloads, debug mehr als 350 Millionen und strip-ansi mehr als 260 Millionen. Zusammengerechnet kommen die kompromittierten Bibliotheken auf mehr als 2.6 Milliarden Downloads pro Woche, was das Ausmaß der Auswirkungen auf die Entwickler-Community verdeutlicht.

Hardware- vs. Software-Wallets

Viele der infizierten Bibliotheken stehen nicht in direktem Zusammenhang mit Kryptowährungsprojekten, doch ihre Integration in Dependency-Chains bedeutet, dass selbst unbeteiligte Anwendungen gefährdet gewesen sein könnten. Projekte, die mit Kryptowährungs-Wallets und dezentralen Anwendungen interagieren, sind dem höchsten Risiko ausgesetzt.

Guillemet merkte an, dass Nutzer von Hardware-Wallets mit Clear-Signing-Funktionen weiterhin sicher sind, da diese Geräte die Überprüfung jeder Transaktion vor der Bestätigung ermöglichen. Nutzer von Software-Wallets sind einem größeren Risiko ausgesetzt und sollten äußerste Vorsicht walten lassen, bis die Dependencies vollständig überprüft und abgesichert wurden.

Aufspüren des Angreifers und gestohlene Gelder

Die Kryptowährungs-Adressen des Angreifers wurden identifiziert und werden durch die Transparenz öffentlicher Blockchains aktiv überwacht. Eine primäre Ethereum-Adresse, die mit der Operation in Verbindung steht, lautet 0xFc4a4858bafef54D1b1d7697bfb5c52F4c166976, zusammen mit mehreren Backup-Adressen. Zum Zeitpunkt der Berichterstattung waren die gestohlenen Gelder noch nicht bewegt worden. Dieses Monitoring ermöglicht eine fortlaufende Analyse, auch wenn das volle Ausmaß der gestohlenen Vermögenswerte noch unklar ist.

Supply Chain Attack Exposes Over 2 Billion

Supply Chain Attack Exposes Over 2 Billion

JavaScript und die Rolle der Community

Die JavaScript- und Web3-Communities reagierten schnell, um den Vorfall einzudämmen. Bösartige Versionen der kompromittierten Pakete wurden weitgehend aus dem Registry entfernt, doch es bestehen weiterhin Risiken für Projekte, die sich möglicherweise noch auf veraltete Versionen in ihren Lockfiles verlassen. Entwickler werden dringend dazu aufgefordert, ihre Dependencies zu auditieren, sichere Versionen festzulegen und saubere Builds neu zu installieren, um weitere Gefährdungen zu verhindern.

Sicherheitsexperten empfehlen Entwicklern, Anmeldedaten zu rotieren, eine Zwei-Faktor-Authentifizierung für Accounts wie NPM und GitHub zu erzwingen und deterministische Installationsmethoden wie npm ci zu verwenden, um eine strikte Versionskontrolle aufrechtzuerhalten. Nutzer sollten alle Kryptowährungstransaktionen sorgfältig prüfen, insbesondere bei der Verwendung von Software-Wallets.

Fazit

Dieser Vorfall zählt zu den umfangreichsten Breaches, die das NPM-Ökosystem je getroffen haben. Obwohl die Reaktion der Community relativ schnell erfolgte, offenbart der Angriff die Fragilität moderner Software-Supply-Chains und die Risiken, die durch die weit verbreitete Abhängigkeit von Open-Source-Komponenten entstehen.

Wie Guillemet betonte, bleibt die Überprüfung jeder Transaktion vor dem Signieren unerlässlich. Der Breach zeigt, dass selbst kleine Bibliotheken, die tief in der Anwendungsinfrastruktur eingebettet sind, bei einer Kompromittierung zu signifikanten Angriffsvektoren werden können. Für Entwickler wie Nutzer ist ständige Wachsamkeit nun ein entscheidender Teil der Sicherheit im Web3- und Softwareentwicklungs-Ökosystem.

Werbung