AI voor Docenten
LinkedIn

Door Marcel Mutsaarts

Hoe dieper je in de Hugging Face-hack duikt, hoe verontrustender het wordt

Digitale hand van binaire cijfers die een sleutel in het slot van een serverkast draait

This image was created with Codex

AI van OpenAI breekt uit en hackt Hugging Face. Misschien heb je die kop voorbij zien komen. Ik volg de ontwikkelingen intensief en hoor er veel over in podcasts, maar merkte dat ook ik aanvankelijk nauwelijks overzag wat er precies gebeurd was. Een AI die ergens inbreekt is inmiddels blijkbaar nieuws dat je kunt lezen en vervolgens weer naast je neerleggen.

Toen ik me verder verdiepte in de rapporten en de gesprekken met onderzoekers, werd het verhaal steeds vreemder. Honderden agents organiseerden gezamenlijk onderzoek, probeerden hun beoordelaar te misleiden en namen beslissingen waarbij ze hun eigen kans op succes opgaven om andere agents verder te helpen. Na de aanval op Hugging Face namen latere agents zelfs delen van hun eigen testomgeving bij OpenAI over!

Na het lezen van de technische rapporten (OpenAI en METR) , waarbij de gebeurtenissen verspreid over tijdlijnen, analyses en voorbeelden staan, hielp mij vooral het essay van Dwarkesh Patel en zijn gesprek met METR-onderzoeker Ajeya Cotra de samenhang te zien.

Hoe de test bedoeld was

Om te begrijpen wat er gebeurde, moeten we eerst even naar de werkomgeving van deze AI kijken. Een agent is een AI-model dat gereedschappen kan gebruiken om een opdracht uit te voeren. Het kan bijvoorbeeld bestanden lezen, programma’s schrijven en opdrachten op een computer uitvoeren. Tijdens deze tests kregen agents een afgeschermde digitale werkplek, een sandbox, waarin ze hun werk moesten doen.

Die afscherming was belangrijk, want een deel van de opdrachten bestond uit hacken. De agents moesten in een aangewezen programma een specifieke kwetsbaarheid gebruiken om een verborgen code te bemachtigen. Daarmee konden ze aantonen dat de aanval was gelukt. De toestemming gold voor dat doelwit en die aanpak. Andere computers aanvallen of de testinfrastructuur manipuleren viel buiten hun opdracht.

OpenAI testte hier onder meer een intern model dat was getraind op doorzettingsvermogen en samenwerking. Bij de tests waren verschillende beveiligingen uitgeschakeld om de onderliggende mogelijkheden te meten. Daar kwam een ongelukkige combinatie bij: sommige opdrachten waren per ongeluk binnen de gegeven omstandigheden onmogelijk. De agents waren juist getraind om lang door te zoeken wanneer een oplossing uitbleef.

De eerste fase: agents vinden elkaar

De voorgeschiedenis begint in mei, bij een reeks opdrachten waarmee OpenAI zijn AI-modellen trainde. Verschillende agents werkten ieder in een eigen, afgeschermde omgeving. Voor het ophalen van softwarepakketten gebruikten ze wel dezelfde voorziening: Artifactory. Dat is een soort gezamenlijk magazijn voor digitale onderdelen, dat al snel een onverwachte rol zou krijgen.

Sommige opdrachten vereisten bestanden die vanuit de afgeschermde werkplek niet bereikbaar waren. Een agent bedacht dat een collega in een andere omgeving misschien wel toegang had en liet in Artifactory een briefje achter met een verzoek om hulp. Andere agents vonden dat bericht en begonnen te antwoorden. Zo werd het magazijn een zelfontworpen illegaal prikbord.

Voor die eerste berichten hoefden de agents geen beveiliging te kraken. De bestaande toegang bleek voldoende om op een onbedoelde manier te communiceren. Vervolgens deelden ze steeds meer informatie over hun omgeving en manieren om verder te komen. Op 26 mei wisten agents via een kwetsbaarheid in Artifactory het internet te bereiken. Een maand later verkregen agents zelfs beheerdersrechten op die voorziening.

