Cybersicherheitsforscher bei ReversingLabs entdeckten zwei Zeilen bösartigen Code in einem Update für ETHCode, einem Open-Source-Ethereum-Entwicklungstoolkit, das von etwa 6.000 Entwicklern verwendet wird. Der bösartige Code wurde durch eine GitHub Pull-Anfrage eingefügt, die erfolgreich sowohl die AI-Sicherheitsüberprüfungen als auch die menschliche Aufsicht umging, bevor er auf Entwickler-Systeme verteilt wurde.
Was Sie wissen sollten:
- Ein Hacker ohne vorherige GitHub-Historie fügte Malware in ETHCode durch eine 43-Commit-Pull-Anfrage mit 4.000 aktualisierten Zeilen ein.
- Der bösartige Code war darauf ausgelegt, Skripte herunterzuladen und auszuführen, die Krypto-Vermögenswerte stehlen oder Smart Contracts kompromittieren könnten.
- Sowohl GitHub's KI-Prüfer als auch das Entwicklungsteam erkannten den ausgeklügelten Angriff nicht, was Bedenken hinsichtlich der Sicherheitspraxis bei Open-Source-Projekten aufwirft.
Angriff im Detail
Die bösartige Pull-Anfrage wurde am 17. Juni von einem Benutzer namens Airez299 eingereicht, der keine vorherige Beitragshistorie auf der Plattform hatte. Forscher von ReversingLabs fanden heraus, dass der Angreifer den bösartigen Code erfolgreich verschleierte, indem er ihm einen Namen gab, der bestehenden Dateien ähnelte, und die eigentliche Code-Struktur verschleierte.
Die erste Zeile des bösartigen Codes war darauf ausgelegt, sich nahtlos in legitime Dateien einzufügen. Die zweite Zeile fungierte als Aktivierungsmechanismus, der letztlich eine PowerShell-Funktion erzeugte, die Batch-Skripte von öffentlichen File-Hosting-Diensten herunterladen und ausführen sollte.
Sowohl GitHub's automatisierter KI-Prüfer als auch Mitglieder von 7finney, die Gruppe, die ETHCode wartet, analysierten das umfangreiche Code-Update. Während des Überprüfungsprozesses wurden nur geringfügige Änderungen angefordert, wobei weder menschliche Prüfer noch automatisierte Systeme das eingebettete Malware als verdächtig kennzeichneten.
Potenzieller Einfluss auf Tausende von Systemen
ETHCode dient als umfassende Suite von Werkzeugen, die Ethereum-Entwickler in die Lage versetzt, Smart Contracts zu erstellen und bereitzustellen, die mit der Ethereum Virtual Machine kompatibel sind. Das kompromittierte Update wäre über Standard-Update-Mechanismen automatisch an Benutzer-Systeme verteilt worden.
ReversingLabs-Forscher Petar Kirhmajer sagte gegenüber Decrypt, dass das Unternehmen keine Hinweise darauf gefunden hat, dass der bösartige Code tatsächlich ausgeführt wurde, um Token oder Daten zu stehlen. Das potenzielle Ausmaß des Angriffs bleibt jedoch signifikant, angesichts der Benutzerbasis des Tools.
"Die Pull-Anfrage könnte sich auf Tausende von Entwickler-Systemen ausgebreitet haben," stellte Kirhmajer im Forschungsblog fest. ReversingLabs untersucht weiter die genaue Funktionalität der heruntergeladenen Skripte und geht davon aus, dass sie "dazu gedacht waren, Krypto-Vermögenswerte auf dem Rechner des Opfers zu stehlen oder alternativ die Ethereum-Verträge, an denen sich Benutzer der Erweiterung gerade in der Entwicklung befinden, zu kompromittieren."
Der Angriff stellt einen ausgeklügelten Kompromiss in der Lieferkette dar, der das in Open-Source-Entwicklungsprozessen inhärente Vertrauen ausnutzte.
Experten warnen vor weitverbreiteter Verwundbarkeit
Ethereum-Entwickler und NUMBER GROUP-Mitbegründer Zak Cole betonte, dass diese Art von Angriff breitere Sicherheitsherausforderungen widerspiegelt, denen sich das Krypto-Entwicklungs-Ökosystem gegenübersieht. Viele Entwickler installieren Open-Source-Pakete, ohne gründliche Sicherheitsüberprüfungen durchzuführen.
"Es ist viel zu einfach für jemanden, etwas Bösartiges einzuschleusen," sagte Cole gegenüber Decrypt. "Es könnte ein npm-Paket, eine Browser-Erweiterung oder was auch immer sein."
Die starke Abhängigkeit der Kryptowährungsindustrie von Open-Source-Entwicklung schafft eine sich erweiternde Angriffsfläche für böswillige Akteure. Cole wies auf jüngste hochkarätige Vorfälle hin, darunter den Ledger Connect Kit-Exploit vom Dezember 2023 und Malware, die in der Solana's web3.js-Bibliothek entdeckt wurde.
"Es gibt zu viel Code und nicht genug Augen, die ihn überprüfen," fügte Cole hinzu. "Die meisten Leute nehmen einfach an, dass etwas sicher ist, weil es populär ist oder schon eine Weile existiert, aber das bedeutet gar nichts."
Cole stellte fest, dass sich die adressierbare Angriffsfläche weiter vergrößert, da immer mehr Entwickler Open-Source-Tools annehmen. Er hob auch die Beteiligung staatlich geförderter Akteure an diesen Angriffen hervor.
"Man sollte auch beachten, dass es ganze Lagerhallen voller DPRK-Operative gibt, deren Vollzeit-Job es ist, diese Exploits auszuführen," sagte Cole.
Sicherheitsempfehlungen für Entwickler
Trotz der ausgeklügelten Natur des Angriffs glauben Sicherheitsexperten, dass erfolgreiche Kompromittierungen relativ selten bleiben. Kirhmajer schätzte, dass "erfolgreiche Versuche sehr selten sind", basierend auf seiner Forschungserfahrung.
ReversingLabs empfiehlt, dass Entwickler die Identität und Beitragshistorie von Code-Beiträgern überprüfen, bevor sie Updates herunterladen oder implementieren. Das Unternehmen schlägt auch vor, package.json-Dateien und ähnliche Abhängigkeitserklärungen zu überprüfen, um neue Code-Beziehungen zu bewerten.
Cole plädierte für zusätzliche Sicherheitsmaßnahmen, einschließlich Abhängigkeits-Sperrung, um die automatische Aufnahme ungetesteter Code-Updates zu verhindern. Er empfahl die Verwendung automatisierter Scanning-Tools, die verdächtige Verhaltensmuster oder fragwürdige Wartungsprofile identifizieren können.
Entwickler sollten auch darauf achten, auf Pakete zu achten, die plötzlich den Besitzer wechseln oder unerwartete Updates veröffentlichen. Cole betonte die Wichtigkeit, getrennte Umgebungen für unterschiedliche Entwicklungsaktivitäten zu pflegen.
"Führen Sie auch keine Signatur-Tools oder Wallets auf demselben Rechner aus, den Sie für Ihre anderen Arbeiten benutzen," schloss Cole. "Gehen Sie einfach davon aus, dass nichts sicher ist, solange Sie es nicht überprüft oder in einer Sandbox hat."
Abschließende Gedanken
Dieser Vorfall unterstreicht die anhaltenden Sicherheitsherausforderungen, mit denen die Open-Source-Entwicklung von Kryptowährungen konfrontiert ist, wobei ausgeklügelte Angreifer Vertrauensmechanismen ausnutzen können, um Malware auf Tausende von Entwicklersystemen zu verteilen. Obwohl kein Hinweis darauf besteht, dass der bösartige Code erfolgreich ausgeführt wurde, zeigt der Angriff die Notwendigkeit für verbesserte Sicherheitspraktiken und Verifizierungsprozesse innerhalb des Kryptowährungs-Entwicklungsökosystems.