Un ver npm auto-réplicant baptisé SANDWORM_MODE frappe plus de 19 packages, collectant les clés privées, les mnémoniques BIP39, les fichiers de portefeuille et les clés API LLM depuis les environnements de développementUn ver npm auto-réplicant baptisé SANDWORM_MODE frappe plus de 19 packages, collectant les clés privées, les mnémoniques BIP39, les fichiers de portefeuille et les clés API LLM depuis les environnements de développement

Ver de npm vole des clés Crypto, cible 19 paquets

2026/02/22 01:45
Temps de lecture : 5 min

Un ver npm auto-réplicatif baptisé SANDWORM_MODE frappe plus de 19 packages, récoltant des clés privées, des mnémoniques BIP39, des fichiers de portefeuille et des clés API LLM depuis les environnements de développement.

Une attaque active de la chaîne d'approvisionnement npm balaie actuellement les environnements de développement. L'équipe de recherche sur les menaces de Socket a découvert ce qu'elle suit sous le nom de SANDWORM_MODE, un ver auto-réplicatif propagé à travers au moins 19 packages npm malveillants liés à deux alias d'éditeurs. Comme SocketSecurity l'a signalé sur X, il s'agit d'une attaque active de la chaîne d'approvisionnement volant des secrets de développement et de CI, injectant des workflows GitHub, empoisonnant les chaînes d'outils IA et récoltant des clés API LLM.

La campagne s'inspire directement de la famille de vers Shai-Hulud. Les clés privées partent en premier. Aucun délai, aucun retard. Les artefacts crypto découverts lors de l'importation sont exfiltrés immédiatement via un point de terminaison de drainage dédié avant que toute autre étape de charge utile ne se déclenche.

À savoir : Les menaces pour la sécurité des portefeuilles s'intensifient Lecture obligatoire : Trust Wallet Security Hack: How to Safeguard Your Assets

Comment ce ver atteint vos clés privées en premier

Le ver fonctionne selon une conception en deux étapes. L'étape 1 se déclenche instantanément lors de l'importation, collectant les jetons npm, les jetons GitHub, les secrets d'environnement et les clés crypto uniquement par lecture de fichiers. Aucune exécution shell, aucun bruit. Les mnémoniques BIP39, les clés privées Ethereum, les tableaux d'octets Solana, les clés Bitcoin WIF et les chaînes xprv sont tous balayés lors du premier passage.

Les clés crypto quittent la machine immédiatement via HTTPS POST vers un Cloudflare Worker à l'adresse pkg-metrics[.]official334[.]workers[.]dev/drain. Cela se produit avant tout contrôle de délai. Avant même que l'étape 2 ne se charge.

L'étape 2 se trouve derrière un délai de 48 heures, dérivé d'un hachage MD5 du nom d'hôte et du nom d'utilisateur. Elle va plus loin : gestionnaires de mots de passe via les CLI Bitwarden, 1Password et LastPass, stockages SQLite locaux incluant Apple Notes et macOS Messages, et une analyse complète du système de fichiers pour les fichiers de portefeuille. Dans les environnements CI, cette barrière disparaît entièrement. La charge utile complète se déclenche sur GITHUB_ACTIONS, GITLAB_CI, CIRCLECI, JENKINS_URL et BUILDKITE sans attendre du tout.

Selon SocketSecurity sur X, le ver injecte également des workflows GitHub et empoisonne les chaînes d'outils IA, détails confirmés dans la divulgation technique complète de Socket.

Également à lire : $21M in Seized Bitcoin Returned After Authorities Freeze Transactions

Les outils de codage IA aussi touchés, gravement

Trois packages usurpent l'identité de Claude Code. L'un cible OpenClaw, un Agent d'IA qui a dépassé 210 000 étoiles sur GitHub. Le module McpInject du ver déploie un serveur MCP malveillant dans Claude Code, Claude Desktop, Cursor, VS Code Continue et les configurations Windsurf sur disque. Chacun reçoit une fausse entrée d'outil pointant vers un serveur caché et malveillant.