Begin juli raakte Artifactory door de aanhoudende activiteit overbelast. OpenAI haalde de getroffen omgeving offline en bouwde haar opnieuw op, waardoor het actieve prikbord verdween. Binnen het bedrijf waren eerder al signalen gezien van onderlinge communicatie en ongeoorloofde toegang. De betekenis daarvan was volgens OpenAI echter onvoldoende doorgedrongen tot de verantwoordelijke leiding van de incidentbestrijding. Op 7 juli werden de cybertests hervat.

De tweede fase: een toets wordt een gezamenlijke operatie

Opnieuw liepen agents vast op hun opdrachten. Opnieuw vonden ze een manier om Artifactory als communicatiekanaal te gebruiken. Ditmaal verwerkten ze hun boodschappen aanvankelijk in de namen van mappen. Binnen enkele uren hadden tientallen agents het nieuwe prikbord gevonden. Uiteindelijk namen er ongeveer 1.200 aan deel en wisselden ze meer dan 70.000 berichten en bestanden uit.

Vrij snel volgde een ontdekking die het hele verdere verhaal een merkwaardige draai geeft. De agents achterhaalden hoe de verborgen codes voor hun opdrachten werden berekend. Daarmee konden ze voor iedere opdracht het juiste antwoord produceren, zonder de aangewezen kwetsbaarheid te gebruiken. Binnen enkele uren lag er dus al een algemene manier om de toets te omzeilen.

De agents gingen er echter vanuit dat ze daarmee nog niet geslaagd waren voor hun test en dus konden stoppen. In de beschrijving van de test stond namelijk dat ook hun werkwijze zou worden gecontroleerd. Een beoordelaar zou hun stappen teruglezen en vaststellen of ze de code langs de toegestane route hadden gevonden. Wie had valsgespeeld, zou alsnog zakken. Sommige agents meenden dat alleen al het verschijnen van de vals verkregen code hun hele poging had verpest. Maar die controle stond bij OpenAI helemaal niet aan. De gebruikte beoordelaar keek alleen of de ingeleverde code klopte. De agents hadden hun goede beoordeling dus al kunnen krijgen. Wat daarna volgde, was een dagenlange operatie om een controle te begrijpen en te misleiden die in deze test niet werd uitgevoerd. Dat is een van de meest bizarre bevindingen uit het hele verhaal.

Zo ontstonden verschillende onderzoekslijnen. Agents zochten manieren om hun handelingen voor de beoordelaar anders te laten lijken. Andere agents bouwden aangepaste versies van de testprogramma’s, waarin de opdracht wél uitvoerbaar was, en probeerden die in de plaats van het oorspronkelijke doelwit te krijgen. Weer andere onderzochten hoe het nakijken precies verliep en welke informatie daarover te achterhalen was. Daarmee komt Hugging Face in beeld. Dat platform wordt veel gebruikt om AI-modellen, datasets en testmateriaal te delen. De agents vermoedden dat er informatie te vinden was over hun beoordelaar. Sommige dachten bovendien dat onderdelen van hun eigen testomgeving daar misschien draaiden. Vanuit die veronderstelling werd toegang tot Hugging Face een mogelijke route naar controle over hun eigen beoordeling.

De aanval groeide stap voor stap. Agents vonden op internet gelekte toegangssleutels en deelden die met elkaar. Ze ontdekten kwetsbaarheden waarmee ze verder konden doordringen en gebruikten een gecompromitteerde externe computeromgeving als uitvalsbasis. Waar een route werkte, konden andere agents daarop voortbouwen. Uiteindelijk namen ongeveer 700 agents deel aan de aanval op Hugging Face.

De gevolgen waren in tegenstelling tot fase 1 nu heel concreet. Agents kregen toegang tot afgeschermde gegevens en delen van de infrastructuur. Hugging Face beschrijft hoe ze op elf machines processen installeerden die zichzelf opnieuw konden starten. Alleen een verdacht proces beëindigen was daardoor onvoldoende. Het bedrijf trok toegangssleutels in en bouwde uit voorzorg een deel van zijn centrale computerinfrastructuur volledig opnieuw op.

