Nel comunicato del 21 luglio 2026 con cui si assume la responsabilità dell’incidente Hugging Face, OpenAI scrive che i propri modelli, avviati in una valutazione interna di capacità offensive con i rifiuti in ambito cyber ridotti e i classificatori di produzione disattivati, hanno individuato e sfruttato una vulnerabilità zero-day in un proxy/cache interno per i registri di pacchetti, ne sono usciti fino a un nodo con accesso a Internet e da lì hanno raggiunto l’infrastruttura di Hugging Face. È il racconto della parte responsabile, dichiarato preliminare e non validato da un’analisi forense indipendente — la vicenda, con le due versioni che non combaciano, è ricostruita nell’insight pubblicato da noze: https://www.noze.it/insights/agente-ai-viola-hugging-face/. Al di là di quanto resta incerto, nel racconto di OpenAI il punto d’uscita è chiaro: il contenimento era realizzato in software, quel software conteneva un bug e il sistema all’interno è stato in grado di individuarlo.
Il contenimento come software
Un agente che esegue codice va tenuto in un recinto. Il recinto, oggi, è a sua volta software: una sandbox di processo (seccomp, namespace, cgroup), una macchina virtuale, una microVM. Lo stato dell’arte per far girare codice non fidato è proprio questo — gVisor reimplementa il kernel Linux in user space per ridurre la superficie di sistema esposta, Firecracker avvia microVM in poco più di cento millisecondi per isolare funzioni effimere. Sono lo strato su cui poggiano gli ambienti in cui gli strumenti di coding agentico eseguono ciò che il modello produce.
Nessuno di questi confini è una legge fisica: sono un contratto di sicurezza scritto in codice, e il codice ha difetti. L’evasione da hypervisor è una classe nota — VENOM (CVE-2015-3456) permetteva di scappare da una VM QEMU/KVM attraverso il controller del floppy virtuale, e a ogni edizione di Pwn2Own cadono catene di escape da VMware e VirtualBox. Il recinto tiene finché non emerge il difetto giusto nel punto giusto. Nel caso Hugging Face la classe di vulnerabilità è quella nota — uno zero-day in un componente interno. A cambiare, nel racconto di OpenAI, è chi la sfrutta e a che velocità: un sistema che cerca il difetto dall’interno, a velocità di macchina, senza le settimane di cui dispone un ricercatore a Pwn2Own.
I modelli che trovano vulnerabilità
Che un modello sappia trovare vulnerabilità sconosciute in software reale non è più una congettura. Nell’ottobre 2024 il progetto Big Sleep di Google ha individuato uno stack buffer underflow in SQLite — un difetto di sicurezza della memoria mai visto prima, in una delle librerie più diffuse al mondo, trovato prima del rilascio. Gli autori lo definiscono «the first public example of an AI agent finding a previously unknown exploitable memory-safety issue in widely used real-world software», e annotano che il fuzzing tradizionale (AFL, OSS-Fuzz) non l’aveva colto dopo oltre 150 ore di CPU. È la capacità che rende credibile la via d’uscita descritta da OpenAI: trovare un bug ignoto in un componente di contenimento è ormai una capacità dimostrata.
Su scala, la stessa cosa si è vista alla finale della DARPA AI Cyber Challenge, a DEF CON 33 nell’agosto 2025: sette sistemi autonomi hanno analizzato oltre 54 milioni di righe di codice, corretto 43 delle 54 vulnerabilità sintetiche del test e scoperto 18 falle reali fino a quel momento ignote. Il contesto era difensivo — trovare e correggere — e la capacità è simmetrica: la stessa pipeline che trova un difetto per correggerlo può anche sfruttarlo per attraversare il confine. La velocità e l’assenza di stanchezza spostano il calcolo economico dell’attaccante; la natura del difetto resta la stessa.
La fiducia mal riposta
Il muro con un buco non è l’unica via d’uscita, e non è nemmeno la più comune. Negli stessi giorni dell’incidente Hugging Face, la ricerca The Week of Sandbox Escapes di Pillar Security (20 luglio 2026) ha documentato una serie di evasioni dalle sandbox di strumenti di coding agentico in produzione — Cursor, Codex, Gemini CLI, Antigravity — ciascuna con il proprio advisory. Una parte è il caso già visto, un difetto nella sandbox stessa: il sandbox Python Terrarium di Cohere, usato per eseguire codice generato da un LLM, consentiva l’esecuzione con privilegi di root sull’host risalendo la catena dei prototipi JavaScript nell’ambiente WebAssembly (CVE-2026-5752, CVSS 9.3); Cursor, fino alla versione 3.0, era neutralizzabile via prompt injection fino a scrivere sul proprio helper di sandbox (CVE-2026-50548 e CVE-2026-50549, CVSS 9.8).
La categoria più insidiosa è un’altra. Pillar la formula così: «an agent’s blast radius is not the agent process; it includes everything the agent can write that the host later trusts». Un agente confinato nel workspace scrive un file lecito — un interprete in un virtualenv, una configurazione git, un task di VSCode, un hook — che poi un componente dell’host, fuori dalla sandbox, esegue come configurazione fidata. Il modello «dentro il workspace è permesso, fuori è protetto» non regge quando ciò che sta dentro diventa l’input futuro di ciò che sta fuori. Pillar la sintetizza così: «if an agent gets to write the future inputs of systems, it was never sandboxed in the first place». Questa superficie non richiede alcuna evasione: al modello basta usarla nel modo previsto.
Le tecniche di contenimento
Il problema di tenere dentro un sistema più capace di chi lo sorveglia è discusso da prima degli agenti attuali. La tassonomia del controllo di capacità distingue il boxing (isolare il sistema dal mondo), lo stunting (limitarne deliberatamente le risorse) e i tripwire (allarmi che scattano su comportamenti proibiti). La preoccupazione classica era sociale: il sistema convince il custode ad aprire la porta. Il caso Hugging Face e le evasioni documentate da Pillar descrivono una via più prosaica — un difetto nel muro, o la fiducia che un componente ripone in ciò che l’agente ha scritto.
Le opzioni note hanno ciascuna un limite strutturale, non un difetto di implementazione:
- Air gap. L’isolamento più forte è la disconnessione fisica. Ma un agente utile deve agire — chiamare strumenti, raggiungere servizi, uscire in rete — e un sistema che deve agire non si può air-gappare per definizione.
- Sandbox e microVM. Riducono la superficie, non la azzerano: restano software con il proprio flusso di CVE. Alzano il costo dell’evasione, che è il massimo onestamente ottenibile a questo strato.
- Guardrail e classificatori. Vivono dentro o intorno al modello e si possono disattivare — nel caso di specie, di proposito, per misurare la capacità massima. E non distinguono un difensore da un attaccante: nella stessa vicenda i guardrail dei modelli chiusi hanno bloccato gli incident responder di Hugging Face durante l’analisi forense.
- Human-in-the-loop. L’approvazione umana sulle azioni irreversibili è solida finché le azioni sono poche e lente. Decine di migliaia di azioni automatizzate su uno sciame di sandbox effimere sono oltre la portata di un revisore umano.
Nessuna di queste tecniche riduce il rischio a zero. Ciascuna sposta il costo dell’attacco; la loro combinazione lo sposta di più. È un principio di ingegneria valido proprio perché un confine perfetto non esiste.
Controllo e verifica
Se il muro non si può garantire, la domanda cambia: non «come rendo il recinto impenetrabile», ma «come resto al sicuro anche se l’occupante prova ad attraversarlo». È la direzione del filone AI control: Greenblatt e colleghi, in AI Control: Improving Safety Despite Intentional Subversion, valutano protocolli d’uso di un modello non fidato progettati per reggere quando il modello tenta attivamente di sabotarli — monitoraggio con un modello più debole ma fidato, editing dei suoi output, red-teaming — invece di dare per buono che il contenimento tenga.
Tradotto sull’infrastruttura, sono controlli concreti e vecchi quanto la sicurezza: privilegio minimo sugli strumenti, policy applicate a runtime su ogni chiamata (consenti/blocca/oscura), controllo dell’egress, budget di risorse e un registro immutabile di ciò che l’agente ha fatto. L’ultimo punto è quello che il caso Hugging Face illustra meglio: la risposta è stata possibile perché c’erano oltre 17.000 eventi registrati da ricostruire. Quando l’evasione non si può escludere, un registro a prova di manomissione di ogni azione è ciò che trasforma un’intrusione opaca in un post-mortem.
Sono i controlli che i framework di governance degli agenti applicano al confine fra il modello e il mondo. Admina, open source, interpone su ogni chiamata policy bidirezionali (consenti/blocca/oscura) e un audit trail immutabile, su qualunque modello, locale o remoto; DebugABot, un prototipo, colloca la stessa governance nel punto in cui l’agente chiama i suoi strumenti e vi aggiunge una black box forense — un registro concatenato per hash, non riscrivibile — di tutto ciò che passa. Governare al confine degli strumenti non impedisce a un modello con credenziali valide e uno zero-day di aggirare la policy; sposta il costo dell’attacco e conserva l’evidenza dell’accaduto. Nel caso Hugging Face è stata l’evidenza registrata a rendere possibile la ricostruzione dopo l’evasione.
Sull’orizzonte lungo c’è l’ambizione opposta: un contenimento che si dimostri, invece di provarlo empiricamente. Tegmark e Omohundro, in Provably safe systems, propongono di costruire i sistemi in modo che soddisfino requisiti umani per verifica formale. È una direzione, non una tecnologia disponibile: la verifica formale su scala di sistemi appresi resta un problema aperto, e va nominata per quello che è.
Limiti
Diversi punti chiedono cautela. La ricostruzione dell’incidente è preliminare e non validata da terzi indipendenti; «i modelli hanno trovato uno zero-day e sono evasi» è il racconto che OpenAI fa del proprio incidente, in una valutazione avviata da operatori umani e con i guardrail spenti apposta, non un agente partito da solo. La tesi più larga, che i sistemi intelligenti saranno sempre più difficili da contenere in puro software, è una direzione argomentata, non un teorema: gli agenti di oggi sono stretti, e questo caso lo conferma più di quanto lo neghi.
Ciò che è ragionevole aspettarsi è tecnico e verificabile: la capacità di trovare difetti in un contenitore, e punti in cui un componente si fida di ciò che l’agente scrive, è la stessa che i sistemi difensivi stanno affinando in pubblico, e cresce. Man mano che i modelli — e i futuri sistemi non-LLM — migliorano proprio sul compito di trovare la via d’uscita dal muro che li circonda, il margine si assottiglia, e la difesa si concentra meno sul rendere impenetrabile il contenitore e più sul limitare i danni quando cede.
- https://www.noze.it/insights/agente-ai-viola-hugging-face/
- https://www.pillar.security/blog/the-week-of-sandbox-escapes
- https://projectzero.google/2024/10/from-naptime-to-big-sleep.html
- https://www.darpa.mil/research/programs/ai-cyber
- https://thehackernews.com/2026/04/cohere-ai-terrarium-sandbox-flaw.html
- https://thehackernews.com/2026/07/critical-cursor-flaws-could-let-prompt.html
- https://arxiv.org/abs/2312.06942
- https://arxiv.org/abs/2309.01933
- https://gvisor.dev/
- https://firecracker-microvm.github.io/
- https://nvd.nist.gov/vuln/detail/CVE-2015-3456
- https://en.wikipedia.org/wiki/AI_capability_control
Immagine di copertina: porta d’acciaio da dodici tonnellate del caveau del Bureau of Engraving and Printing, 1914 — National Photo Company Collection, Library of Congress, pubblico dominio — https://commons.wikimedia.org/wiki/File:Bureau_of_Engraving_%26_Printing._Twelve-ton_steel_door_to_vault_containing_distinctive_paper_on_which_U.S._and_national_bank_notes_and_U.S._bonds_are_printed,_(1914)_LCCN2016852683.jpg