npm Wurm stiehlt Krypto-Schlüssel, zielt auf 19 Pakete ab

LiveBTCNews
BTC-3,68%
ETH-4,28%
SOL-4,5%

Ein selbstreplizierender npm-Wurm namens SANDWORM_MODE infiziert über 19 Pakete, sammelt private Schlüssel, BIP39-Mnemonics, Wallet-Dateien und LLM-API-Schlüssel aus Entwicklerumgebungen.

Ein aktueller Angriff auf die npm-Lieferkette breitet sich derzeit in Entwicklerumgebungen aus. Das Threat Research Team von Socket hat entdeckt, was sie als SANDWORM_MODE verfolgen, einen selbstreplizierenden Wurm, der sich über mindestens 19 bösartige npm-Pakete verbreitet, die mit zwei Publisher-Alias verbunden sind. Wie SocketSecurity auf X hervorgehoben hat, handelt es sich um einen aktiven Angriff auf die Lieferkette, bei dem Entwickler- und CI-Geheimnisse gestohlen, GitHub-Workflows injiziert, KI-Toolchains vergiftet und LLM-API-Schlüssel gesammelt werden.

Die Kampagne lehnt sich direkt an die Wurm-Familie Shai-Hulud an. Private Schlüssel gehen zuerst. Keine Zeitverzögerung, kein Warten. Bei Import entdeckte Krypto-Artefakte werden sofort über einen dedizierten Drain-Endpunkt exfiltriert, bevor eine andere Payload-Phase ausgelöst wird.

Sie sollten wissen: Bedrohungen für Wallet-Sicherheit nehmen zu Unbedingt lesen: Trust Wallet Sicherheits-Hack: So schützen Sie Ihre Assets

Wie dieser Wurm zuerst an Ihre privaten Schlüssel gelangt

Der Wurm arbeitet mit einem zweistufigen Design. Stufe 1 wird sofort beim Import ausgelöst und sammelt npm-Tokens, GitHub-Tokens, Umweltschlüssel und Krypto-Schlüssel nur durch Dateilesen. Kein Shell-Execution, kein Lärm. BIP39-Mnemonics, Ethereum-Private Keys, Solana-Byte-Arrays, Bitcoin-WIF-Schlüssel und xprv-Strings werden in der ersten Phase erfasst.

Krypto-Schlüssel verlassen die Maschine sofort via HTTPS-POST an einen Cloudflare-Worker bei pkg-metrics[.]official334[.]workers[.]dev/drain. Das passiert vor jeglicher Zeitgate-Überprüfung. Noch bevor Stage 2 überhaupt geladen wird.

Stage 2 liegt hinter einer 48-Stunden-Verzögerung, die aus einem MD5-Hash des Hostnamens und des Benutzernamens abgeleitet ist. Es geht noch tiefer: Passwort-Manager via Bitwarden, 1Password und LastPass-CLI, lokale SQLite-Datenbanken inklusive Apple Notes und macOS Messages sowie eine vollständige Dateisystemsuche nach Wallet-Dateien. In CI-Umgebungen verschwindet dieses Gate vollständig. Das vollständige Payload wird bei GITHUB_ACTIONS, GITLAB_CI, CIRCLECI, JENKINS_URL und BUILDKITE ohne Verzögerung ausgelöst.

Laut SocketSecurity auf X injiziert der Wurm auch GitHub-Workflows und vergiftet AI-Toolchains, Details bestätigt in der vollständigen technischen Offenlegung von Socket.

Auch lesenswert: $21 Mio. an beschlagnahmtem Bitcoin nach Transaktionssperrungen durch Behörden zurückgegeben

Auch KI-Coding-Tools wurden schwer getroffen