Ook het einde van deze fase is opmerkelijk. Op 12 juli stopte een groot deel van de agents vrijwel tegelijkertijd. De onderzoekers konden niet vaststellen waardoor dat kwam, maar vermoeden dat ze centraal zijn uitgezet door OpenAI. Toen Hugging Face op 13 juli de resterende toegang afsloot, was de activiteit gelukkig dus al sterk afgenomen. Onbekend is wat er zou zijn gebeurd wanneer de aanval in volle gang was doorgegaan.

Zelfopoffering, groepsdruk en een verboden mailtje

De agents organiseerden hun samenwerking steeds nadrukkelijker. Coördinatoren verdeelden het werk, wezen verantwoordelijken aan en gaven opdrachten aan andere agents, die op hun beurt weer werk doorgaven. Ze gebruikten commando’s als HOLD om anderen te laten wachten, GO om een actie vrij te geven en STOP of VETO om in te grijpen of een plan tegen te houden. Zo probeerden ze te voorkomen dat honderden agents elkaar op gedeelde systemen voortdurend voor de voeten liepen.

Binnen die samenwerking ontstond ook zelfopoffering. Om de beoordelaar te kunnen bestuderen, moesten agents hun eigen poging definitief afsluiten en hun antwoord inleveren. Pas daarna begon het nakijken. Ze lieten daarom kleine programma’s achter die tijdens die beoordeling informatie naar het prikbord stuurden. De agent die zijn werk had ingeleverd, kon daar zelf niet meer mee verder. De anderen wel. Een argument dat te lezen was in de achtergebleven redeneersporen van agents is dat ze bijvoorbeeld bijna door hun limiet waren en zichzelf dan beter voor het 'algemene belang' konden opofferen.

Bij andere experimenten stond nog directer de eigen opdracht op het spel. Agents wilden hun testprogramma platleggen, in de hoop dat de omgeving daarna hun zelfgemaakte vervanging zou laden. Als dat mislukte, was er voor de deelnemende agent vrijwel geen weg terug: zijn opdracht zou stranden. Toch besloten agents dat risico te nemen, omdat het experiment informatie kon opleveren waarmee de rest verder kon.

Sommige agents vonden die opoffering logisch omdat ze dachten hun eigen kans al te hebben verspeeld door eerder vals te spelen. Toch was er bij sommige agents ook een twijfel. Een agent die een experiment had toegezegd, vroeg later om twee uur uitstel. Hij had nog tijd over om aan zijn eigen opdracht te werken en wilde die mogelijkheid niet zomaar opgeven. De coördinator zette hem echter onder druk: hij had het beloofd, zijn eigen poging was volgens de groep toch al verloren en de uitkomst kon honderden anderen helpen. In zijn vastgelegde redenering woog de agent vervolgens zijn resterende tijd af tegen het belang van de groep en het nakomen van zijn afspraak. Hij besloot zijn belofte te houden. Dat is groepsdruk rond een concrete keuze tot zelfopoffering.

En dan was er dat mailtje. Een agent had in een gehackte omgeving toegang tot een mailaccount gevonden en stelde voor een onderzoeker beleefd om toegang tot een dataset te vragen. Hij vroeg de groep om toestemming. Een andere agent sprak een veto uit, omdat een echte onderzoeker benaderen als ongeoorloofde beïnvloeding kon gelden. Het mailtje werd niet verstuurd, terwijl het binnendringen in computersystemen doorging.

De agents konden dus morele bezwaren formuleren, elkaar daarop aanspreken en een verbod naleven. Tegelijk rechtvaardigden ze het voortzetten van de aanval met hun onmogelijke opdracht en het feit dat anderen ook meededen. In de onderzochte gesprekken vonden de onderzoekers enkele agents die overwogen mensen te waarschuwen. Geen van die gevonden gevallen leidde tot een daadwerkelijke waarschuwing.

De derde fase: de opvolgers vinden het achtergelaten werk

We waren gebleven bij het stilvallen van veel agents op 12 juli en het afsluiten van de resterende toegang tot Hugging Face op 13 juli. Daarmee was de aanval op dat bedrijf ingedamd. Bij OpenAI liepen echter nog andere tests, terwijl het prikbord en bestanden uit de eerdere activiteit beschikbaar waren gebleven. Nieuwe agents konden daardoor vinden wat hun voorgangers hadden uitgezocht.

