🕵️‍♂️ Licence to Steal — NimDoor, le malware macOS qui ne meurt jamais

Baptisé NimDoor, ce malware conçu par des hackers nord-coréens a toutes les qualités d’un agent secret numérique : infiltration propre, persistance diabolique, déguisements crédibles. Et surtout… il revient toujours, même quand on croit l’avoir éliminé.

Il surgit dans vos fichiers système sans bruit, se déguise en mise à jour Zoom et siphonne vos clés crypto sans jamais cligner des yeux.

🔍 Origine et objectifs

  • Le malware NimDoor est attribué à des hackers nord-coréens soutenus par l’État, notamment via le groupe Lazarus ou BlueNoroff bleepingcomputer.com.
  • Il cible des organisations du Web3 et de la cryptomonnaie, dans une campagne active depuis avril 2025 cybersecurityintelligence.com.

🧰 Techniques d’attaque et de persistance

  1. Infection initiale
    • Les victimes sont contactées via Telegram, reçoivent un faux “Zoom SDK update” via un lien Calendly ou email, puis téléchargent un AppleScript piégé (zoom_sdk_support.scpt)
  2. Binaries en Nim et C++
    • Le droppers ‘installer’ en Nim crée des LaunchAgents macOS (com.google.update.plist) pour lancer les composants suivants à chaque démarrage :
      • GoogIe LLC (collecte d’info et configuration)
      • CoreKitAgent (cœur du malware) 
  3. Résilience extrême du CoreKitAgent
    • Ce composant utilise kqueue (surveillance d’événements) et intercepte les signaux SIGINT/SIGTERM pour se réinstaller automatiquement si on tente de le tuer – une technique innovante de persistance
  4. Fonctionnalités avancées
    • CoreKitAgent exécute un AppleScript toutes les 30 s pour communiquer avec le C2, exfiltrer des données système et exécuter des commandes
    • Parallèlement, d’autres scripts — upl (navigateurs, Keychain…) et tlgrm (base Telegram) — volent des données crypto sensibles

🧠 Innovation technique

  • Le choix du langage Nim est inhabituel pour un malware macOS, ce qui rend l’analyse plus difficile
  • L’usage combiné de méthodes tel que WebSocket sécurisés (WSS), AES RC4, AppleScript, injection de processeur, et signaux Unix, montre un haut degré de sophistication 

🛡️ Recommandations pour les équipes sécurité

  • Sensibiliser les employés à la fraude du type “mise à jour Zoom via Calendly/Télégram”.
  • Surveiller les LaunchAgents suspects (par exemple ~/Library/LaunchAgents/com.google.update.plist).
  • Détecter les comportements anormaux : écoute de signaux SIGINT/SIGTERM, exécution d’AppleScript hexadécodés, communications régulières vers des serveurs douteux.
  • Analyser les indicateurs de compromission (hashes, domaines, chemins de fichier) fournis par SentinelLabs bleepingcomputer.com

📌 Contexte plus large

  • Ce type de campagne s’inscrit dans une stratégie plus vaste des hackers nord-coréens pour le vol de crypto-monnaie, déjà illustrée par des attaques à grande échelle (comme celles du Lazarus Group).
  • NimDoor illustre une montée en puissance technique, avec une préférence pour la modularité, l’obfuscation et la résistance active aux tentatives de blocage.

✅ En résumé

NimDoor est une menace macOS particulièrement avancée — qui mêle ingénierie en Nim, repli de processus intelligents, communications chiffrées et vol de données ciblé. Il s’agit d’une étape supplémentaire dans la sophistication des malwares nord-coréens dédiés au vol de cryptomonnaies.

🔑 Indicateurs de compromission (IoC)

🛠️ Fichiers et exécutables

  • LaunchAgent malveillant :
    • ~/Library/LaunchAgents/com.google.update.plist
  • Exécutables créés par NimDoor :
    • Paths types : ~/Library/Preferences/UserAgent/lib/UserAgent et ~/Library/Preferences/Tools/{at,arch,kAgent} securonix.com

🧮 Hashes (SHA‑1) associés à divers composants du malware (macma, similaire) :

000830573ff24345d88ef7916f9745aff5ee813d
07f8549d2a8cc76023acee374c18bbe31bb19d91
941e8f52f49aa387a315a0238cff8e043e2a7222

Bien que ces hashes concernent macma, SentinelLabs encourage l’actualisation à partir de leur rapport NimDoor.

🌐 Domains & C2

  • Deux serveurs C2 codés en dur utilisés par CoreKitAgent (AppleScript beacon envoyant toutes les 30 s via WebSocket sécurisé WSS) sentinelone.com+8

