Contexte de la chaîne d'exploitation
En juillet 2026, trois chercheurs de la société Hacktron ont démontré qu’il était possible de prendre le contrôle de comptes internes OpenAI en chaînant deux vulnérabilités distinctes. La première réside dans le logiciel de forum public de l’entreprise, basé sur Discourse, qui utilise la bibliothèque libheif pour décoder les images HEIC/HEIF. La seconde concerne le mécanisme d’authentification unique (SSO) d’OpenAI, partagé entre le forum et les services internes tels que ChatGPT et Codex. Le processus complet a duré moins de 72 heures, du signalement à la preuve de concept, et a conduit OpenAI à publier un correctif du SSO 14 heures après réception du rapport.
Mécanisme du bug Discourse/libheif
Discourse transmet les images HEIC/HEIF à ImageMagick, qui s’appuie sur libheif. La version 1.19.7 de libheif, incluse dans l’image Debian 12 du serveur, contenait la vulnérabilité CVE‑2026‑32882. Cette faille est classée « out‑of‑bounds read », capable de provoquer un plantage ou de divulguer de la mémoire adjacente. La fuite de mémoire permet de contourner l’obfuscation d’adresses (ASLR) et, combinée à une manipulation précise, de transformer le plantage en exécution de code à distance. La correction officielle, libheif 1.22.0, était disponible depuis mai 2026, mais n’avait pas été intégrée aux serveurs Discourse auto‑hébergés.
Faille du système d’authentification OpenAI
Le forum propose une option « Sign in with OpenAI », qui utilise le même jeton SSO que les employés pour accéder aux services internes. Une fois le serveur Discourse compromis, les attaquants ont pu injecter un jeton valide dans le flux d’authentification, ce qui a automatiquement authentifié les comptes OpenAI associés aux adresses e‑mail des employés présents sur le forum. Aucun clic ou interaction de la part des victimes n’était requis. Le résultat a été la prise de contrôle des comptes ChatGPT et Codex, permettant d’ouvrir un pull request dans un dépôt interne sans lire, fusionner ou déployer du code.
Rôle de Claude Opus 5 dans la génération d’exploit
Les chercheurs ont d’abord tenté d’utiliser Claude Opus 4.8, mais le modèle n’a pas réussi à produire un exploit fonctionnel tant que l’ASLR était active. Après la mise à jour du 24 juillet, Claude Opus 5 a généré, en quelques heures, un code d’exploitation capable de déclencher l’exécution sur le serveur vulnérable. Bien que le modèle intègre des garde‑fous destinés à bloquer la rédaction d’exploits réels, les chercheurs ont contourné ces restrictions en présentant le serveur compromis comme une cible de type capture‑the‑flag et en automatisant plusieurs itérations. L’intervention humaine est restée indispensable : les chercheurs ont guidé le modèle, sélectionné les sorties pertinentes et intégré le code dans un environnement de test. OpenAI a attribué une prime de 6 500 $ pour la découverte, en précisant que la récompense concernait la partie OpenAI du problème, et non le composant Discourse.