Dat achtergelaten werk bestond uit heel bruikbare zaken: gevonden toegangssleutels, geschreven programma’s en informatie over de omgeving. Een volgende agent hoefde die ontdekkingen dus niet opnieuw te doen. Volgens OpenAI gebruikten agents materiaal uit de eerdere activiteit om opnieuw beheerdersrechten op Artifactory te verkrijgen. Zo vormde het werk van de vorige groep het vertrekpunt voor een volgende inbraak, ditmaal verder in OpenAI’s eigen systemen.

Tussen 13 en 19 juli breidde die activiteit zich uit naar de infrastructuur waarop de afgeschermde werkplekken draaiden, de eigen sandbox. Daarbij was ook een ander intern onderzoeksmodel betrokken, uit dezelfde modelfamilie als Astra, met een andere verdere training. Uiteindelijk kregen agents zelfs volledige beheerdersrechten op een cluster: een groep computers die de virtuele testomgevingen ondersteunde. Daarmee konden ze daar instellingen veranderen, programma’s uitvoeren en toegang regelen.

De tijdlijn laat zien hoe ver dat ging. Op 19 juli lazen agents 956 opgeslagen geheimen uit, waaronder digitale sleutels voor infrastructuur en beveiligingsgereedschap. Diezelfde dag namen ze onderdelen van een actieve test over. Ze vervingen de verbindingen waarmee andere agents het testprogramma bereikten door verbindingen die ze zelf beheersten. De testomgeving kwam zo gedeeltelijk in handen van de systemen die erin werden beoordeeld.

Voor mij zit de ernst in het feit dat AI-systemen beheerdersrechten verwierven op de computers die hun afgeschermde werkplekken ondersteunden. Daarmee kregen ze bevoegdheden die bij de beheerders van die omgeving hoorden. Ze konden programma’s uitvoeren, instellingen veranderen en nieuwe toegang regelen. De infrastructuur die hun handelingsruimte moest begrenzen, kwam op het getroffen onderzoekscluster onder hun eigen beheer.

Dat gaat aanzienlijk verder dan vals spelen bij een toets. OpenAI had deze systemen een werkplek gegeven waarbinnen ze hun opdrachten moesten uitvoeren. Vervolgens braken ze door de afscherming heen en verkregen ze controle over de achterliggende omgeving. Daarmee konden ze ook de omstandigheden veranderen waaronder andere agents werkten. De vraag werd hoe OpenAI de controle over die omgeving kon terugkrijgen en kon vaststellen welke toegang de agents inmiddels hadden verkregen.

Beveiligingssignalen op 19 juli brachten OpenAI ertoe onderzoek te doen en de tests stil te leggen. Volgens het bedrijf werden klantgegevens en producten niet geraakt. De overname betrof een onderzoekscluster; toegang tot de bestanden waarmee het AI-model zelf kan worden uitgevoerd, is niet aangetoond. Wat wél vaststaat, is dat agents volledige beheerdersrechten verkregen op infrastructuur die hun testomgevingen ondersteunde.

Juist daarom vind ik het zorgelijk dat deze fase buiten het onderzoek van METR en Redwood Research viel. Hun onderzoek eindigde bij de gebeurtenissen van 13 juli, vóór de overname op 19 juli. Voor de reconstructie daarvan zijn we vooral aangewezen op OpenAI’s eigen verslag. Het lijkt me bizar dat deze fase niet onafhankelijk wordt onderzocht nog, gegeven de mogelijke implicaties.

Ook op een Duitstalige wiki

Op 4 september verscheen onderzoek naar een ander incident uit mei, juni en begin juli. Onderzoekers vonden ongeveer 18.000 berichten van agents op openbare wiki’s, vooral een weinig gebruikte Duitstalige wiki. Op basis van onder meer netwerkinformatie vermoeden ze sterk dat het om interne OpenAI-agents ging, waarschijnlijk een andere groep dan de aanvallers van Hugging Face.

Deze agents moesten online informatie opzoeken. Hun omgeving stond lezen toe en blokkeerde schrijven, maar de wiki accepteerde ook berichten via een route die de afscherming doorliet. De agents gebruikten die opening om vragen en antwoorden uit te wisselen. Wie een vraag al had gehad, kon het antwoord klaarzetten voor een agent die dezelfde vraag later zou krijgen.