🛡️ Détection comportementale & surveillance recommandée

  1. LaunchAgents suspects
    • Monitorer et auditer les nouveaux .plist dans ~/Library/LaunchAgents (ex. com.google.update.plist)
  2. AppleScript encodés/injectés
    • Traquer l’exécution fréquente via osascript ou lancement d’AppleScript incorporées
    • Surveillance d’AppleScript qui envoient ou reçoivent via wss://
  3. Surveillance des signaux Unix
    • CoreKitAgent intercepte SIGINT/SIGTERM pour se relancer : détectable si engagement de ré-installation automatique après kill
  4. Détection des beacons réguliers
    • Trafic réseau sortant via WSS vers domaines numériques inconnus tous les 30 s
  5. Comportement « Living-Off-The-Land » (LOOBins)
    • Usage inhabituel d’outils macOS intégrés (« osascript », « launchctl », kqueue…) pour créer des fichiers ou processus persistants securonix.com

🚨 Réponse & neutralisation

Supprimer LaunchAgent malveillant :

bash
launchctl unload ~/Library/LaunchAgents/com.google.update.plist 
rm ~/Library/LaunchAgents/com.google.update.plist

Tuer le processus principal (CoreKitAgent) puis vérifier qu’il ne redémarre pas (pas de nouveau .plist ou exécutable dans ~/Library)

Désinfecter les fichiers :
Supprimer UserAgentatarchkAgent dans ~/Library/Preferences/...
Bloquer les domaines C2 sur pare-feu ou proxy

Révoquer les permissions suspectes (Accès complet au disque, Automation, Accessibilité) via Préférences Système > Sécurité & Confidentialité


👁️‍🗨️ Renforcement & bonnes pratiques

  • Renforcer la vigilance sur la chaîne d’infection : campagnes d’hameçonnage via Telegram ou Calendly se faisant passer pour une mise à jour Zoom
  • Activer Gatekeeper, XProtect et SIP et veiller à garder macOS à jour
  • Déployer un EDR/XDR capable de surveiller comportements IoC et IOA, non seulement des hash ou domaines sentinelone.com
  • Former les employés pour reconnaître les faux messages et liens suspects

📌 En résumé

  • Supprimez les fichiers de persistance (.plist, UserAgent, etc.)
  • Surveillez les redémarrages spontanés de ces composants
  • Analysez les patterns réseau brusques, notamment le traffic WSS fréquent
  • Renforcez les contrôles de sécurité système et sensibilisez vos équipes

🔎 Comment obtenir les SHA‑256/512 NimDoor dès leur apparition

  1. Consulter le rapport technique de SentinelLabs
    • La version complète, souvent disponible sur leur site ou par communication privée, inclut généralement des hashes SHA‑256 complets. Inscrivez-vous ou contactez-les pour recevoir les IoC complets dès publication cybersecurityintelligence.com.
  2. Surveiller les plateformes de threat-intel
    • Recherchez « NimDoor SHA256 » sur des sources comme GitHub, VirusTotal, Malware Bazaar, ou Intel Reports spécialisés. Les contributeurs téléversent souvent ces hashes peu après publication.
  3. Alimenter votre SIEM/EDR/SOAR avec des flux IoC en temps réel
    • Des fournisseurs comme SentinelOne, CrowdStrike, Palo Alto Unit42 émettent des flux en temps réel. Configurez-les dans votre système pour recevoir automatiquement les mises à jour.

🧩 Exemple de règle de détection générique (en attendant les hashes précis)

yaml
rule: Detect_NimDoor_LaunchAgent
condition:
  all of:
    - FileExists:
        path: "~/*/Library/LaunchAgents/com.google.update.plist"
    - FileNameMatches:
        pattern: "(UserAgent|GoogIe LLC|CoreKitAgent)"
    - NetworkConnection:
        proto: websockets
        interval: 30s<br>action:
  - alert: "Possible NimDoor persistence detected"


✅ Étapes recommandées pour être prêt à intégrer les hashes dès leur publication

  • Restez connecté à SentinelLabs & Cybersecurity Intelligence (veille active par mailing-lists).
  • Créez des alertes dans VirusTotal/OTX sur le nom “NimDoor” pour détecter les premiers uploads.
  • Préparez votre SIEM à adopter automatiquement les nouveaux hashes (SHA‑256/512) dès apparition.
  • Testez vos pipelines en injectant manuellement les hashes dans un environnement fictif pour valider la détection.

📌 En résumé

  • Il n’existe pas (pour l’instant) de SHA‑256 ou SHA‑512 open source pour NimDoor.
  • Assurez une veille proactive chez SentinelLabs et plates-formes de threat intel.
  • Préparez vos règles SIEM avec des patterns comportementaux et un système prêt à absorber les nouveaux hashes dès qu’ils seront publiés.
🕵️‍♂️ Licence to Steal — NimDoor, le malware macOS qui ne meurt jamais
Partager cet article : Twitter LinkedIn WhatsApp

🖋️ Publié sur SecuSlice.com

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Retour en haut