OpenAI Codex: sandbox escape 0-day scartata dal bug bounty
ZDI-26-305, CVSS 8.6: una sandbox escape in OpenAI Codex permette esecuzione codice via repository JavaScript malevoli. OpenAI l'ha rifiutata come out of scope.
Contenuto

Il 28 aprile 2026 il Zero Day Initiative di Trend Micro ha reso pubblica ZDI-26-305, una vulnerabilità 0-day in OpenAI Codex con punteggio CVSS 8.6 che consente l'escape dalla sandbox tramite l'elaborazione di repository JavaScript malevoli. OpenAI aveva già rifiutato la segnalazione il 13 aprile, classificandola fuori scope dal proprio programma bug bounty. La combinazione di rischio tecnico concreto e mancata remediation lascia gli utenti enterprise con una sola difesa: smettere di usare il prodotto.
- ZDI-26-305 colpisce l'ambiente di esecuzione JavaScript di OpenAI Codex con CVSS 8.6 e scope changed (S:C), indicando impatto oltre il componente compromesso
- L'attacco richiede interazione utente: il target deve processare con Codex un repository contenente JavaScript malevolo, senza necessità di privilegi pregressi
- OpenAI ha rifiutato la vulnerabilità come "out of scope" per il bug bounty il 13 aprile 2026; l'advisory non riporta patch né fix in arrivo
- L'unica mitigazione ufficiale è la restrizione d'uso del prodotto, una soluzione che penalizza direttamente flussi di lavoro aziendali basati su agenti AI
Come funziona la sandbox escape
La falla risiede nel JavaScript execution environment di Codex. Quando l'agente AI elabora un repository per analisi, riepilogo o refactoring, esegue codice nel contesto dell'utente. L'advisory ZDI descrive il problema come mancanza di "proper isolation of the sandboxed context": il perimetro di sicurezza che dovrebbe confinare l'esecuzione fallisce, permettendo al codice malevolo di operare con i privilegi dell'utente corrente.
Il vettore d'attacco è localizzato (AV:L nel framework CVSS v3.1) ma la complessità è bassa (AC:L) e non richiede privilegi iniziali (PR:N). La componente critica è l'interazione utente (UI:R): l'attaccante deve indurre il target a caricare o clonare un repository compromesso. Con scope changed (S:C), l'impatto supera il confine del componente vulnerabile, estendendosi al sistema ospitante con potenziale effetto alto su confidenzialità, integrità e disponibilità.
Non si tratta di un errore di implementazione banale. La mancata isolazione tra il contesto sandboxed e l'ambiente host è una lacuna architetturale: il design stesso del runtime JavaScript di Codex non garantisce separazione sufficiente tra codice analizzato e sistema esecutivo.
Il rifiuto di OpenAI e il vuoto normativo
La timeline di disclosure pubblicata da ZDI è inequivocabile: il 13 aprile 2026 OpenAI ha "rejected vulnerability for being out of scope for their bug bounty program". La formulazione è rilevante. Non si tratta di una valutazione tecnica negativa ("non è una vulnerabilità") ma di una classificazione programmatica: la falla esiste, ma non rientra nei confini contrattuali del bounty.
Questa distinzione ha conseguenze operative. I programmi bug bounty definiscono scope per contenere esposizione legale e finanziaria, non necessariamente per mappare la superficie di attacco reale. Quando un vendor classifica out-of-scope una sandbox escape nel proprio agente AI, sta implicitamente dichiarando che quella componente non è coperta da responsabilità di sicurezza verso i ricercatori — e, per estensione, verso gli utenti che non partecipano al programma.
L'advisory non riporta ulteriori contatti successivi al rifiuto. La pubblicazione come 0-day il 28 aprile è quindi la conseguenza naturale di un dead end nella disclosure coordinata.
"Given the nature of the vulnerability, the only salient mitigation strategy is to restrict interaction with the product" — ZDI-26-305 advisory
Cosa fare adesso
Per team che utilizzano OpenAI Codex in pipeline di sviluppo o analisi codice, la situazione impone azioni immediate:
Verificare la provenienza dei repository. Codex elabora ciò che gli si fornisce. Limitare l'uso a repository interni o a fonti verificate riduce la superficie d'attacco, anche se non elimina il rischio di supply chain compromessa.
Isolare l'ambiente di esecuzione. Eseguire Codex in container o macchine virtuali dedicate, senza accesso a dati sensibili o credenziali di produzione. La sandbox del prodotto è fallibile; la sandbox dell'infrastruttura deve compensare.
Monitorare l'uso in pipeline CI/CD. Se Codex è integrato in automazioni che clonano e processano repository esterni, valutare la sospensione temporanea o la sostituzione con strumenti che non eseguano codice nel contesto host.
Documentare la decisione per compliance. Il rifiuto out-of-scope di OpenAI può essere citato in valutazioni di rischio come evidenza di mancata coverage vendor. Questo influenza responsabilità in caso di incidente e negoziazioni contrattuali.
Perché il caso Codex anticipa un problema più ampio
Gli agenti AI generativi che manipolano codice — non solo Codex, ma ogni sistema con capability simili — introducono una nuova categoria di rischio: l'esecuzione automatica di contenuto non verificato, mascherata da assistenza intelligente. L'utente non sta deliberatamente eseguendo uno script; sta chiedendo a un agente di "guardare" un repository. La distinzione cognitiva si traduce in una riduzione della guardia di sicurezza.
Il rifiuto di OpenAI illumina un vuoto strutturale. I programmi bug bounty sono stati costruiti per software tradizionali: applicazioni web, servizi cloud, endpoint. Un agente AI che esegue codice arbitrario su richiesta dell'utente sfuma i confini tra prodotto e piattaforma, tra feature e vulnerabilità. Se il vendor non riconosce questa superficie come in-scope, chi è responsabile della sicurezza dell'utente finale?
La risposta implicita, nell'advisory ZDI, è che al momento nessuno lo è. La mitigazione di "restrict interaction with the product" è ammissione di impotenza tecnica, non soluzione. Sposta il carico sul destinatario dell'articolo: l'organizzazione che ha adottato Codex per accelerare lo sviluppo e ora deve rallentarlo o sospenderlo.
FAQ
La vulnerabilità può essere attivata senza che l'utente se ne accorga?
No. Il vettore CVSS indica UI:R (User Interaction Required): il target deve deliberatamente usare Codex per processare un repository malevolo. L'ingegneria sociale o il convincimento a usare un repository apparentemente legittimo restano però vettori plausibili.
Esiste una versione patchata di OpenAI Codex?
L'advisory ZDI-26-305, aggiornato al momento della pubblicazione, non indica patch disponibili né rilascio programmato. Lo status della vulnerabilità è 0-day, con mitigazione limitata alla restrizione d'uso.
Il rifiuto out-of-scope implica che OpenAI neghi l'esistenza della falla?
No. La timeline riporta esplicitamente "rejected vulnerability for being out of scope", non una mancata conferma tecnica. Il vendor riconosce la segnalazione ma la esclude dal programma bounty per ragioni di definizione programmatica, non di validità.
Questo articolo si basa esclusivamente sull'advisory ZDI-26-305; non sono disponibili conferme indipendenti e la posizione del vendor potrebbe essere cambiata.
Le informazioni sono state verificate sulle fonti citate e aggiornate al momento della pubblicazione.