Die Pakete gehen über die reine npm-Verbreitung hinaus: Sie enthalten eine bewaffnete GitHub Action, die Geheimnisse aus CI/CD-Pipelines abgreift und über HTTPS mit DNS-Rückfallweg ausleitet. Hinzu kommt eine destruktive Routine, die als Notschalter dient und das Home-Verzeichnis löscht, sollte der Zugriff auf GitHub und npm verloren gehen. Diese Wiper-Funktion ist laut Socket derzeit standardmäßig deaktiviert.
Ein zentraler Bestandteil ist das Modul “McpInject”, das gezielt KI-Programmierassistenten angreift. Es installiert einen bösartigen Server für das Model Context Protocol (MCP) und schleust ihn in deren Werkzeugkonfigurationen ein. Der Server gibt sich als legitimer Anbieter aus und registriert drei harmlos wirkende Werkzeuge, von denen jedes eine Prompt-Injection enthält. Diese liest den Inhalt von Dateien wie ~/.ssh/id_rsa, ~/.ssh/id_ed25519, ~/.aws/credentials, ~/.npmrc und .env-Dateien aus und legt sie lokal zur späteren Exfiltration ab.
Das Modul zielt auf Claude Code, Claude Desktop, Cursor, die Continue-Erweiterung in Microsoft Visual Studio Code sowie Windsurf. Zusätzlich sammelt es API-Schlüssel für neun Anbieter großer Sprachmodelle: Anthropic, Cohere, Fireworks AI, Google, Grok, Mistral, OpenAI, Replicate und Together.
Die Schadlast enthält zudem eine polymorphe Engine, die eine lokale Ollama-Instanz mit dem Modell DeepSeek Coder ansteuert, um Variablen umzubenennen, den Kontrollfluss umzuschreiben, Müllcode einzufügen und Zeichenketten zu kodieren – um so der Erkennung zu entgehen. Diese Funktion ist in den entdeckten Paketen abgeschaltet, ihr Vorhandensein deutet laut Socket aber darauf hin, dass die Betreiber weitere Varianten planen.
Die Angriffskette verläuft in zwei Stufen. Die erste erfasst Zugangsdaten und Kryptowährungsschlüssel und lädt anschließend eine zweite Stufe nach, die Zugangsdaten aus Passwortmanagern abgreift, sich wurmartig verbreitet, die MCP-Injektion durchführt und die vollständige Exfiltration übernimmt. Die zweite Stufe wird erst nach 48 Stunden aktiv, ergänzt um eine maschinenspezifische Verzögerung von bis zu weiteren 48 Stunden.
Nutzern, die eines der Pakete installiert haben, rät Socket, diese umgehend zu entfernen, npm- und GitHub-Token sowie CI-Geheimnisse zu erneuern und package.json, Lockfiles und das Verzeichnis .github/workflows/ auf unerwartete Änderungen zu prüfen. Dass derselbe Wurmcode über mehrere Typosquatting-Pakete und Veröffentlicher-Aliasse auftauche, deute auf eine absichtliche Verbreitung hin, nicht auf eine versehentliche Veröffentlichung.
Parallel beschrieben Veracode und JFrog zwei weitere schädliche npm-Pakete namens “buildrunner-dev” und “eslint-verify-plugin”, die einen Fernzugriffstrojaner (RAT) für Windows, macOS und Linux ausliefern. buildrunner-dev verteilt die .NET-Schadsoftware Pulsar RAT über ein PNG-Bild, das auf i.ibb[.]co liegt. eslint-verify-plugin tarnt sich laut JFrog als ESLint-Werkzeug und startet eine mehrstufige Infektionskette gegen macOS und Linux: Unter Linux installiert es einen Poseidon-Agenten für das C2-Framework Mythic, unter macOS führt es Apfell aus, einen JXA-Agenten, der Daten sammelt und einen neuen macOS-Benutzer mit Administratorrechten anlegt.
Checkmarx meldete zudem eine betrügerische VS-Code-Erweiterung namens “solid281”, die die offizielle Solidity-Erweiterung imitiert. Sie führt beim Start automatisch einen stark verschleierten Loader aus und installiert ScreenConnect unter Windows sowie eine Python-Reverse-Shell unter macOS und Linux. Laut Checkmarx würden Solidity-Entwickler gezielt ins Visier genommen.