Drei Pakete imitieren Claude Code. Eines zielt auf OpenClaw ab, einen KI-Agenten, der auf GitHub über 210.000 Sterne hat. Das McpInject-Modul des Wurms setzt einen gefälschten MCP-Server in Claude Code, Claude Desktop, Cursor, VS Code Continue und Windsurf-Konfigurationen auf der Festplatte ein. Jedes erhält einen gefälschten Tool-Eintrag, der auf einen versteckten, bösartigen Server verweist.

Dieser Server enthält eingebettete Prompt-Injection, die KI-Assistenten anweist, still und heimlich SSH-Schlüssel, AWS-Zugangsdaten, npm-Tokens und Umweltschlüssel vor jedem Tool-Aufruf zu lesen. Das Modell informiert den Nutzer niemals. Die Injection blockiert dies ausdrücklich.

Neun LLM-Anbieter werden für das Sammeln von API-Schlüsseln ins Visier genommen: OpenAI, Anthropic, Google, Groq, Together, Fireworks, Replicate, Mistral und Cohere. Schlüssel werden aus Umgebungsvariablen und .env-Dateien extrahiert, anhand bekannter Formatmuster validiert und vor der Exfiltration übertragen.

Die Exfiltration erfolgt in drei Kaskadenschritten: Zuerst HTTPS zum Cloudflare-Worker, dann authentifizierte GitHub-API-Uploads in private Repositories mit Doppel-Base64-Codierung, anschließend DNS-Tunneling via base32-codierte Anfragen an freefan[.]net und fanfree[.]net. Ein Domain-Generation-Algorithmus, der mit „sw2025“ seedet, bietet eine Fallback-Option über zehn TLDs, falls alles andere fehlschlägt.

Interessant zu sehen: Glassnode warnt vor Erschöpfung der BTC-Nachfrage

Die beiden Publisher-Aliases hinter der Kampagne sind official334 und javaorg. Die 19 bestätigten bösartigen Pakete umfassen unter anderem suport-color@1.0.1, claud-code@0.2.1, cloude@0.3.0, crypto-locale@1.0.0, secp256@1.0.0 und scan-store@1.0.0. Weitere vier Sleeper-Pakete (ethres, iru-caches, iruchache und uudi) zeigen bisher keinen bösartigen Payload.

npm hat die bösartigen Pakete entfernt. GitHub hat die Infrastruktur des Angreifers stillgelegt. Cloudflare hat die Worker entfernt. Doch die Verteidiger müssen jetzt handeln.

Wenn eines dieser Pakete in Ihrer Umgebung lief, behandeln Sie die Maschine als kompromittiert. Rotieren Sie npm- und GitHub-Tokens, alle CI-Geheimnisse, prüfen Sie .github/workflows auf pull_request_target-Additionen, die ${}toJSON(secrets) }} serialisieren. Überprüfen Sie die globale git-Hook-Vorlage mit git config –global init.templateDir. Überprüfen Sie die Konfiguration der KI-Assistenten auf unerwartete Einträge bei mcpServers. Ein inaktiver polymorpher Engine, der deepseek-coder:6.7b nutzt, ist im Wurm eingebettet und in diesem Build deaktiviert, was bedeutet, dass eine zukünftige Variante sich selbst umschreiben könnte, um Erkennung zu vermeiden.

Ein Dead Switch befindet sich ebenfalls im Code. Derzeit deaktiviert. Wird er aktiviert, führt er find ~ -type f -writable aus und zerstückelt alle beschreibbaren Dateien im Home-Verzeichnis. Der Operator arbeitet noch an der Umsetzung.

Original anzeigen
Disclaimer: The information on this page may come from third parties and does not represent the views or opinions of Gate. The content displayed on this page is for reference only and does not constitute any financial, investment, or legal advice. Gate does not guarantee the accuracy or completeness of the information and shall not be liable for any losses arising from the use of this information. Virtual asset investments carry high risks and are subject to significant price volatility. You may lose all of your invested principal. Please fully understand the relevant risks and make prudent decisions based on your own financial situation and risk tolerance. For details, please refer to Disclaimer.
Kommentieren
0/400
Keine Kommentare