npm Lieferkettenangriff trifft @antv: Blockchain-Entwicklungsgeheimnisse jetzt offengelegt
Crypto Scams

npm Lieferkettenangriff trifft @antv: Blockchain-Entwicklungsgeheimnisse jetzt offengelegt

Von germanlbn

Mini-Shai-Hulud-npm-Kampagne kompromittiert @antv-Pakete und zielt auf GitHub-Token, AWS-Schlüssel und CI/CD-Geheimnisse von Blockchain-Entwicklern in einem koordinierten Supply-Chain-Angriff ab.

Die bösartigen Veröffentlichungen begannen kurz vor 2 Uhr UTC am 19. Mai. Als die meisten Entwickler an der Ostküste ihren ersten Kaffee tranken, war der Schaden bereits angerichtet.

Das Threat-Research-Team von Socket verfolgt einen aktiven npm-Supply-Chain-Angriff, der Pakete aus der gesamten antv-Visualisierungssuite kompromittiert. Das betroffene npm-Maintainer-Konto atool kontrolliert eine breite Palette von Datenvisualisierungs- und Grafikpaketen, die in Blockchain-Entwicklertools stark genutzt werden. Zu den markierten Paketen gehören: antv/g2, antv/g6, antv/x6, antv/l7, antv/s2, antv/f2 und verwandte Tools außerhalb des antv-Namensraums, darunter timeago.js, size-sensor und canvas-nest.js.

echarts-for-react steht im Zentrum der Offenlegung. Dieses Paket hat etwa 1,1 Millionen wöchentliche Downloads. Socket hat eine bösartige Version, 3.2.7, als bekannte Malware markiert, wobei das kompromittierte Artefakt laut den eigenen Paketregisterdaten von Socket nur 19 Minuten vor der Erkennung veröffentlicht wurde.

639 Versionen. Eine Nacht. Immer noch kein Ende.

Das Zeitfenster der Aktivität war eng. Die bösartigen Veröffentlichungen begannen gegen 01:56 UTC und endeten etwa um 02:56 UTC. Sockets Erkennungssysteme erfassten den Großteil innerhalb von sechs bis zwölf Minuten nach der Veröffentlichung. Die mediane Erkennungszeit lag laut der internen Überprüfung des Unternehmens, veröffentlicht auf socket.dev, bei etwa 6,7 Minuten.

Im gesamten Mini-Shai-Hulud-Feldzug hat Socket nun 1.055 kompromittierte Versionen in 502 eindeutigen Paketen verfolgt. Der Feldzug erstreckt sich über npm, PyPI und Composer. npm macht fast alles aus: 1.048 Versionen in 498 eindeutigen Paketen, wobei PyPI und Composer nur eine Handvoll beitragen.

Die betroffenen Pakete in dieser Nacht umfassten auch Namespaces außerhalb von antv. Pakete unter lint-md, openclaw-cn und starmind erhielten in derselben Welle bösartige Updates. Die von diesem Reporter eingesehenen CSV-Daten zeigen Pakete wie antv/x6 Versionen 3.2.7 und 3.3.7, antv/g2 Versionen 5.5.8 und 5.6.8, antv/g6, antv/g2plot, antv/s2 und Dutzende weitere, die alle im selben einstündigen Fenster veröffentlicht wurden.

Quelle: socket.dev.

Was die Payload tatsächlich tut

Der injizierte Code macht keinen Hehl aus seinen Zielen. Eine index.js-Datei auf der Stammebene modifiziert package.json, um sich selbst zur Installationszeit über einen Preinstall-Hook auszuführen: bun run index.js.

Die Schichten der String-Verschleierung sind tief. Die Payload verwendet eine große Nachschlagetabelle, Laufzeit-String-Dekodierung und einen benutzerdefinierten Entschlüsseler, der als fc2edea72 unter globalThis registriert ist. Die Dekodierung zeigt den Exfiltrations-Endpunkt: https://t[.]m-kosche[.]com:443/api/public/otel/v1/traces. Die gesammelten Daten werden mit gzip komprimiert, mit AES-256-GCM verschlüsselt und der AES-Schlüssel selbst wird vor der Übertragung mit RSA-OAEP und SHA-256 verpackt. Das Abfangen dieses Datenverkehrs aus der Netzwerktelemetrie ist nicht einfach.

Die Payload jagt speziell nach Geheimnissen aus der Entwicklerumgebung. GitHub-Token, npm-Token, AWS-Anmeldeinformationen, Materialien von Kubernetes-Servicekonten, Vault-Token, private SSH-Schlüssel, Docker-Authentifizierungsdateien und Datenbankverbindungszeichenfolgen erscheinen alle in der Zielliste. Sie enthält auch explizite Logik für 19 CI/CD-Plattformen, darunter GitHub Actions, GitLab CI, CircleCI, Jenkins, Azure DevOps, AWS CodeBuild, Buildkite, Vercel und Netlify.

Diese Liste liest sich wie ein Einkaufswagen. Kein Überwachungstool.

GitHub-Repositories, Dune-Namen und ein Wurm mit Ambitionen

Es gibt einen GitHub-Fallback-Exfiltrationspfad für Fälle, in denen der primäre HTTPS-Endpunkt blockiert wird. Wenn die Payload ein nutzbares GitHub-Token erhält, erstellt sie ein Repository unter dem Konto des Opfers und committet gestohlene Daten in ein Verzeichnis results/. Die Dateinamen folgen einem Muster results-timestamp-counter.json. Socket hat dieses Verhalten bereits in früheren Mini-Shai-Hulud-Wellen dokumentiert.

Öffentliche GitHub-Suchergebnisse für die umgekehrte Markierungsphrase zeigen derzeit etwa 1.800 Repositorys, basierend auf Screenshots aus dem Socket-Bericht. Repository-Namen folgen Dune-thematischen Mustern: sayyadina-stillsuit-852, atreides-ornithopter-112, harkonnen-phibian-552. Ein beobachtetes Repository, Zaynex/sayyadina-stillsuit-852, enthält ein results/-Verzeichnis, das mit aktiver Exfiltration konsistent ist.

Es ist auch Wurm-Logik eingebaut. Das Paket validiert npm-Token über Registry-APIs, zählt wartbare Pakete auf, injiziert den Preinstall-Hook, erhöht Versionsnummern und veröffentlicht dann unter der Identität des kompromittierten Maintainers neu. Entwickelt, um sich zu verbreiten, nicht nur zu stehlen.

Frühere Mini-Shai-Hulud-Varianten trafen TanStack-Pakete und Intercom-bezogene Tools. Unterschiedliche Dateinamen, unterschiedliche C2-Endpunkte. Diese Welle verwendet eine index.js auf Stammebene und einen kleineren Payload-Body. Das Kernverhalten ist über die Varianten hinweg gleich. Socket behandelt dies als dieselbe Kampagnenfamilie.

Die Bedrohung ist für Krypto-Infrastruktur nicht theoretisch. Blockchain-Entwickler, die DeFi-Tools oder Web3-Dashboards erstellen, verwenden häufig antv-Charting-Bibliotheken zur Visualisierung von On-Chain-Daten. Eine kompromittierte CI/CD-Pipeline bei einem DeFi-Projekt könnte Berechtigungsnachweise von Deployern oder Protokoll-Admin-Zugänge offenlegen. Socket sagt, die Untersuchung sei noch nicht abgeschlossen.

germanlbn

Über den Autor

germanlbn

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert