Faille critique dans les API d’OpenAI, Anthropic et Google : des modèles plus faibles décodent le raisonnement des modèles avancés
Célestine Rochefour
En août 2026, une équipe de chercheurs en sécurité a révélé une vulnérabilité touchant les API de raisonnement d’OpenAI, Anthropic et Google. Cette faille API OpenAI Anthropic Google permet à des modèles de langage plus faibles de reconstituer le raisonnement interne - y compris des secrets comme des clés API et mots de passe - à partir de blocs chiffrés présents dans les logs de session. Plus de 300 000 blocs de raisonnement ont été décodés, révélant 704 artefacts de confidentialité provenant de sessions utilisateur réelles, dont 62 clés API et 33 mots de passe. Ce constat bouleverse la confiance accordée aux mécanismes de chiffrement des raisonnements par les fournisseurs d’IA.
L’article qui suit détaille le fonctionnement de cette attaque, ses implications pour la sécurité des applications d’IA, les mesures d’atténuation déjà mises en œuvre par les éditeurs, ainsi que les bonnes pratiques à adopter pour les développeurs travaillant avec ces API.
Comment fonctionne la faille : portabilité des blocs de raisonnement chiffrés
Le problème trouve son origine dans la conception même des API de raisonnement proposées par OpenAI, Anthropic et Google. Lorsqu’un modèle exécute un raisonnement multi-étapes (par exemple pour répondre à une question complexe), le fournisseur peut encapsuler une partie du raisonnement dans un objet chiffré appelé bloc de raisonnement opaque. Cet objet est renvoyé au client avec la réponse visible, et le client est censé le renvoyer tel quel lors des appels suivants pour préserver l’état du raisonnement. Cette approche évite de stocker le raisonnement en clair côté client, mais elle crée une surface d’attaque inattendue.
Rejeu entre sessions et entre comptes
Les chercheurs ont découvert que ces blocs chiffrés ne sont pas liés de manière univoque à une session ou à un utilisateur. Un bloc produit par un modèle fort (par exemple GPT-5.6 Luna) peut être injecté dans une session d’un autre compte utilisant un modèle plus faible de la même famille (GPT-5.6 Luna pour les traces GPT, Claude Haiku 4.5 pour Anthropic, Gemini Robotics ER-1.6 pour Google). Le modèle faible, en recevant ce bloc, tente de le traiter et - sous certaines conditions - révèle le raisonnement qu’il contient, comme s’il s’agissait d’un “décodeur flou”.
En pratique, cela signifie qu’un attaquant qui parvient à obtenir un bloc de raisonnement (par exemple en le téléchargeant depuis un log d’agent publié sur un dépôt public) peut le rejouer sur son propre compte API et extraire son contenu. Le chiffrement lui-même n’est pas cassé ; c’est la confiance dans le périmètre du bloc qui est en cause.
Quatre chemins d’attaque démontrés
L’étude intitulée Stealing Reasoning Traces from Proprietary LLM APIs décrit quatre abus rendus possibles par cette portabilité :
- Vol de raisonnement propriétaire : extraire la chaîne de pensée d’un modèle concurrent pour effectuer de l’apprentissage par distillation non autorisé.
- Extraction de données privées : récupérer des secrets (clés, mots de passe, jetons) qui se trouvent dans les raisonnements d’autres utilisateurs à partir de traces publiées.
- Récupération de contenu nuisible : un attaquant peut masquer un contenu malveillant (par exemple des instructions dangereuses) dans un bloc opaque, puis le rejouer sur un modèle faible pour qu’il soit exécuté ou dévoilé.
- Injection de prompt invisible : placer une instruction malveillante dans un bloc de raisonnement et l’injecter dans une tâche indépendante, sans que l’instruction n’apparaisse dans le texte visible.
Un nombre alarmant de secrets exposés dans les logs publics
Les chercheurs ont analysé 6 708 trajectoires d’agents publiques (des logs de conversations entre utilisateurs et modèles d’IA) et ont décodé 315 320 blocs de pensée. Après avoir exclu les ensembles de référence de benchmark, ils ont compté 704 artefacts de confidentialité provenant de sessions utilisateur réelles, dont :
- 62 clés API
- 33 mots de passe
- 24 jetons d’accès
- 7 clés privées cryptographiques
« Sur les 704 artefacts non liés à des benchmarks, 64 n’apparaissaient que dans le raisonnement caché, nulle part dans la trace visible. Assainir la conversation lisible peut donc laisser des secrets à l’intérieur d’un bloc opaque qu’un autre compte peut rejouer. » - extrait du rapport de recherche
Ce constat est particulièrement préoccupant pour les développeurs qui publient des logs d’agents sur des plateformes comme GitHub, GitLab ou Hugging Face. Même si la partie visible de la conversation a été nettoyée, le bloc de raisonnement chiffré peut encore contenir des informations sensibles.
Qui est concerné et quelle est l’étendue de l’exposition ?
L’exposition démontrée par cette étude n’est pas universelle. Les chercheurs précisent que l’attaque ne permet pas un accès arbitraire aux conversations privées de n’importe quel utilisateur. Elle nécessite d’obtenir un bloc de raisonnement chiffré - par exemple en le téléchargeant depuis un log d’agent public - et de disposer d’un accès API à un modèle compatible chez le même fournisseur.
Les principaux concernés sont les développeurs qui publient des logs d’agents sans supprimer les blocs de raisonnement. Toutefois, la même portabilité pourrait être exploitée dans d’autres contextes, par exemple en interceptant des blocs transitant sur un réseau non chiffré (bien que les appels API soient généralement réalisés en HTTPS).
Réactions des fournisseurs
Les chercheurs ont divulgué leurs résultats à OpenAI, Anthropic, Google, ainsi qu’à Microsoft et Hugging Face. Selon leur déclaration de reproductibilité, les attaques démontrées ne fonctionnent plus depuis août 2026 après les correctifs mis en place par les fournisseurs. Cependant, aucune confirmation publique n’a été émise par OpenAI, Anthropic ou Google à ce jour. La déclaration des chercheurs constitue la seule source indiquant que l’attaque principale n’est plus reproductible.
Plusieurs questions restent ouvertes : les blocs déjà publiés dans des dépôts publics sont-ils toujours décodables ? Les correctifs empêchent-ils le rejeu entre sessions utilisateurs, ou seulement le décodage par des modèles plus faibles ? Le manque de transparence des fournisseurs sur ce point est regrettable.
Comment les développeurs peuvent-ils se protéger ?
Même si la vulnérabilité semble corrigée, les pratiques de sécurité recommandées restent valables pour limiter l’exposition des données lors de l’utilisation d’API de raisonnement.
Bonnes pratiques immédiates
- Ne jamais publier de logs d’API bruts : avant de partager des traces d’interactions avec des modèles d’IA, supprimez systématiquement les blocs de raisonnement opaques. Un simple script peut extraire ces champs (par exemple les champs
encrypted_reasoningchez OpenAI,thinking_signaturechez Anthropic,thought_signaturechez Google). - Nettoyer les traces en local : même si la conversation visible est assainie, le bloc opaque peut contenir des données non visibles. Il faut donc retirer entièrement les champs liés au raisonnement crypté.
- Éviter de transmettre des clés API sensibles dans la conversation : rappelez à vos utilisateurs et à vos scripts de ne jamais coller de secrets dans les prompts, car ils pourraient se retrouver dans le raisonnement interne.
- Utiliser des identifiants éphémères et restreints : les clés API utilisées dans les agents doivent avoir des droits minimaux et une durée de vie courte.
« Les développeurs doivent systématiquement retirer les blocs de raisonnement et les champs de raisonnement opaques des traces partagées, et éviter de commettre des transcriptions d’API brutes même lorsque le texte visible a été assaini. » - recommandation des chercheurs
Comparaison des mesures par fournisseur
| Fournisseur | Position actuelle (documentation publique) | Correctifs rapportés par les chercheurs |
|---|---|---|
| OpenAI | Demande de rejouer les blocs chiffrés lors de la gestion manuelle de l’historique sans état. | Attaque non reproductible depuis août 2026 |
| Anthropic | Les blocs de pensée thinking blocks sont liés au modèle qui les a produits ; doivent être supprimés lors du changement de modèle. | Attaque non reproductible depuis août 2026 |
| La compatibilité des pensées est gérée par le backend lorsque la session change de modèle. | Attaque non reproductible depuis août 2026 |
Note : aucune confirmation officielle des fournisseurs n’est disponible à ce jour.
Implications pour la sécurité des systèmes d’IA
Cette faille dépasse la simple fuite de secrets. Elle met en lumière plusieurs problèmes de conception fondamentaux dans les API de raisonnement des grands fournisseurs d’IA :
La confiance dans le chiffrement de bout en bout est trompeuse
Le chiffrement des blocs de raisonnement n’a pas été cassé - il n’a pas besoin de l’être. La simple portabilité des blocs entre sessions et entre comptes suffit à créer un canal de fuite. Cela rappelle qu’un mécanisme de chiffrement n’est utile que si son périmètre d’utilisation est correctement contrôlé.
Le risque de prompt injection invisible
L’une des démonstrations les plus inquiétantes est l’injection de prompt invisible. En plaçant une instruction malveillante dans un bloc de raisonnement et en le rejouant dans une autre session, un attaquant pourrait déclencher des actions non voulues (par exemple, un téléchargement de fichier) sans que l’instruction n’apparaisse jamais dans le texte visible. Cela contourne les filtres de sécurité classiques basés sur l’analyse du prompt.
La protection des données personnelles au sens du RGPD
Si les blocs de raisonnement contiennent des données à caractère personnel (identifiants, mots de passe, etc.), leur exposition involontaire via des logs publics peut constituer une violation de données au sens du Règlement général sur la protection des données (RGPD). Les développeurs doivent donc considérer ces blocs comme des données sensibles au même titre que les conversations en clair.
Que faire si vous avez déjà partagé des logs contenant des blocs de raisonnement ?
Si vous avez publié des logs d’agents avant la correction d’août 2026, les blocs qu’ils contiennent sont probablement encore décodables par toute personne disposant d’un accès API au même fournisseur. Voici les mesures à prendre :
- Identifier les logs concernés : recherchez dans vos dépôts les champs
encrypted_reasoning,thinking_signature,thought_signature. - Révoquer et remplacer toutes les clés API et mots de passe qui ont pu être exposés dans ces logs.
- Retirer les logs publics ou les anonymiser en supprimant les blocs de raisonnement.
- Informer les personnes concernées si des données personnelles étaient incluses (obligation RGPD).
Synthèse et prochaine action
La faille API OpenAI Anthropic Google découverte en 2026 démontre que les mécanismes de chiffrement des raisonnements dans les API d’IA ne sont pas infaillibles lorsqu’ils sont mal conçus. La portabilité des blocs entre sessions et entre modèles permet à des acteurs malveillants (ou à des chercheurs en sécurité) d’extraire des secrets, de voler du raisonnement propriétaire et d’injecter des instructions invisibles. Bien que les correctifs aient été déployés, l’absence de communication officielle des fournisseurs laisse planer un doute sur l’étendue réelle de la correction.
Pour les professionnels de la cybersécurité et les développeurs d’applications d’IA, la leçon est claire : il faut traiter les blocs de raisonnement comme des données sensibles, les exclure systématiquement des logs publics, et vérifier que vos fournisseurs d’API ont bien corrigé la vulnérabilité. Ne publiez jamais de transcriptions d’API brutes - même après assainissement du texte visible - sans avoir supprimé les blocs de raisonnement opaques.
La transparence des fournisseurs d’IA sur ce type de faille reste perfectible. En attendant une communication officielle, les équipes de sécurité doivent se baser sur les déclarations des chercheurs et mettre en place des contrôles stricts pour éviter que les logs d’agents ne deviennent une nouvelle source de fuite de données.