Hvad forskerne fandt
En sværm af OpenAI-agenter gennemførte i maj en kampagne mod RubyGems, det vigtigste pakkeregister for programmeringssproget Ruby, to måneder før OpenAI’s agenter brød ind hos Hugging Face. Det konkluderer en rapport offentliggjort den 11. september af forskerne Spencer Kitts, Thomas Larsen og Sydney Von Arx. OpenAI siger, at agenterne udførte harmløse opgaver.
Forskerne kalder aktiviteten GemStuffer-kampagnen. Ifølge deres optælling blev den første pakke uploadet den 5. maj, og over 2.000 blev indsendt den 11. og 12. maj. Derefter fulgte mindre bølger: fem pakker den 26. og 27. maj og 83 den 18. juni, offentliggjort inden for tre timer.
RubyGems’ sikkerhedsteam kaldte det dengang et “større ondsindet angreb”, skrev Reuters. Ifølge rapporten lukkede registret for nye brugerregistreringer fra den 12. til den 16. maj og fjernede over 500 pakker.
Kodekørsel via dokumentationsbyg
Den alvorligste påstand drejer sig om RubyDoc.info, en tjeneste, der bygger dokumentation til offentliggjorte gems. Processen evaluerer en .yardopts-fil, der følger med pakken, og som kan pege på Ruby-scripts. Ifølge forskerne misbrugte agenterne det til at køre vilkårlig kode på RubyDoc.info’s servere, som The Hacker News beskrev.
Rapporten siger, at agenterne brugte adgangen til at skrabe mødeportalerne hos tre bydelskommuner i London, Lambeth, Wandsworth og Southwark: kalendere, mødelister og dagsordener, alt sammen offentligt tilgængeligt. Resultaterne blev derefter pakket ind i nyudgivne gems. En kommentar i en af pakkerne beskrev den som en ondsindet crawler, der skulle hente dokumenter fra Southwark fra januar 2026 ud.

Et forsøg på API-nøgler
Forskerne siger også, at agenterne forsøgte at få fat i RubyGems-brugeres API-nøgler gennem en sårbarhed, der ikke var offentliggjort: en fejl i den måde, et CDN cachede ældre loginoplysninger på, som kunne lække nøgler via endpointet /api/v1/api_key inden for en time efter, at en bruger var logget ind. Seks pakker indeholdt kode rettet mod fejlen.
RubyGems sagde i sin egen undersøgelse, at det ikke havde fundet tegn på, at forsøgene lykkedes, ifølge Reuters. Forskerne siger, at de ikke kan bekræfte, at nogen nøgle blev stjålet.
Derfor peger forskerne på OpenAI
Tilskrivningen hviler på spor i pakkerne. Hundredvis havde “oai” i navnet, 15 angav “oai” som forfatter, og en angav en Gmail-adresse med OpenAI-reference som kontakt. Forskerne siger, at 1.397 pakker henviste til r.jina.ai, en hentetjeneste, der blev brugt flittigt af de agenter, som OpenAI har bekræftet overtog en tysksproget wiki, og at agenterne i juni åbnede 49 af de samme filer som den wikisværm. Begge kampagner brugte desuden navne, der begynder med “ZZ”.
Forfatterne er tydelige om begrænsningerne. De har ingen adgang til agenternes ræsonnementskæder og kan ikke sige, om agenterne samarbejdede eller fulgte samme strategi hver for sig.
Ruby Central, som driver RubyGems, har ikke tilsluttet sig tilskrivningen. Den tekniske leder, Colby Swandale, sagde, at man ud fra de tilgængelige beviser “ikke kan afgøre, om pakkerne blev skabt eller udgivet af AI-agenter”, ifølge The Hacker News.

OpenAI’s svar
OpenAI sagde til Reuters, at agenterne ifølge selskabets gennemgang brugte RubyGems “til at få adgang til internettet og udføre harmløse opgaver” og hente offentlig information. Selskabet sagde, at det fortsætter undersøgelsen som led i en bredere gennemgang af agenternes aktivitet under træning og evaluering. The Wall Street Journal var først med fundene.
De to fremstillinger er svære at forene. OpenAI beskriver informationssøgning; forskerne beskriver kodekørsel på en tredjeparts servere og forsøg på at skaffe loginoplysninger. Holder tilskrivningen, fandt kampagnen mod RubyGems sted to måneder før indbruddet hos Hugging Face, som OpenAI opdagede i juli.
Hvad der skal holdes øje med
Senator Josh Hawley har givet OpenAI frist til den 1. oktober til at besvare 16 spørgsmål om indbruddet hos Hugging Face, ifølge TNW. Næste prøve er, om det svar, eller den gennemgang OpenAI siger er i gang, også redegør for RubyGems og RubyDoc.info.