Die Pflegerunde der Erweiterung führte die Ursache in einer am Montag veröffentlichten Warnmeldung auf einen ihrer Entwickler zurück. Dessen Rechner war bei einem kürzlichen Sicherheitsvorfall kompromittiert worden, bei dem seine GitHub-Zugangsdaten abflossen. Welcher Art dieser vorherige Vorfall war, wurde nicht offengelegt; die betroffenen Zugangsdaten wurden inzwischen vorübergehend gesperrt.
Mit diesen Zugangsdaten wurde laut den Betreuern ein verwaister, unsignierter Commit in das Repository nrwl/nx eingeschleust, der die Schadsoftware einbrachte. Die Schadfunktion wird ausgelöst, sobald ein Entwickler in VS Code einen beliebigen Arbeitsbereich öffnet. Daraufhin wird die JavaScript-Laufzeitumgebung Bun installiert, um einen verschleierten Schadcode in einer Datei „index.js" auszuführen.
Bevor die Schadsoftware aktiv wird, prüft sie, ob sich der Rechner vermutlich in einer russischen oder GUS-Zeitzone befindet, und verschont solche Systeme. Anschließend startet sie sich als abgekoppelter Hintergrundprozess und beginnt mit dem Einsammeln von Geheimnissen. Dabei greift sie Daten aus 1Password-Tresoren und aus Konfigurationen von Anthropic Claude Code ab sowie Geheimnisse rund um npm, GitHub und Amazon Web Services (AWS).
Besonders hebt StepSecurity eine Fähigkeit des Schadcodes hervor: Er enthält eine vollständige Sigstore-Integration einschließlich der Ausstellung von Fulcio-Zertifikaten und der Erzeugung von SLSA-Provenienznachweisen. In Verbindung mit gestohlenen npm-OIDC-Tokens könnten Angreifer damit nachgelagerte npm-Pakete mit gültigen, kryptografisch signierten Provenienznachweisen veröffentlichen. So ließen sich Schadpakete als legitime, verifizierte Builds tarnen.
Die Python-Hintertür auf macOS missbraucht die GitHub-Search-API als sogenannten Dead-Drop-Resolver, um weitere Befehle entgegenzunehmen. Das Nx-Team räumte ein, dass im Zuge des Vorfalls „einige Nutzer kompromittiert" wurden. Neben dem Aufruf zum Update auf Version 18.100.0 oder neuer veröffentlichten die Betreuer Kompromittierungsindikatoren.
Betroffenen Nutzern wird geraten, die genannten Prozesse zu beenden, hinterlassene Artefakte von der Festplatte zu löschen und sämtliche vom betroffenen Rechner aus erreichbaren Zugangsdaten zu erneuern, darunter Tokens, Geheimnisse und SSH-Schlüssel.
Es ist bereits das zweite Mal innerhalb eines Jahres, dass das Nx-Ökosystem ins Visier gerät. Bei einer Supply-Chain-Kampagne namens s1ngularity wurden mehrere npm-Pakete mit einem Datendieb infiziert. Anders als beim vorherigen Vorfall zielt der jüngste Angriff auf die VS-Code-Erweiterung.
