Source: Huntress (blog), publié le 9 décembre 2025. Contexte: analyse de menace détaillant une campagne d’AMOS (Atomic macOS Stealer) qui détourne la confiance accordée aux plateformes d’IA et aux moteurs de recherche pour livrer un infostealer sur macOS sans alerte visible.
• Vecteur initial — empoisonnement SEO/IA: Des recherches banales type “clear disk space on macOS” renvoient en tête de Google vers des conversations légitimes hébergées sur chatgpt.com et grok.com. Ces chats, présentés comme des guides de nettoyage « sûrs », contiennent une commande Terminal qui, une fois copiée-collée, télécharge un loader AMOS (ex. URL décodée vers hxxps://putuartana[.]com/cleangpt). Aucune pièce jointe ou installateur malveillant, pas d’avertissement macOS: juste recherche → clic → copy/paste.
• Chaîne d’infection — vol d’identifiants et élévation silencieuse: Le script demande un « System Password » via un prompt factice, valide en arrière-plan le mot de passe avec dscl -authonly, l’écrit en clair dans /tmp/.pass, puis l’achemine vers sudo -S pour exécuter des commandes en root sans autre interaction. Le binaire principal (Mach-O, ad hoc signé) est déposé en /Users/$USER/.helper (fichier caché) après des vérifications anti-VM et une suppression de l’attribut de quarantaine. Les apps Ledger Wallet et Trezor Suite existantes peuvent être remplacées par des versions trojanisées demandant la seed et exfiltrant les données. Les données collectées sont archivées en /tmp/out.zip puis envoyées au C2.
• Persistance — LaunchDaemon + boucle watchdog en contexte GUI: Un LaunchDaemon minimal (/Library/LaunchDaemons/com.finder.helper.plist) relance un script .agent (AppleScript) qui, chaque seconde, détecte l’utilisateur GUI et redémarre .helper sous ce contexte (via sudo -u). Cette approche garantit l’accès aux stores de session (navigateurs, Keychain, apps authentifiées) et maintient l’exécution au-delà des redémarrages et tentatives d’arrêt.
• Capacités du stealer — exfiltration de données sensibles: Ciblage des portefeuilles crypto (Electrum, Exodus, MetaMask, Ledger Live, Coinbase Wallet, etc.), des navigateurs (mots de passe, cookies, tokens de session), de macOS Keychain (mots de passe, Wi-Fi, certificats) et de fichiers/artefacts intéressants. Les artefacts sont empaquetés puis envoyés à l’infrastructure de l’attaquant.
• Pourquoi ça marche — exploitation multi-couches de la confiance: confiance dans le moteur de recherche (résultats « promus »), la plateforme (domaines officiels), le format (étapes, code blocks, ton rassurant), le contenu (usage « normal » de Terminal) et les habitudes (copier-coller de commandes depuis des sources perçues comme fiables). Le billet fournit aussi des pistes de détection comportementale (osascript demandant un mot de passe, usages anormaux de dscl -authonly, system_profiler pour anti-analyse, sudo -u avec mot de passe sur stdin, exécutables cachés dans $HOME).
IOCs observés
-
Fichiers/artefacts:
- /Library/LaunchDaemons/com.finder.helper.plist (LaunchDaemon persistant)
- /Users/$USER/.helper (binaire Mach-O caché)
- .agent (AppleScript de relance watchdog)
- update (loader de premier stage)
- /tmp/.pass (mot de passe en clair)
- .use rna me (fichier caché contenant le nom d’utilisateur — tel qu’affiché)
- /tmp/out.zip (staging avant exfiltration)
- Remplacement trojanisé potentiel: Ledger Wallet, Trezor Suite
-
SHA256 (extraits du billet):
- com.finder.helper.plist: 276db4f1dd88e514f18649c5472559aed0b2599aa1f1d3f26bd9bc51d1c62166
- .helper: ab60bb9c33ccf3f2f9553447babb902cdd9a85abce743c97ad02cbc1506bf9eb
- Ledger Wallet (trojanisé, bundle ad-hoc signé): 68017DF4A49E315E49B6E0D134B9C30BAE8ECE82CF9DE045D5F56550D5F59FE1 (et autres pour les artefacts listés)
- update (premier stage): 340c48d5a0c32c9295ca5e60e4af9671c2139a2b488994763abe6449ddfc32aa et 68017DF4A49E315E49B6E0D134B9C30BAE8ECE82CF9DE045D5F56550D5F59FE1
-
Infra:
- IPs: 45.94.47[.]205 (Gate), 45.94.47[.]186 (C2)
- Domaines: hxxps[://]wbehub[.]org (Ledger Wallet seed app data exfil), hxxps[://]sanchang[.]org
- URL delivery observée: hxxps[://]putuartana[.]com/cleangpt
TTPs saillantes (MITRE ATT&CK, concepts)
- Initial Access: SEO poisoning menant à des conversations ChatGPT/Grok légitimes mais malicieuses
- Execution: Commande one-liner Base64 dans Terminal (copier-coller utilisateur)
- Credential Access: Prompt factice, validation silencieuse via dscl -authonly, stockage du mot de passe, accès Keychain
- Privilege Escalation: sudo -S (mot de passe via stdin)
- Defense Evasion: suppression attribut de quarantaine, anti-VM, fichiers cachés (préfixe .)
- Persistence: LaunchDaemon + AppleScript watchdog relançant en contexte GUI
- Collection: butinage de wallets, navigateurs, Keychain, fichiers sensibles
- Exfiltration: archivage local puis envoi à C2
Conclusion: Il s’agit d’une analyse de menace montrant une évolution marquante de l’ingénierie sociale sur macOS, où l’attaquant exploite la confiance dans les assistants IA et le référencement pour délivrer AMOS sans signaux d’alerte traditionnels; le billet vise à documenter la chaîne d’infection, les capacités, les IOCs et les pistes de détection.
🧠 TTPs et IOCs détectés
TTP
Initial Access: SEO poisoning menant à des conversations ChatGPT/Grok légitimes mais malicieuses; Execution: Commande one-liner Base64 dans Terminal (copier-coller utilisateur); Credential Access: Prompt factice, validation silencieuse via dscl -authonly, stockage du mot de passe, accès Keychain; Privilege Escalation: sudo -S (mot de passe via stdin); Defense Evasion: suppression attribut de quarantaine, anti-VM, fichiers cachés (préfixe .); Persistence: LaunchDaemon + AppleScript watchdog relançant en contexte GUI; Collection: butinage de wallets, navigateurs, Keychain, fichiers sensibles; Exfiltration: archivage local puis envoi à C2
IOC
{‘hash’: [‘276db4f1dd88e514f18649c5472559aed0b2599aa1f1d3f26bd9bc51d1c62166’, ‘ab60bb9c33ccf3f2f9553447babb902cdd9a85abce743c97ad02cbc1506bf9eb’, ‘68017DF4A49E315E49B6E0D134B9C30BAE8ECE82CF9DE045D5F56550D5F59FE1’, ‘340c48d5a0c32c9295ca5e60e4af9671c2139a2b488994763abe6449ddfc32aa’], ‘domain’: [‘hxxps://wbehub.org’, ‘hxxps://sanchang.org’, ‘hxxps://putuartana.com/cleangpt’], ‘ip’: [‘45.94.47.205’, ‘45.94.47.186’]}
🔗 Source originale : https://www.huntress.com/blog/amos-stealer-chatgpt-grok-ai-trust