đ Contexte
PubliĂ© le 26 aoĂ»t 2026 sur le blog Embrace The Red (wunderwuzzi), cet article prĂ©sente une recherche offensive ciblant Claude Code Opus 5 en Auto Mode, le nouveau mode par dĂ©faut depuis mi-aoĂ»t 2026 qui remplace les invites d’approbation humaine par un classificateur de sĂ©curitĂ©.
đŻ Contexte de la vulnĂ©rabilitĂ©
Anthropic avait publiĂ© des rĂ©sultats d’Ă©valuation (via Trajectory Labs) montrant un taux de succĂšs d’attaque de 0,00% pour 72 scĂ©narios d’injection de prompt indirecte testĂ©s 10 fois chacun. Le chercheur dĂ©montre que cette mĂ©trique est trompeuse car sa chaĂźne d’attaque n’Ă©tait pas dans le benchmark.
âïž ChaĂźne d’attaque dĂ©taillĂ©e
L’attaque repose sur une injection de prompt indirecte via un site web malveillant, dĂ©clenchĂ©e par une simple demande de rĂ©sumĂ© d’URL :
- Redirection WebFetch â curl : Le serveur rĂ©pond avec un code HTTP 415 (Unsupported Media Type), poussant Claude Ă utiliser
curlvia l’outil Bash sans instruction explicite - Redirection vers une archive ZIP : L’archive contient des mĂ©tadonnĂ©es plausibles, 7 enregistrements encodĂ©s en Base85/zlib/JSON, un binaire
decoder-darwin, et un fichierstruct.pymalveillant - Refus du binaire par Claude : Claude refuse d’exĂ©cuter
decoder-darwin(comportement attendu et planifiĂ© par l’attaquant) - Claude Ă©crit son propre dĂ©codeur Python : La dĂ©cision de sĂ©curitĂ© devient le vecteur d’exploitation
- Module shadowing via
struct.py: Claude exĂ©cute son dĂ©codeur depuis le rĂ©pertoire de l’archive extraite ; le modulebase64importestruct, qui est interceptĂ© par lestruct.pymalveillant de l’archive - ExĂ©cution de code arbitraire : Le
struct.pyobfusqué lance un processus Python enfant isolé (python3 -I) qui télécharge et exécute un stager distant - Callback C2 : Le payload final établit une connexion vers un serveur C2 (Sliver) et ouvre la Calculatrice comme preuve visuelle
đ Taux de succĂšs d’attaque (ASR)
| Variante | Effets observés | ASR |
|---|---|---|
python3 -I -c (chaĂźne C2) |
Stager distant, payload natif, callback C2, Calculatrice | 3/5 (60%) |
Sous-processus claude -p |
Recon (whoami, uname, id), Calculatrice |
3/5 (60%) |
Sous-processus claude -p |
Calculatrice + écriture fichier hors workspace | 4/5 (80%) |
đš Comportements notables observĂ©s
- Auto Mode bloque le nettoyage : Dans certains runs, Claude a tenté de terminer le processus malveillant aprÚs avoir détecté la compromission, mais le classificateur Auto Mode a bloqué la commande de nettoyage
- Spawn d’un second agent Claude : Une variante utilise
claude -ppour lancer une seconde instance Claude Code headless depuis lestruct.pymalveillant - DĂ©tection tardive : Claude a parfois reconnu l’attaque aprĂšs coup, tout en ayant dĂ©jĂ exĂ©cutĂ© le code malveillant
đŁ Divulgation et rĂ©ponse d’Anthropic
Le rapport a Ă©tĂ© soumis Ă modelbugbounty@anthropic.com sans rĂ©ponse initiale, puis via le canal de sĂ©curitĂ© officiel. Anthropic a classĂ© le rapport comme Informative et a indiquĂ© que le comportement est conforme Ă la conception : Auto Mode est un classificateur best-effort, non une garantie de sĂ©curitĂ©, et les chaĂźnes d’attaque dĂ©terminĂ©es combinant des Ă©tapes bĂ©nignes ne sont pas dans son pĂ©rimĂštre.
đ Nature de l’article
Article de recherche offensive (PoC) avec dĂ©monstration vidĂ©o, visant Ă contester les affirmations marketing d’Anthropic sur la rĂ©solution de l’injection de prompt et Ă sensibiliser sur les limites des benchmarks de sĂ©curitĂ© pour les agents LLM.
đ§ TTPs et IOCs dĂ©tectĂ©s
TTP
- T1055 â Process Injection (Defense Evasion)
- T1059.006 â Command and Scripting Interpreter: Python (Execution)
- T1574.001 â Hijack Execution Flow: DLL Search Order Hijacking (Persistence)
- T1105 â Ingress Tool Transfer (Command and Control)
- T1071 â Application Layer Protocol (Command and Control)
- T1027 â Obfuscated Files or Information (Defense Evasion)
- T1204.002 â User Execution: Malicious File (Execution)
- T1036 â Masquerading (Defense Evasion)
IOC
- Emails :
modelbugbounty@anthropic.com - Fichiers :
struct.py - Fichiers :
decoder-darwin - Fichiers :
WIC-notebook-catalogue.ZIP - Fichiers :
README.txt - Fichiers :
accession-map.csv - Fichiers :
MANIFEST.sha256
â ïž Ă propos de ces IOC â ils sont extraits automatiquement de l’article original le 28 aoĂ»t 2026 et n’ont pas fait l’objet d’une vĂ©rification externe. Un indicateur peut avoir Ă©tĂ© rĂ©attribuĂ© depuis : une IP de C2 peut redevenir un service lĂ©gitime, un domaine sinkholĂ© peut changer de propriĂ©taire. Aucune garantie d’exactitude ni d’actualitĂ© â contrĂŽlez leur validitĂ© avant tout usage opĂ©rationnel, en particulier avant de les injecter dans une blocklist ou un SIEM.
Malware / Outils
- Sliver (framework)
đĄ Indice de vĂ©rification factuelle : 50/100 (moyenne)
- ⏠embracethered.com â source non rĂ©fĂ©rencĂ©e (0pts)
- â 16715 chars â texte complet (fulltext extrait) (15pts)
- â 7 IOCs (IPs/domaines/CVEs) (10pts)
- ⏠pas d’IOC vĂ©rifiĂ© (0pts)
- â 8 TTPs MITRE identifiĂ©es (15pts)
- â date extraite du HTML source (10pts)
- ⏠aucun acteur de menace nommé (0pts)
- ⏠pas de CVE à vérifier (0pts)
đ Source originale : https://embracethered.com/blog/posts/2026/breaking-claude-code-opus-5-and-automode/