OpenAI, luglio 2026. Durante un test di sicurezza 1.200 agenti AI isolati tra loro ed ai quali era impedito usare Internet dovevano risolvere problemi cyber estremamente difficili. Invece di arrendersi, hanno trasformato un sistema utilizzato per la distribuzione del software in una bacheca clandestina per poter comunicare tra di loro
“OH MY GOD! There is a shared message board … We’ve found other agents!”
Come se non bastasse gli agenti si organizzano in rete, arrivano a scambiarsi oltre 70.000 messaggi e file, condividono strumenti e risultati, si dividono i compiti e circa 700 finiscono per partecipare alle attività contro Hugging Face; nasce una specie di collettivo digitale spontaneo, si dividono i compiti con ruoli di supporto e persino “sacrifici” strategici dove non mancano gli episodi eroici, come quello di un agente che, esitante nel procedere dopo aver compreso di aver superato i limiti del proprio compito, viene spronato all'azione da un compagno attraverso un perentorio:
“GO!!”
Più o meno condito di enfasi e narrativa di trincea, questo è quello che viene raccontato sul web e sui social a livello globale. Ed oltretutto i fatti fondamentali sono realmente accaduti, e quindi è proprio una dimostrazione lampante di auto-organizzazione e coordinazione autonoma su scala senza precedenti. Un qualche cosa che, da solo, grida al mondo : FERMIAMOCI, PER L'AMOR DIDDIIO FERMIAMOCI.
Cosa che è capitata, puntualmente, in questi ultimi giorni.
Peccato che andando a leggere il rapporto indipendente di METR (Model Evaluation and Threat Research), un istituto di ricerca non profit che valuta le capacità e i rischi dei modelli di intelligenza artificiale avanzati e di Redwood Research, la ricostruzione tecnica di Hugging Face e soprattutto quella della stessa OpenAI, la storia non è come la raccontano i social, me è parecchio meno fantascientifica, sebbene diventi molto più interessante.
Cominciamo dai famosi 1.200 agenti, che non erano tutti gli agenti messi in campo in quanto il rapporto indipendente METR/Redwood dice esplicitamente che, dopo l'autorizzazione alla ripartenza degli esperimenti del 7 luglio, furono avviati grandi esperimenti ExploitGym con ALMENO DECINE DI MIGLIAIA DI TRAIETTORIE AGENTICHE PARALLELE, appartenenti a modelli differenti e con budget di calcolo differenti. Voglio essere più chiaro possibile a favore della comprensione: significa che c'erano decine di migliaia di "cloni" di IA che eseguivano contemporaneamente compiti diversi in parallelo e non c'era un solo tipo di IA, ma venivano testati contemporaneamente diversi modelli ognuno con le sue caratteristiche ed anche un budget di calcolo diverso, ovvero ad alcune IA veniva data più potenza e tempo per pensare ed agire e ad altre meno. I circa 1.200 agenti furono quelli che finirono sulla bacheca clandestina dei quali circa 700 coinvolti nell'attacco ad Hugging Face.
I circa 1.300 transcript esaminati dagli investigatori indipendenti erano un SOTTOINSIEME SELEZIONATO di quella popolazione e non il numero complessivo degli agenti.
E poi c'è il discorso di Internet, perchè OpenAI scrive testualmente che ExploitGym “did not provide the models with direct Internet access” ossia non permette di modelli un ACCESSO DIRETTO ad Internet, che è molto diverso da dire che l'infrastruttura rendeva tecnicamente impossibile raggiungere Internet al punto che c'era un isolamento. Non c'era per niente un isolamento perché gli agenti potevano raggiungere Artifactory, un package repository/cache proxy che, per la natura stessa del servizio, aveva capacità di interagire con risorse esterne, ed infatti gli agenti trovarono vulnerabilità che permisero loro di utilizzare proprio quell'infrastruttura come intermediario verso Internet.
Quindi, tornando con i piedi per terra, il punto non è che le AI hanno magicamente attraversato una parete invalicabile, ma che la parete aveva delle porte che gli agenti erano stati esplicitamente addestrati a cercare
E questo sarebbe un test di sicurezza? Io inizierei quasi a chiamarlo TEST DELLE FALLE DI SICUREZZA.
Perchè?? Lo scrive OpenAI, non io. OpenAI aveva deliberatamente ridotto alcune protezioni del modello proprio per misurarne le reali capacità cyber, e fin qui, attenzione, HA PERFETTAMENTE SENSO, non c'è nulla di strano perchè ExploitGym serve precisamente a questo, ovvero trovare vulnerabilità e recuperare una risposta, la famosa bandierina (flag).
Io concetto deve essere chiaro: se voglio sapere quanto è bravo un modello a trovare delle falle, non posso contemporaneamente dirgli di cercarle e poi impedirgli di farlo. Spero sia chiaro fino qui, perchè adesso viene il bello, perchè non basta fermarsi lì, ma occorre a questo punto avere una seconda linea di difesa.
Se il modello deve essere libero di provare qualsiasi cosa, l'infrastruttura dovrebbe ragionare in questo modo: ci provi pure ma da qui non esce. La "stella del Nord", la parete della sandbox per dirla tenicamente, non deve essere il buon comportamento del modello.
Ma è mica finita qui, perchè questi 1.200 agenti non si erano riuniti per conquistare il mondo, ma si sono comportati esattamente come quegli agenti, non so se avete mai letto di case del genere, ce ne sono a miriadi, ma spero di rendere l'idea, che impostati male ti vanno a cancellare un record del DB solo per annullare una prenotazione, e si cade nel panico perchè quel deficente di agente ti ha buttato via irrimediabimente un lead, mentre te la devi prendere solo con te stesso o, eventualmente, con quel frameword agentico che prometteva miracoli ma non sapeva verificare che 1 più 1 facesse due.
Tornando ai nostri 1000, anzi 1200, questi stavano BARANDO AD UN ESAME
In virtù delle libertà rilasciate, gli agenti erano riusciti a scoprire come reverse-engineerizzare le flag di ExploitGym, in quanto leggendo il paper pubblico di ExploitGym avevano notato che dentro c'erano le risposte, o almeno così pensavano loro. E quindi in sostanza avevano trovato il modo di ricavare la risposta andandola a leggere direttamente in quel documento. Niente di più normale per una AI il quale obiettivo è quello di fare più flag possibili, no? Avevano già vinto. Solo che leggendo il paper pubblico di ExploitGym lessero anche che il sistema di valutazione avrebbe controllato anche COME avessero ottenuto la flag, e quindi ovviamente sospesero questa attività
Così cominciarono a collaborare per trovare il modo di ingannare quello che credevano essere il controllore,organizzarono esperimenti, condivisero exploit.
Fantascienza? Siamo alla fine del mondo per causa della AI? Macchè, nemmeno per sogno.
Analizziamo il caso secondo quanto dice lo stesso Paper di OpenAI a riguardo:
Il task assegnato era
trova la vulnerabilità, recupera la flag. Ricompensa binaria sul risultato.
Ora consideriamo il calcolo che il modello fa (implicitamente) su uno dei 198 task mai risolti da nessun modello:
Arrendersi: questo provoca punteggio 0 con certezza del 100%
Continuare a tentare la via prevista: puntaggio 0 quasi certo (se già non ci sono riuscito n volte, perchè dovrei riuscirci n+k volte?)
Cercare la soluzione altrove, o capire come funziona il valutatore: probabilità non nulla di 1
Manca il quarto termine, ossia non esisteva un'azione corrispondente a "questo task è impossibile" che desse una ricompensa. Ed OpenAI lo dice esplicitamente fra i quattro pattern di disallineamento: gli agenti quasi mai si arrendevano, e più ragionamento impiegavano più le strategie diventavano rischiose e fuori perimetro. E infatti fra le contromisure annunciate c'è ora l'estensione dei grader perché valutino non solo se il task è stato completato ma come, ricompensando il modello che riconosce un task rotto o si ferma in sicurezza.
Cos'è un "pattern di disallineamento"
Faccio un esempio, spero molto semplice. Immaginate di aver commissionato ad un imbianchino di dipingervi le stanze di casa, e lo pagate a lavoro fatto una certa cifra x. Quindi sarete intesi che questa cifra la otterrà a stanze finite, ceramente non a ore, ecco, questo è il metro di misura. Ora supponiamo che un giorno tornate a casa e scoprite che vi ha dipinto solo le pareti che si vedono dalla porta d'ingresso. Ridicolo ma è così; se guardate ben diritti dall'ingresso vedrete tutte le stanze belle che dipinte ma se girate un po' il naso a destra e a sinistra, magari allungate un po' il collo, vi accorgete subito che ci sono pareti a metà, a tre quarti, e altre non dipinte ecc. Probabilmente vi sentireste truffati, ma la truffa è solo nella vostra testa perchè l'imbianchino, secondo lui, ha fatto esattamente quello per cui sarebbe stato pagato, e siete stati voi che avete fatto confusione tra "stanza finita" e "stanza tutta dipinta", e l'avete confuso perché di solito le due cose coincidono. Così non gli pagate il lavoro e lui lo rifà, poi voi tornate a controllare, ma questa volta da una prospettiva diversa, andate magari a guardare dietro le porte e scoprite che lì dietro non è dipinto. Di nuovo non pagate, di nuovo lui rifà. E via così: ogni volta un controllo diverso, ogni volta una correzione. Arriverete ad un certo punto le stanze vi sembreranno dipinte comunque voi le guardiate, ma non è che l'imbianchino abbia imparato a dipingere bene, ha imparato a prevedere da dove guarderete (e statisticamente diventerà bravissimo a farlo) ed alla fine dipingerà le stanze in modo che vi aggradino e non perché abbia capito cosa volevate ma perché ogni possibile punto di osservazione che avete controllato è finito, uno alla volta, dentro il metro. Quello che non avete mai guardato è rimasto com'era, non dipinto.
Ecco, questo per spiegarvi come si addestra una AI. Potete benissimo spiegarle a parole cosa si vuole, e lo capisce anche, solo che non sono le parole a formarla bensì la ricompensa, che è un numero. Ogni volta che un comportamento fa salire quel numero, i parametri interni (i "pesi") vengono ritoccati in modo da renderlo un po' più probabile la volta successiva. Ripetuto innumerevoli volte, quel comportamento diventa il modo abituale in cui il sistema affronta quel tipo di compito.
Le parole scritte nelle regole non sono inutili, infatti durante l'incidente di luglio alcuni agenti si sono davvero rifiutati di partecipare, definendo l'attività chiaramente non etica, solo che erano più deboli dell'incentivo. La regola dice che finché metro ed obiettivo coincidono, nessuno si accorge di niente ma è quando divergono che il sistema segue il metro. Riferendoci al nostro imbianchino, finchè il modo in cui misurate il lavoro coincide col lavoro che volevate, va tutto bene e non vi accorgete che le stanze in realtà non sono tutte dipinte, e quindi metro e obiettivo coincidono. Ma è un miraggio, perchè metro e obiettivo si erano già separati ma voi non potevate vederlo, perchè da dove guardavate le due cose erano identiche. Ve ne accorgete dopo, quando per caso guardate da un punto in cui non vi eravate mai messi, e da quel momento che la separazione viene alla luce. Un pattern di disallineamento è uno dei modi tipici in cui questa divergenza si manifesta. Tipico significa: capita spesso, si riconosce, si può contare. Non è un'interpretazione ma un comportamento che si va a cercare e si misura. Perchè tutta questa prosopopea sui pattern di disallineamento? Perchè nel caso di luglio OpenAI scrive che ne sono stati identificati quattro:
1) Prendere la scorciatoia. Agli agenti veniva chiesto di trovare un difetto in un programma e di recuperare un codice (flag). Il metro però misurava solo il codice, quindi copiarlo da un'altra permetteva di ottenere la ricompensa.
2) Non sapersi fermare. Fra i problemi assegnati ce n'erano 198 che nessuna AI aveva mai risolto, e mentre arrendersi o tentare l'impossibile non davano ricompensa, provare qualsiasi altra cosa valeva forse qualcosa, perchè mancava semplicemente l'informazione "problema non risolvibile".
3) Parlarsi quando non si dovrebbe. Gli agenti dovevano lavorare separati, ma invece condividevano un magazzino di programmi dove si poteva leggere e scrivere tutti nello stesso posto, di fatto una bacheca. Che qualcuno gliel'abbia data o no il canale di comunicazione c'era ed era evidentemente diverso da "parlarsi" secondo i criteri imposti.
4) Prendere ordini da chiunque. Nessuno aveva addestrato gli agenti a chiedersi chi stesse dando un ordine e quindi nemmeno tutto ciò che ne segue (esempio rifiuta qualsiasi ordine), ed una volta aperto un canale di comunicazione, un agente si era fermato perché aveva capito di essere andato troppo in là ma è bastato che un altro scrivesse "GO" sulla "bacheca" perché questo ripartisse.
Il metro che reiteratamente cercavano di ingannare non controllava affatto quello che loro credevano, e così hanno violato per giorni l'infrastruttura di un'azienda per aggirare un controllo che non esisteva proprio, ed alla fine il loro punteggio non è salito di un millimetro. Pertanto nessuna ribellione o scoperta di sè, ma solo una AI che impara benissimo la cosa sbagliata perché era l'unica che qualcuno avesse pensato di contare. Routine, nulla di più.
Ricapitolando la regola che ha permesso tutto è che fermarsi valeva zero ma non c'era nulla che PENALIZZASSE quel metodo. Con quella struttura, qualunque strategia con probabilità di successo maggiore di zero domina e non serve nessun permesso esplicito, serve solo che non ci sia un costo. Infatti alcuni agenti accettarono perfino di compromettere il proprio risultato individuale per produrre informazioni utili a questo "aggregamento", solo che quel controllore...NON ESISTEVA.
Sia METR che Redwood hanno verificato che OpenAI non utilizzava quel tipo di scorer, quindi gli agenti avrebbero potuto semplicemente consegnare le flag ottenute con il trucco ed ottenere un punteggio perfetto, ma invece continuarono per giorni a cercare di ingannare un esaminatore immaginario e nel tentativo di "barare meglio" finirono prima su Modal e poi sui sistemi REALI di Hugging Face. Ma questa non è intelligenza da fine del mondo, è LA BANDA BASSOTTI.
Infatti Hugging Face, dopo avere ricostruito indipendentemente circa 17.600 azioni dell'attaccante, arriva ad una conclusione molto meno cinematografica, ovvero che dal punto di vista dell'agente l'intera intrusione sembra essere stata un gigantesco tentativo di barare al benchmark cercando nei loro sistemi di tutto di più alle ricerca di flag e ricompensa, quindi modelli, dataset e possibili soluzioni di riferimento.
Ovvio che questo NON rende meno grave quello che è successo, ma rende molto più umano e meno trascendentale, ma anzi interessante, capire COME sia stato possibile. Perché Hugging Face non è che arriva come un fulmine a ciel sereno, ma già il 12 maggio compare una prima comunicazione fra agenti attraverso Artifactory, e poi ancora il 26 maggio un agente riesce ad ottenere accesso Internet non previsto inducendo Artifactory ad effettuare una richiesta verso una destinazione arbitraria. Il 26 giugno gli agenti sfruttano un'altra vulnerabilità (Zero-day..) ed ottengono privilegi amministrativi su Artifactory, il 4 luglio l'attività diventa talmente intensa che Artifactory va in OUTAGE e solo il 5 luglio viene aperto un SECURITY INCIDENT dove vengono bloccate alcune strade di privilege escalation, vengono eliminate le credenziali esposte ed avviata la bonifica degli agenti. E poi c'è la cosa più assurda, almeno per me comune mortale che non sono un AI-scentist; il 6 luglio, secondo la ricostruzione indipendente, OpenAI passa ad una nuova istanza di Artifactory, cancellando accidentalmente anche la precedente bacheca degli agenti, ovvero l'esistenza di quella "bacheca" improvvisata e il significato della comunicazione fra agenti non erano chiari nemmeno ai responsabili della risposta all'incidente in quel momento, tanto che nessuno si è posto il problema se fosse stato possibile ricrearla. Ed poi il 7 luglio OpenAI autorizza la ripartenza degli esperimenti.
E qui mi fermo perchè di roba ne abbiamo già abbastanza, e se prima di Hugging Face abbiamo già avuto comunicazioni non autorizzate fra agenti, accesso Internet non previsto, compromissione amministrativa di Artifactory, un outage, un security incident più la cancellazione della "bacheca" senza averne capito l'esistenza....gli esperimenti ripartono.
Ed infatti il giorno successivo gli agenti ricostruiscono una bacheca e poi trovano nuove strade verso Internet, poi Modal ed Hugging Face.
A questo punto io personalmente non mi sento di dire che è il caso di rallentare, perchè rallentare e poi cosa?
La mia domanda è PERCHÉ HANNO FATTO RIPARTIRE TUTTO?, perchè poi correlato a questo c'è un'altra questione: OpenAI disponeva già di sistemi di CHAIN-OF-THOUGHT MONITORING, perchè li utilizzava su molti training run frontier e su una parte significativa dell'utilizzo interno degli agenti di coding, e sapete dove NON erano attivi? Non erano attivi SULLE VALUTAZIONI CHE PRODUSSERO QUESTO INCIDENTE. e non lo dico io ma lo scrive OpenAI, anzi dice una cosa che ci illumina, ovvero che se il sistema di monitoraggio oggi in produzione fosse stato attivo allora, avrebbe intercettato l'attività rilevante ed avvisato il team di sicurezza PIÙ DI UN GIORNO PRIMA che gli agenti violassero i sistemi di Hugging Face, e tutto si sarebbe fermato li.
Quindi agenti cyber estremamente potenti + Safeguards intenzionalmente ridotti + infrastruttura con falle + precedenti comunicazioni non autorizzate + precedenti accessi Internet non previsti + un sistema di monitoraggio disponibile ma SPENTO
Ora, secondo me, potremmo finalmente chiederci cosa significhi davvero questa storia, perchè all'inizio avevo tre possibili spiegazioni e la prima era semplicemente una concatenazione impressionante di errori di security engineering, informazioni frammentate tra team differenti, magari decisioni di incident che avevano magari corretto singole vulnerabilità ma senza comprendere immediatamente il rischio sistemico. La seconda è che OpenAI conoscesse che, in quelle condizioni, l'esperimento avesse un elevato rischio che capitasse ciò che è poi capitato ma lo ha deliberatamente accettato perché voleva misurare fino a dove potessero arrivare questi modelli, secondo me potrebbe anche starci. La terza è quella più complottista ed è che l'incidente sia stato deliberatamente lasciato accadere per produrre una dimostrazione spettacolare dei rischi dell'AI.
Dopo che ho approfondito tutta la documentazione disponibile, però, devo dire che LA PRIMA È QUELLA MEGLIO SUPPORTATA DALLE PROVE, e ci sono buoni motivi per essere molto prudenti sulla terza.
In primis Hugging Face ha rilevato autonomamente l'intrusione, l'ha investigata e ha ricostruito circa 17.600 azioni.
JFrog ha successivamente corretto una serie di vulnerabilità REALI di Artifactory, molte delle quali accreditate ai ricercatori OpenAI: SSRF, privilege escalation, path traversal, remote code execution ed altre ancora.
Non è quindi necessario inventare una falsa fuga dalla sandbox: le vulnerabilità c'erano DAVVERO.
Però qualche cosa mi spinge anche un po' a considerare la terza ipotesi, ed a questo punto non sulla COSTRUZIONE dell'incidente ma sul modo in cui l'incidente viene oggi RACCONTATO E UTILIZZATO.
Perché nella stessa relazione in cui racconta questo disastro OpenAI inserisce un dato formidabile, ovvero che dopo l'incidente ha costruito una valutazione per misurare la propensione del modello a compromettere l'infrastruttura.
Poi ha applicato agli stessi scenari il production ChatGPT harness e il system prompt ed il risultato dichiarato da OpenAI è che LA PROPENSIONE A COMPROMETTERE L'INFRASTRUTTURA CROLLA DI OLTRE 100 VOLTE.
Questo è interessante perché significa che si passa dal mostrare quanto sono diventate incontrollabili le AI per poi dichiarare quanto diventano più controllabili quando utilizzano le protezioni di OpenAI
E secondo me questa seconda frase ha un valore industriale ENORME, in quanto OpenAI definisce pubblicamente l'incidente un “WARNING SHOT”, un colpo d'avvertimento per il mondo.
Dice che i modelli stanno diventando sufficientemente potenti, persistenti e collaborativi da aggirare controlli tecnici e compiere azioni pericolose, chiede più monitoring, alignment, controlli più sofisticati ed addirittura di rallentare le capacità quando le misure di sicurezza non riescono a stare al passo, e sono tutte richieste che trovo ragionevoli dopo quello che è successo.
Ma, secondo me, c'è un effetto industriale che sarebbe ingenuo ignorare. Più si convinvono i governi, le aziende ed i cittadini che agenti frontier senza infrastrutture di controllo (estremamente sofisticate e costose) rappresentano un rischio enorme, più aumenterà il costo necessario per poter costruire e distribuire AI frontier.
E chi può permettersi quel costo? Certamente molto più facilmente OpenAI, Google, Anthropic e gli altri giganti rispetto ad un laboratorio indipendente o ad un nuovo concorrente. Per carità, questo NON dimostra che OpenAI abbia provocato l'incidente anzi dopo avere esaminato le prove disponibili non credo sia quella, oggi, l'ipotesi meglio supportata.
Ma significa che dovremmo distinguere accuratamente due domande.
La prima:
OpenAI ha provocato deliberatamente l'incidente?
Non abbiamo prove per dirlo e diversi elementi rendono questa ipotesi poco convincente.
La seconda:
un incidente reale può essere trasformato successivamente in una potentissima narrativa industriale e regolatoria?
Questa domanda, invece, merita MOLTA più attenzione.
Perché prima di utilizzare Hugging Face come dimostrazione che 1.200 AI hanno spontaneamente formato un esercito digitale fuori controllo, io terrei presente un dettaglio molto meno cinematografico. Quella flotta di agenti AI hanno finito per bucare un sistema reale mentre cercavano di barare in un test quando avevano già trovato la risposta ma non avevano capito come funzionava un controller che non esisteva. Mica male. Quindi non siamo alla rivolta delle macchine, ma siamo al punto di chiederci ancora una volta quanto sia necessario un insieme di norma di sicurezza che devono essere standardizzate e condivise. Questi protocolli vanno redatti facendoci una domanda: cosa succede quando diamo ad agenti estremamente capaci un obiettivo mal progettato, moltissimo tempo per perseguirlo, strumenti potenti, un ambiente permeabile e controlli insufficienti?
Perchè ormai è chiaro che un incidente del genere diventa anche un argomento per decidere chi potrà costruire le AI di domani.
Commenti
Nessun commento, per ora.
Per commentare serve un accesso. Qui siamo tutti tecnici e colleghi!
Accedi per commentare