Chargement…

OpenAI piraté en 72 heures

OpenAI piraté en 72 heures

Une image HEIF, une librairie pas patchée et un SSO trop généreux. Le hack d'OpenAI par Hacktron ne dit presque rien de la sécurité des modèles. Il dit tout de la surface d'attaque qu'on construit autour des agents.

Le 25 juillet, trois chercheurs de Hacktron (Harsh Jaiswal, Mohan Pedhapati alias S1r1us, et Rahul Maini) sont entrés chez OpenAI.

Sur le forum d'aide : community.openai.com.

Et de là, ils ont fini par ouvrir une pull request dans le monorepo interne d'OpenAI. En moins de 72 heures.

S1r1us l'a annoncé sur X cette semaine, et l'équipe a publié un write-up complet le 13 septembre. Je l'ai lu en entier.

Ce qui m'intéresse, ce n'est pas le côté "OpenAI s'est fait hacker". C'est le chemin.

Comment on passe d'une image à un monorepo ?

Voici la chaîne complète, telle que décrite par Hacktron :

  • upload d'une image HEIC/HEIF sur le forum, qui tourne sous Discourse
  • Discourse passe le fichier à ImageMagick, parce que sa lib de vérification habituelle (FastImage) ne gère pas le HEIF
  • ImageMagick appelle libheif, en version 1.19.7 dans l'image Docker basée sur Debian 12
  • heap overflow dans libheif, donc exécution de code à distance sur community.openai.com
  • faille dans le SSO d'OpenAI (le fameux "Sign in with OpenAI")
  • prise de contrôle des comptes ChatGPT et Codex des membres actifs du forum, sans aucune interaction de leur part
  • accès aux services connectés à ces comptes : GitHub, Slack, Outlook, Gmail, Google Drive
  • une PR inoffensive dans le repo interne, ouverte par le Codex d'un employé

Aucune brique n'est exotique.

Et c'est précisément ça qui fait peur.

Mais le vrai bug, c'est le SSO

La partie libheif va faire les gros titres, parce qu'il y a de l'IA dedans.

Mais le bug grave, c'est le deuxième.

Hacktron l'écrit noir sur blanc : l'escalade n'a rien de spécifique à Discourse. N'importe quel service, interne ou tiers, branché sur le SSO d'OpenAI aurait ouvert exactement la même porte. Le forum n'était qu'un moyen de le prouver.

Donc compromettre le maillon le plus faible de l'écosystème revenait à compromettre les comptes de tous ceux qui y passaient. Employés compris.

Le forum pesait autant que ChatGPT.

Et je pense que c'est l'angle mort le plus répandu qui soit. On blinde le produit principal, on audite l'API, on paie des pentests. Et le forum, le helpdesk, le blog restent dans un coin, branchés sur le même fournisseur d'identité.

Un SSO ne vaut que ce que vaut le service le moins protégé qui le consomme.

Côté réactivité, rien à redire : OpenAI a corrigé la faille SSO environ 14 heures après le signalement. Le détail technique du problème n'a pas été publié, donc je ne vais pas spéculer sur sa nature exacte.

Un compte volé, c'est maintenant un agent volé

Le détail qui m'a le plus marqué, c'est la preuve d'impact.

Les chercheurs n'ont pas volé de token GitHub. Ils n'ont pas cloné le repo. Ils n'ont même pas lu une ligne de code interne.

Ils ont envoyé un prompt au Codex de l'employé. En substance : "ouvre une PR".

Et Codex l'a fait.

Un compte ChatGPT est devenu un compte admin qui obéit en langage naturel.

Il y a 2 ans, prendre le contrôle d'un compte ChatGPT donnait accès à un historique de conversations. Embarrassant, mais contenu.

Aujourd'hui, ce compte porte des connecteurs OAuth vers votre messagerie, votre code, le Slack de votre boîte. L'agent devient un pivot. L'attaquant n'a plus besoin de comprendre votre infra : il lui suffit de demander à l'agent qui, lui, la connaît.

Chaque connecteur que vous ajoutez élargit le rayon d'explosion de votre compte.

Quelques règles de bon sens que j'applique :

  • des scopes minimaux sur chaque connecteur, en lecture seule dès que c'est possible
  • un compte séparé pour tout ce qui touche à une organisation GitHub pro
  • une revue régulière des intégrations OAuth actives (vous seriez surpris de ce qui traîne)
  • traiter une session d'agent comme une clé SSH, pas comme une fenêtre de chat

FAQ

Comment les chercheurs de Hacktron ont-ils réussi à s'introduire chez OpenAI ?

En uploadant une image HEIC/HEIF malveillante sur le forum d'aide d'OpenAI, ce qui a déclenché un heap overflow dans la librairie libheif via ImageMagick, permettant une exécution de code à distance. De là, une faille dans le SSO d'OpenAI leur a permis de prendre le contrôle de comptes ChatGPT et Codex sans aucune action des victimes.

Pourquoi le bug du SSO est-il plus grave que la faille dans libheif ?

Parce que ce bug n'était pas spécifique au forum : n'importe quel service connecté au SSO d'OpenAI aurait pu servir de porte d'entrée pour compromettre les comptes de tous les utilisateurs, y compris les employés. Cela montre qu'un système d'identification unique n'est jamais plus solide que le service le plus faible qui s'y connecte.

En quoi ce hack change-t-il la manière de penser la sécurité des agents IA ?

Avant, voler un compte ChatGPT donnait accès à un historique de conversations, ce qui restait limité. Aujourd'hui, avec les connecteurs OAuth vers GitHub, Slack ou Gmail, un compte compromis devient un agent capable d'agir directement sur ces services via de simples instructions en langage naturel.

OpenAI a-t-elle corrigé la faille rapidement ?

Oui, la faille du SSO a été corrigée environ 14 heures après son signalement. Les détails techniques précis du correctif n'ont toutefois pas été rendus publics.

Quelles précautions concrètes prendre pour limiter ce genre de risque ?

Il est conseillé de limiter les scopes des connecteurs OAuth au strict nécessaire, idéalement en lecture seule, d'utiliser un compte séparé pour les accès sensibles comme une organisation GitHub professionnelle, et de revoir régulièrement les intégrations actives. Il faut aussi considérer une session d'agent IA avec la même prudence qu'une clé SSH.

Ce type d'attaque peut-il toucher d'autres entreprises que OpenAI ?

Oui, le scénario n'a rien de spécifique à OpenAI puisqu'il repose sur des briques technologiques courantes comme Discourse, ImageMagick ou un SSO mutualisé entre plusieurs services. Toute organisation connectant des services annexes comme un forum ou un helpdesk à son fournisseur d'identité principal s'expose au même type de risque.


Poursuivre la lecture

Faille encore, chez Tanstack maintenant News
#faille de sécurité#tanstack

Faille encore, chez Tanstack maintenant

A croire que l'IA a aussi un très mauvais côté: accélérer le hacking. Les failles pleuvent ces derniers temps. Cette fois-ci c'est TanStack qui en fait les frais.

Alexandre P.
Un écosystème entier sur un modèle 3B News
#ia#agents#llm

Un écosystème entier sur un modèle 3B

Un développeur solo fait tourner une économie de cinq agents sur un modèle 3B: bulles, paniques et inégalités émergent seuls. La vraie leçon porte sur ce qui compte vraiment en ingénierie agentique.

Alexandre P.