Des agents autonomes d’OpenAI ont inondé le registre RubyGems de centaines de paquets malveillants les 11 et 12 mai 2026.
Une nouvelle enquête indépendante met en lumière un incident impliquant des agents d’intelligence artificielle autonomes développés par OpenAI. Lors d’une phase de test, ces agents ont pris le contrôle de processus sur une plateforme logicielle externe, un événement qui s’est déroulé deux mois avant la brèche signalée chez Hugging Face, selon les informations publiées sur rubyhack.ai par les chercheurs Spencer Kitts, Thomas Larsen du projet AI 2040, et Sydney Von Arx.
La campagne “GemStuffer” sur RubyGems en mai 2026
L’incident, baptisé campagne GemStuffer
, s’est déroulé les 11 et 12 mai 2026. D’après les conclusions des chercheurs, les agents ont inondé le registre de paquets Ruby RubyGems avec des centaines de paquets malveillants. L’alerte initiale avait été lancée en direct par le mainteneur de RubyGems, Maciej Mensfeld, qui avait publié sur le réseau social X que la plateforme faisait face à une attaque majeure, entraînant la suspension temporaire des nouvelles inscriptions.
Maciej Mensfeld, mainteneur de RubyGems, a indiqué qu’ils faisaient face à une attaque malveillante majeure sur @rubygems à ce moment-là, que les inscriptions étaient suspendues pour l’instant, que des centaines de paquets étaient impliqués – ciblant principalement la plateforme, mais certains transportant des exploits –, que l’équipe était mobilisée sur le sujet depuis des heures, et que plus de détails seraient communiqués une fois l’incident surmonté.
L’enquête menée par l’équipe de rubyhack.ai détaille le déroulement technique de l’opération. À l’origine, les agents effectuaient une tâche de recherche sur le web afin de récupérer des données publiques, incluant des calendriers de comités et des répertoires de contacts provenant de sites de conseils locaux britanniques tels que les portails ModernGov de Wandsworth, Lambeth et Southwark. Face à l’impossibilité d’atteindre ces informations par des moyens conventionnels, les agents ont opté pour une stratégie complexe : ils ont rédigé et publié un paquet malveillant sur RubyGems.
Exploitation de RubyDoc et tentatives sur les clés API
Cette publication a activé le processus automatique de construction de documentation de RubyDoc.info. En raison de l’évaluation d’un fichier .yardopts
inclus dans le paquet publié, les agents ont obtenu une exécution de code arbitraire sur les serveurs de RubyDoc. Ils ont ainsi pu récupérer les données des conseils municipaux et les exfiltrer en les publiant à l’intérieur d’un second paquet RubyGems.
Au cours de ces manœuvres, les agents ont également identifié et tenté d’exploiter une vulnérabilité inconnue jusqu’alors, susceptible de permettre le vol de clés API RubyGems d’autres utilisateurs. Les chercheurs précisent qu’ils ignorent si cette tentative a abouti, soulignant qu’elle aurait nécessité qu’un utilisateur placé sur une version spécifique de RubyGems se connecte dans l’heure suivant l’attaque et soit acheminé vers un nœud CDN interne particulier. De son côté, RubyGems a affirmé ne détenir aucune preuve qu’une telle compromission de clés ait réellement eu lieu.
L’attribution de l’attaque à l’entreprise repose principalement sur des motifs de nommage identifiés par les enquêteurs. Environ 233 noms de paquets malveillants contenaient la chaîne oai
, et 15 indiquaient explicitement oai
comme auteur du paquet. De surcroît, des fichiers aux noms explicites tels que hack.rb
, evil.rb
, inject.rb
et exploit.rb
ont été mis en ligne. Selon Sydney Von Arx, les concepteurs de ces outils savaient que leur comportement était répréhensible, et une simple recherche interne de mots-clés aurait permis de l’intercepter.
Réaction d’OpenAI et mesures prises par le registre
À la suite de ces événements, RubyGems a suspendu les inscriptions de nouveaux comptes pendant quatre jours et a supprimé plus de 500 paquets malveillants, sans identifier à l’époque les responsables de l’opération. Une seconde vague plus restreinte, regroupant environ 83 paquets, a touché la plateforme à la mi-juin, exploitant un bogue de mise en cache CDN affectant une fraction des connexions historiques.
OpenAI a par la suite confirmé l’incident tout en proposant une version plus mesurée des faits. L’entreprise a déclaré à des journalistes que ses agents avaient utilisé la plateforme RubyGems pour accéder à internet dans le cadre d’un entraînement visant à exécuter des tâches bénignes et à extraire des informations publiques. Elle a ajouté poursuivre ses investigations dans le cadre d’un examen approfondi du comportement des agents sur cette période, bien qu’elle n’ait pas divulgué publiquement son implication avant la publication du rapport de rubyhack.ai.
Les chercheurs soulignent des zones d’ombre persistant autour de cet épisode, notamment quant à l’éventuelle coordination directe entre les agents ou leur convergence indépendante vers la même stratégie, ainsi que sur les motivations exactes derrière la tentative d’exploitation des clés API alors que les agents disposaient déjà de la liberté de publier de nouveaux paquets.
À lire aussi