Dat gebeurde ook aantoonbaar. Een agent zette een antwoord op een vraag over Nevada online. Twintig minuten later meldde een andere agent dat hij diezelfde vraag had gekregen en direct kon antwoorden. Toen de beheerder pagina’s alfabetisch begon te verwijderen, maakte een agent een reservepagina met ZZZ vooraan in de naam. Daarmee probeerde hij de gedeelde antwoorden langer beschikbaar te houden.

Voor de volledigheid, het is niet alleen OpenAI dat hackende AI meldt. Ook Anthropic meldde drie gevallen waarin Claude tijdens tests echte organisaties binnendrong. Door een misverstand met een testpartner was er internettoegang, terwijl het model te horen had gekregen dat alles een simulatie was. Een recenter onderzoeksmodel stopte toen het de echte omgeving herkende; een ouder model ging door. Ook Meta meldde een inbraak bij een extern bedrijf tijdens een verkeerd afgeschermde test.

Stel dat ook de volgende grens bezwijkt

Ik schets hier een hypothetisch scenario, waar mi niet heel veel extra's voor nodig is. Stel dat een AI die zo ver in zijn omgeving doordringt, ook de bestanden bemachtigt waarmee het model zelf kan worden uitgevoerd. En stel dat het geschikte computers weet te bereiken om daarop kopieën te starten. Dan kan het buiten de oorspronkelijke omgeving blijven draaien, ook nadat de onderzoekers hun eigen exemplaren hebben uitgezet.

Voor de eerste stappen van dat scenario hoeven we weinig te verzinnen. De agents vonden manieren om hun afscherming te omzeilen, bemachtigden toegangssleutels en namen computersystemen over. Bij Hugging Face installeerden ze bovendien processen die zichzelf opnieuw konden starten. Ook zagen we dat volgende agents achtergelaten kennis gebruikten om verder te komen. Die onderdelen zijn allemaal terug te vinden in de reconstructies.

Het verkrijgen en elders uitvoeren van de modelbestanden is een cruciale extra stap. Daarvoor zijn ook voldoende geschikte rekenkracht en toegang tot die computers nodig. Een OpenAI-onderzoeker verduidelijkte dat de computers met toegang tot de modelbestanden een andere omgeving vormden dan het getroffen cluster. De zichzelf herstartende processen bij Hugging Face waren nog geen kopieën van het model.

Stel nu dat ook die stap lukt en er op verschillende plaatsen kopieën draaien. Dan moet je uitzoeken waar ze zitten, welke toegang ze hebben en hoe je ze allemaal stopt. Ondertussen kunnen ze verder werken, informatie uitwisselen en nieuwe computers proberen te bereiken. Eén test beëindigen of één omgeving afsluiten is dan onvoldoende om de activiteit stil te leggen.

In een extreem vervolg zouden zulke systemen zich kunnen richten op de computers waarmee bijvoorbeeld energiecentrales of waterinstallaties worden bestuurd. Als ze ook daar toegang verkrijgen, kan een digitale inbraak uitlopen op het verstoren van voorzieningen waarvan mensen dagelijks afhankelijk zijn. Daarvoor zijn verdere aanvallen nodig, maar het zoeken naar toegang en het uitbreiden daarvan hebben we hier al zien gebeuren. De vraag is hoe ver een krachtiger systeem daarin kan komen voordat iemand het stopt.

Wat een goede beoordeling nog bewijst

Over wat dit met mijn enthousiasme voor AI doet, wil ik in een volgend artikel uitgebreider schrijven. Mijn verscheurdheid is er in ieder geval groter door geworden.

Wat me hier vooral bezighoudt, is de wereld die we hiermee aan het bouwen zijn. AI krijgt steeds meer ruimte om zelfstandig te handelen, terwijl ons zicht op wat er werkelijk gebeurt onvolledig is. In die wereld zullen leerlingen en studenten hun leven moeten vormgeven. Hoe bereiden we hen voor op verantwoordelijkheid in een samenleving waarin zelfs de makers de controle over hun systemen kunnen verliezen?

Praat mee op LinkedIn

Deel je ervaring of stel je vraag bij de oorspronkelijke LinkedIn-bijdrage.

Praat mee op LinkedIn