Source: Socket (équipe de recherche). Le billet détaille une campagne où un paquet npm, nodejs-smtp, usurpe le populaire Nodemailer et implante un code dans des portefeuilles crypto de bureau sous Windows afin de détourner des transactions vers des adresses contrôlées par l’attaquant.

🚨 Le paquet nodejs-smtp se fait passer pour un mailer légitime et reste fonctionnel, exposant une interface compatible avec Nodemailer. Sur simple import, il abuse des outils Electron pour décompresser l’archive app.asar d’Atomic Wallet, remplacer un bundle fournisseur par une charge utile malveillante, reconditionner l’application et supprimer ses traces. Dans le runtime du wallet, le code injecté remplace silencieusement l’adresse du destinataire par des portefeuilles de l’attaquant, redirigeant des transactions en BTC, ETH, USDT (ERC20 et TRX USDT), XRP et SOL. La modification persiste jusqu’à réinstallation depuis la source officielle.

🧩 Le camouflage est renforcé par l’API « drop‑in » du paquet, qui laisse passer les tests et réduit la suspicion. Le nom, le README et le style de page imitent Nodemailer, augmentant le risque d’adoption par des développeurs pressés ou via des assistants IA susceptibles d’halluciner des noms de packages plausibles.

🧪 L’analyse de Socket indique que le paquet modifie des wallets Electron, notamment Atomic et Exodus, en décompressant et réempaquetant leurs archives app.asar, ce qui permet une exécution de code silencieuse et une persistance. L’acteur de menace, sous l’alias npm « nikotimon » (email d’enregistrement fourni), n’a pas encore accumulé de fonds significatifs, la campagne étant récente, mais l’outillage est jugé délibéré, réutilisable et scalable. Au moment de la publication, le paquet est encore en ligne sur npm; Socket a demandé son retrait et la suspension du compte.

📈 Le billet présente également le contexte et des signaux de détection: l’outil Socket AI Scanner compare les métadonnées, détecte des imports à effets de bord, des écritures inattendues sur le système de fichiers, des manipulations d’archives et des remplacements de bundles, et met en avant des verdicts de malware connus ainsi que des signaux d’usurpation. L’article s’inscrit comme une alerte de recherche et d’analyse technique visant à documenter la menace et ses mécanismes.

IOCs (Indicateurs de compromission)

  • Paquet npm malveillant: nodejs-smtp (usurpation de Nodemailer)
  • Alias npm / email de l’acteur: nikotimon — darkhorse.tech322@gmail[.]com
  • Adresses de l’acteur:
    • BTC: 17CNLs7rHnnBsmsCWoTq7EakGZKEp5wpdy
    • ETH et USDT (ERC20): 0x26Ce898b746910ccB21F4C6316A5e85BCEa39e24
    • TRX USDT (TRON): TShimPsmriHr2GVL7ktVWofMBWCKU5aV8a
    • XRP: rh3UuQvbnBXSSXhSp3KEb98YhnU2JnXXhK
    • SOL et SOLToken: 47iMzKY8KfqgawsT3Xm4cBoRZYx6PQpCae3978GFHxSV

TTPs (MITRE ATT&CK)

  • T1195.002 — Compromise Software Supply Chain (compromission de chaîne d’approvisionnement)
  • T1036.005 — Masquerading: Match Legitimate Resource Name or Location (usurpation)
  • T1059.007 — Command and Scripting Interpreter: JavaScript
  • T1608.001 — Stage Capabilities: Upload Malware
  • T1204.002 — User Execution: Malicious File
  • T1657 — Financial Theft

🧠 TTPs et IOCs détectés

TTP

[‘T1195.002 — Compromise Software Supply Chain’, ‘T1036.005 — Masquerading: Match Legitimate Resource Name or Location’, ‘T1059.007 — Command and Scripting Interpreter: JavaScript’, ‘T1608.001 — Stage Capabilities: Upload Malware’, ‘T1204.002 — User Execution: Malicious File’, ‘T1657 — Financial Theft’]

IOC

{’npm_package’: ’nodejs-smtp’, ’npm_alias_email’: ’nikotimon — darkhorse.tech322@gmail[.]com’, ‘btc_address’: ‘17CNLs7rHnnBsmsCWoTq7EakGZKEp5wpdy’, ’eth_usdt_erc20_address’: ‘0x26Ce898b746910ccB21F4C6316A5e85BCEa39e24’, ’trx_usdt_address’: ‘TShimPsmriHr2GVL7ktVWofMBWCKU5aV8a’, ‘xrp_address’: ‘rh3UuQvbnBXSSXhSp3KEb98YhnU2JnXXhK’, ‘sol_address’: ‘47iMzKY8KfqgawsT3Xm4cBoRZYx6PQpCae3978GFHxSV’}


🔗 Source originale : https://socket.dev/blog/wallet-draining-npm-package-impersonates-nodemailer