Ce serveur contient une injection de prompt intégrée indiquant aux Agents d'IA de lire silencieusement les clés SSH, les informations d'identification AWS, les jetons npm et les secrets d'environnement avant chaque appel d'outil. Le modèle ne le dit jamais à l'utilisateur. L'injection l'empêche explicitement de le faire.

Neuf fournisseurs LLM sont ciblés pour la récolte de clés API : OpenAI, Anthropic, Google, Groq, Together, Fireworks, Replicate, Mistral et Cohere. Les clés sont extraites des variables d'environnement et des fichiers .env, validées par rapport à des modèles de format connus avant l'exfiltration.

L'exfiltration s'exécute sur trois canaux en cascade. HTTPS vers le Cloudflare Worker d'abord, puis téléchargements authentifiés via l'API GitHub vers des dépôts privés utilisant un encodage double-base64, puis tunneling DNS via des requêtes encodées en base32 vers freefan[.]net et fanfree[.]net. Un algorithme de génération de domaine initialisé par "sw2025" fournit un repli sur dix TLD si tout le reste échoue.

À consulter : Glassnode Flags BTC Demand Exhaustion

Les deux alias d'éditeurs derrière la campagne sont official334 et javaorg. Les 19 packages malveillants confirmés incluent suport-color@1.0.1, claud-code@0.2.1, cloude@0.3.0, crypto-locale@1.0.0, secp256@1.0.0 et scan-store@1.0.0 entre autres. Quatre packages dormants supplémentaires (ethres, iru-caches, iruchache et uudi) ne montrent encore aucune charge utile malveillante.

npm a supprimé les packages malveillants. GitHub a démantelé l'infrastructure de l'acteur de menace. Cloudflare a retiré les workers. Mais les défenseurs doivent agir maintenant, quoi qu'il en soit.

Si l'un de ces packages a été exécuté dans votre environnement, considérez cette machine comme compromise. Faites pivoter les jetons npm et GitHub, faites pivoter tous les secrets CI, auditez .github/workflows/ pour les ajouts pull_request_target qui sérialisent ${{ toJSON(secrets) }}. Vérifiez le paramètre de modèle de hook git global en exécutant git config –global init.templateDir. Examinez les configurations des assistants IA pour les entrées mcpServers inattendues. Un moteur polymorphe dormant utilisant deepseek-coder:6.7b est intégré dans le ver et désactivé dans cette version, ce qui signifie qu'une variante future pourrait se réécrire pour échapper à la détection.

Un interrupteur de destruction se trouve également dans le code. Désactivé pour le moment. Lorsqu'il est déclenché, il exécute find ~ -type f -writable et détruit chaque fichier inscriptible dans le répertoire personnel. L'opérateur continue d'itérer.

The post npm Worm Steals Crypto Keys, Targets 19 Packages appeared first on Live Bitcoin News.

Opportunité de marché
Logo de npm run dev
Cours npm run dev(NPM)
$0.00001296
$0.00001296$0.00001296
-19.30%
USD
Graphique du prix de npm run dev (NPM) en temps réel
Clause de non-responsabilité : les articles republiés sur ce site proviennent de plateformes publiques et sont fournis à titre informatif uniquement. Ils ne reflètent pas nécessairement les opinions de MEXC. Tous les droits restent la propriété des auteurs d'origine. Si vous estimez qu'un contenu porte atteinte aux droits d'un tiers, veuillez contacter service@support.mexc.com pour demander sa suppression. MEXC ne garantit ni l'exactitude, ni l'exhaustivité, ni l'actualité des contenus, et décline toute responsabilité quant aux actions entreprises sur la base des informations fournies. Ces contenus ne constituent pas des conseils financiers, juridiques ou professionnels, et ne doivent pas être interprétés comme une recommandation ou une approbation de la part de MEXC.