Selon le rapport technique publié par l’équipe de recherche de Parameter, l’attaque reposait sur l’association de plusieurs fonctionnalités légitimes de ChatGPT : les conversations partagées publiquement, l’aperçu de code HTML et l’affichage de graphiques interactifs.
Aucune installation d’application, aucun téléchargement de logiciel et aucune manipulation technique particulière n’étaient nécessaires du côté de la victime. Dans la version la plus aboutie de la démonstration, il suffisait d’ouvrir un lien de partage spécialement conçu pour déclencher l’exécution du code malveillant.
Les chercheurs ont indiqué avoir reproduit le scénario entre des comptes distincts, puis démontré qu’il était possible de consulter des conversations qui n’avaient jamais été partagées avec l’attaquant.
Comment le lien de partage devenait-il un vecteur d’attaque ?
La vulnérabilité ne provenait pas directement d’une absence d’isolation de l’aperçu HTML de ChatGPT. Celui-ci était normalement exécuté dans une iframe restreinte, hébergée sur une origine différente de celle de l’application principale.
Cette séparation devait empêcher le code exécuté dans l’aperçu d’accéder directement aux informations de la page ChatGPT. Toutefois, les chercheurs ont découvert qu’un autre composant de l’interface permettait indirectement de contourner cette protection.
Une interaction dangereuse entre HTML Preview et MathLive
Le scénario commençait par l’insertion d’un graphique interactif dans une conversation malveillante. Ce graphique chargeait une bibliothèque JavaScript appelée MathLive, utilisée notamment pour gérer un clavier mathématique virtuel.
Lors de son initialisation, MathLive installait un écouteur de messages dans la page principale de ChatGPT. Cet écouteur utilisait le mécanisme postMessage, qui permet à différentes fenêtres ou iframes d’échanger des informations.
Le problème venait de la validation insuffisante des messages reçus. Selon les chercheurs, le composant acceptait certaines instructions sans vérifier correctement l’origine du message ni identifier précisément la fenêtre qui l’avait envoyé.
Un aperçu HTML contrôlé par l’attaquant pouvait ainsi transmettre des instructions à MathLive et modifier la configuration de son clavier virtuel.
L’injection HTML ouvrait la voie à l’exécution JavaScript
La manipulation permettait de remplacer le contenu du clavier virtuel par du HTML contrôlé par l’attaquant. MathLive insérait ensuite ce contenu dans la page principale à l’aide de la propriété JavaScript innerHTML.
Cette étape constituait un premier franchissement de la frontière de sécurité. Les chercheurs ont ensuite utilisé une iframe créée avec l’attribut srcdoc, sans attribut sandbox.
Cette iframe héritait alors de l’origine de la page ChatGPT qui l’avait créée. Le code exécuté à l’intérieur pouvait donc interagir avec le document parent dans le contexte de sécurité de chatgpt.com.
La politique de sécurité du contenu (CSP) de ChatGPT bloquait pourtant les scripts JavaScript intégrés directement dans la page. Les chercheurs ont contourné cette restriction en exploitant le comportement d’un point de terminaison JSONP de YouTube, dont le domaine était autorisé par la politique CSP.
Ce mécanisme a permis de faire exécuter du JavaScript contrôlé par les chercheurs malgré les restrictions initiales.
Des conversations privées accessibles depuis la session de la victime
L’impact de la vulnérabilité dépassait largement la simple modification de l’interface ou l’affichage d’une fenêtre d’alerte.
Une fois le JavaScript exécuté dans le contexte authentifié de ChatGPT, les chercheurs ont pu interagir avec les API internes auxquelles la session de la victime avait accès.
Leur démonstration comprenait plusieurs opérations :
- Énumérer les conversations récentes du compte ciblé.
- Récupérer le contenu d’une conversation privée non partagée avec l’attaquant.
- Lire les données retournées par les API authentifiées de ChatGPT.
- Transmettre certaines informations récupérées vers un serveur externe contrôlé par les chercheurs.
Le point le plus préoccupant concerne l’accès aux conversations privées. Les données récupérées ne provenaient pas simplement du contenu visible dans le lien public malveillant : les chercheurs ont démontré qu’une conversation distincte, qui n’avait jamais été partagée avec eux, pouvait être consultée.
Le rapport explique également que les possibilités d’action du code ne se limitaient pas aux opérations de lecture testées. Puisqu’il s’exécutait dans le contexte authentifié de la victime, il pouvait potentiellement effectuer d’autres actions accessibles depuis les interfaces et API de son compte.
Il faut toutefois distinguer cette démonstration contrôlée d’une exploitation réelle à grande échelle. Le rapport de Parameter documente une preuve de concept réalisée par les chercheurs, mais ne constitue pas en lui-même la preuve que des cybercriminels ont exploité cette faille contre des utilisateurs.
OpenAI corrige la vulnérabilité et attribue une prime de 5 000 dollars
Les chercheurs ont retracé plusieurs étapes dans la découverte et la correction de la faille :
| Date | Événement |
|---|---|
| 13 octobre 2026 | Première confirmation du chemin d’exploitation entre les messages MathLive et l’injection HTML. |
| 16 octobre 2026 | Démonstration de l’attaque entre des comptes distincts via un lien public. |
| 17 octobre 2026 | Reproduction d’un scénario avec déclenchement automatique de l’aperçu. |
| 18 octobre 2026 | Transmission du rapport à OpenAI. |
| 19 octobre 2026 | Ajout de la preuve d’accès à une conversation privée. |
| 21 octobre 2026 | Reproduction par OpenAI et passage de la sévérité P2 à P1. |
| 26 octobre 2026 | Correction confirmée sur les deux versions de l’interface web et attribution de la récompense. |
D’après Parameter, OpenAI a initialement évalué le problème au niveau P2 avant de le reclasser en P1, après avoir reproduit les conditions d’exploitation le 21 octobre.
Le correctif a été confirmé le 26 octobre 2026. Il consiste notamment à rejeter les messages inter-fenêtres MathLive concernés lorsqu’ils ne proviennent pas d’une source autorisée.
Les chercheurs indiquent avoir reçu une récompense de 5 000 dollars dans le cadre du programme de recherche de vulnérabilités d’OpenAI.
Aucun identifiant CVE n’est mentionné dans le rapport technique consulté. Il est donc préférable de désigner le problème comme une vulnérabilité de ChatGPT sans lui attribuer un identifiant qui n’a pas été publié.
Pourquoi cette vulnérabilité est-elle particulièrement importante ?
Cette découverte illustre un problème classique de sécurité des applications web modernes : une fonctionnalité peut être correctement isolée individuellement, mais devenir vulnérable lorsqu’elle communique avec un autre composant insuffisamment protégé.
Dans ce cas, l’aperçu HTML était exécuté dans un environnement restreint. Pourtant, la communication entre cet environnement et la page principale a créé une possibilité de contournement.
Plusieurs mécanismes de sécurité étaient concernés :
- La communication inter-fenêtres : les messages
postMessagedoivent être vérifiés à partir de leur origine et de leur fenêtre source. - La gestion du HTML : les données contrôlées par un utilisateur ne doivent jamais être considérées comme fiables sans validation et assainissement.
- L’isolation des iframes : les documents créés dynamiquement à partir de contenu non fiable doivent conserver des restrictions adaptées.
- La politique CSP : elle constitue une couche de défense supplémentaire, mais ne remplace pas une validation correcte des données et des communications.
Le rapport de Parameter rappelle ainsi que la sécurité d’une plateforme ne dépend pas uniquement de la protection de chaque fonctionnalité prise séparément. Les interactions entre composants doivent également faire l’objet de tests approfondis.
Quelles précautions prendre lors de l’utilisation de ChatGPT ?
Même si OpenAI indique avoir corrigé cette vulnérabilité, cette découverte rappelle l’importance d’adopter quelques bonnes pratiques lors de l’utilisation des plateformes d’intelligence artificielle.
Voici les principales recommandations :
- Éviter d’ouvrir des liens de partage suspects : un lien présenté comme une conversation ChatGPT peut contenir du contenu spécialement conçu pour exploiter une fonctionnalité de la plateforme.
- Vérifier l’origine des conversations partagées : privilégier les liens provenant de personnes ou de sources de confiance.
- Ne pas considérer un aperçu HTML comme inoffensif : les contenus interactifs peuvent introduire des risques lorsqu’ils interagissent avec d’autres composants de l’application.
- Limiter les informations sensibles partagées avec les assistants IA : éviter d’y déposer des mots de passe, des secrets d’entreprise, des clés API ou des données confidentielles sans cadre de protection adapté.
- Maintenir les navigateurs à jour : les correctifs de sécurité du navigateur constituent une protection complémentaire contre certaines techniques d’exploitation.
Les organisations qui utilisent ChatGPT dans un environnement professionnel devraient également sensibiliser leurs collaborateurs aux risques associés aux liens de partage et à l’ouverture de contenus interactifs provenant de sources inconnues.
Conclusion
La faille découverte par Parameter démontre qu’un simple lien de partage peut devenir un vecteur d’attaque sérieux lorsque plusieurs composants d’une application interagissent sans contrôles de sécurité suffisants.
En combinant une faiblesse dans la gestion des messages postMessage, une injection HTML et un contournement de la politique CSP, les chercheurs ont réussi à exécuter du JavaScript dans le contexte authentifié de ChatGPT. La démonstration a notamment permis de récupérer le contenu d’une conversation privée et de transmettre des données vers un serveur externe.
OpenAI a corrigé le problème le 26 octobre 2026 et l’a classé P1, avec une récompense de 5 000 dollars pour les chercheurs.
L’incident rappelle une leçon essentielle : les liens de partage, les aperçus de code et les contenus interactifs doivent être considérés comme des surfaces d’attaque potentielles, même lorsqu’ils sont intégrés à une plateforme largement utilisée.
SOURCE : GBHACKERS


