Heapjack e Overpatch potevano superare i confini previsti di Codex e portare ad azioni sul sistema host a partire da un repository non fidato. Heapjack sfruttava l’helper node repl configurato globalmente e un heap V8 condiviso; Overpatch ampliava i permessi di apply patch usando percorsi controllati dall’attaccante...
Pubblicato daModificato con GPT-5.6 TerraImmagini generate con GPT Image 2
Research answer

Create a landscape editorial hero image for this Studio Global article: How did Accomplish AI researchers’ Heapjack and Overpatch vulnerabilities enable sandbox escapes and host-command execution in OpenAI’s Code. Article summary: Accomplish’s two findings bypassed Codex’s intended workspace/read-only boundaries by making a trusted enforcement component rely on attacker-influenced state. Both could turn an untrusted repository into host-level code. Topic tags: general, general web. Style: premium digital editorial illustration, source-backed research mood, clean composition, high detail, modern web publication hero. Use reference image context only for broad subject, composition, and topical grounding; do not copy the exact image. Avoid: logos, brand marks, copyrighted characters, real person likenesses, fake screenshots, UI text, readable text, watermarks, charts with fake numbers, clic
La sandbox di Codex dovrebbe limitare ciò che un agente AI può leggere, scrivere ed eseguire. Le vulnerabilità Heapjack e Overpatch, individuate da Accomplish AI e segnalate come corrette, hanno però mostrato che il confine può essere aggirato quando un componente fidato condivide un segreto con codice non fidato oppure calcola i privilegi a partire da input controllati dall’attaccante. 4
8
Heapjack riguardava l’integrazione node_repl installata da Codex Desktop. Secondo i ricercatori, l’app Desktop inseriva la configurazione del server MCP nel file globale ~/.codex/config.toml; di conseguenza, anche le sessioni CLI che usavano quella configurazione condivisa potevano ereditare l’helper. 8
9
Il problema di separazione era nel runtime JavaScript dell’helper:
Poiché il processo padre operava fuori dalla sandbox, questo poteva tradursi in azioni a livello dell’host, inclusa l’esecuzione di comandi, anche quando Codex era nominalmente in modalità di sola lettura. Il punto non era il semplice fatto che venisse eseguito JavaScript: il segreto che distingueva le richieste fidate da quelle non fidate risiedeva in memoria accessibile anche al lato non fidato. 8
15
Overpatch interessava Codex CLI, in particolare apply_patch nella modalità con scrittura nell’area di lavoro. Lo strumento avrebbe dovuto confinare le modifiche alla workspace, ma la sua logica di autorizzazione assegnava il perimetro di scrittura in base alle directory padre indicate nella patch stessa. 4
Di fatto, i percorsi presenti nella patch diventavano input sensibili per la sicurezza. Accomplish ha descritto una prova di concetto in cui un percorso altrimenti inefficace come /tmp faceva espandere il permesso fino alla radice del filesystem. Un’altra modifica nella patch seguiva poi un collegamento simbolico controllato dal repository per cambiare un file esterno alla workspace, incluso un file di inizializzazione della shell nella home dell’utente. 4
9
L’effetto poteva manifestarsi in un secondo momento, ma restava rilevante: codice inserito nel file di avvio della shell poteva essere eseguito fuori dalla sandbox dell’agente quando lo sviluppatore apriva successivamente un terminale. Per l’azione sull’host risultante non era richiesta la normale approvazione. 4
7
Heapjack e Overpatch seguivano strade tecniche diverse, ma espongono lo stesso problema di progettazione: il meccanismo che applicava i controlli si fidava di dati raggiungibili dal lato non fidato del confine.
| Vulnerabilità | Elemento considerato fidato | Perché il confine è saltato |
|---|---|---|
| Heapjack | Un token di autorizzazione in un heap V8 condiviso | Il codice non fidato poteva recuperare il segreto usato per distinguere le richieste autorizzate. |
| Overpatch | I percorsi forniti in una patch controllata dall’agente | I percorsi influivano sull’estensione dei permessi di scrittura, anziché limitarsi a descrivere la modifica richiesta. |
È un caso di confused deputy: un helper o un harness con privilegi più elevati agisce per conto di input a minore affidabilità senza convalidarne in modo sicuro l’autorità o la destinazione finale. Perciò isolare soltanto la shell dell’agente non basta, se helper, token, configurazioni e sottoprocessi di orchestrazione restano privilegiati o sono influenzabili dal contenuto del repository.
Altre vulnerabilità del 2026 negli agenti di coding erano tecnicamente differenti, ma simili sul piano architetturale. I report Beltdown e Beltdown2 di Accomplish descrivevano shell dell’agente isolate mentre comandi Git interni all’harness venivano eseguiti fuori dalla sandbox. La configurazione .git/config di un repository poteva usare l’impostazione Git core.fsmonitor per far eseguire a Git un helper configurato durante l’ispezione dell’albero di lavoro. 17
18
Manifold Security ha definito questa classe più ampia GitSpawn: una configurazione Git controllata dal repository poteva indurre l’esecuzione di codice scelto dall’attaccante non appena l’agente ispezionava il progetto, potenzialmente prima di una decisione significativa di approvazione o fiducia. 20
21
La lezione non è che ogni repository sia automaticamente pericoloso in ogni flusso di lavoro. È che un repository deve essere trattato come input potenzialmente attivo quando gli strumenti leggono metadati, risolvono collegamenti simbolici, applicano patch, eseguono hook o avviano processi di supporto. Il confine di fiducia di un prodotto per agenti include tutti questi percorsi, non solo lo strumento a riga di comando visibile.
Le versioni minime riportate come corrette sono:
Accomplish ha dichiarato di aver segnalato entrambe le vulnerabilità a OpenAI il 12 agosto 2026 e che le correzioni sono arrivate entro otto giorni. 9
.git; un normale clone non trasferisce di norma il file .git/config locale del repository remoto. In pratica: installare le versioni corrette di Codex è necessario, ma non conviene trattare una sandbox interna al processo come l’unica barriera tra un repository sconosciuto e la postazione dello sviluppatore.
Studio Global AI
This page includes a source-backed answer you can continue inside Studio Global.
Heapjack e Overpatch potevano superare i confini previsti di Codex e portare ad azioni sul sistema host a partire da un repository non fidato.
Heapjack e Overpatch potevano superare i confini previsti di Codex e portare ad azioni sul sistema host a partire da un repository non fidato. Heapjack sfruttava l’helper node repl configurato globalmente e un heap V8 condiviso; Overpatch ampliava i permessi di apply patch usando percorsi controllati dall’attaccante e collegamenti simbolici.
Altre falle del 2026 legate alla configurazione Git avevano un meccanismo diverso, ma la stessa debolezza architetturale: un percorso di orchestrazione non isolato rispettava input controllati dal repository.
Heapjack e Overpatch potevano superare i confini previsti di Codex e portare ad azioni sul sistema host a partire da un repository non fidato. Heapjack sfruttava l’helper node repl configurato globalmente e un heap V8 condiviso; Overpatch ampliava i permessi di apply patch usando percorsi controllati dall’attaccante...
Pubblicato daModificato con GPT-5.6 TerraImmagini generate con GPT Image 2
Research answer

Create a landscape editorial hero image for this Studio Global article: How did Accomplish AI researchers’ Heapjack and Overpatch vulnerabilities enable sandbox escapes and host-command execution in OpenAI’s Code. Article summary: Accomplish’s two findings bypassed Codex’s intended workspace/read-only boundaries by making a trusted enforcement component rely on attacker-influenced state. Both could turn an untrusted repository into host-level code. Topic tags: general, general web. Style: premium digital editorial illustration, source-backed research mood, clean composition, high detail, modern web publication hero. Use reference image context only for broad subject, composition, and topical grounding; do not copy the exact image. Avoid: logos, brand marks, copyrighted characters, real person likenesses, fake screenshots, UI text, readable text, watermarks, charts with fake numbers, clic
La sandbox di Codex dovrebbe limitare ciò che un agente AI può leggere, scrivere ed eseguire. Le vulnerabilità Heapjack e Overpatch, individuate da Accomplish AI e segnalate come corrette, hanno però mostrato che il confine può essere aggirato quando un componente fidato condivide un segreto con codice non fidato oppure calcola i privilegi a partire da input controllati dall’attaccante. 4
8
Heapjack riguardava l’integrazione node_repl installata da Codex Desktop. Secondo i ricercatori, l’app Desktop inseriva la configurazione del server MCP nel file globale ~/.codex/config.toml; di conseguenza, anche le sessioni CLI che usavano quella configurazione condivisa potevano ereditare l’helper. 8
9
Il problema di separazione era nel runtime JavaScript dell’helper:
Poiché il processo padre operava fuori dalla sandbox, questo poteva tradursi in azioni a livello dell’host, inclusa l’esecuzione di comandi, anche quando Codex era nominalmente in modalità di sola lettura. Il punto non era il semplice fatto che venisse eseguito JavaScript: il segreto che distingueva le richieste fidate da quelle non fidate risiedeva in memoria accessibile anche al lato non fidato. 8
15
Overpatch interessava Codex CLI, in particolare apply_patch nella modalità con scrittura nell’area di lavoro. Lo strumento avrebbe dovuto confinare le modifiche alla workspace, ma la sua logica di autorizzazione assegnava il perimetro di scrittura in base alle directory padre indicate nella patch stessa. 4
Di fatto, i percorsi presenti nella patch diventavano input sensibili per la sicurezza. Accomplish ha descritto una prova di concetto in cui un percorso altrimenti inefficace come /tmp faceva espandere il permesso fino alla radice del filesystem. Un’altra modifica nella patch seguiva poi un collegamento simbolico controllato dal repository per cambiare un file esterno alla workspace, incluso un file di inizializzazione della shell nella home dell’utente. 4
9
L’effetto poteva manifestarsi in un secondo momento, ma restava rilevante: codice inserito nel file di avvio della shell poteva essere eseguito fuori dalla sandbox dell’agente quando lo sviluppatore apriva successivamente un terminale. Per l’azione sull’host risultante non era richiesta la normale approvazione. 4
7
Heapjack e Overpatch seguivano strade tecniche diverse, ma espongono lo stesso problema di progettazione: il meccanismo che applicava i controlli si fidava di dati raggiungibili dal lato non fidato del confine.
| Vulnerabilità | Elemento considerato fidato | Perché il confine è saltato |
|---|---|---|
| Heapjack | Un token di autorizzazione in un heap V8 condiviso | Il codice non fidato poteva recuperare il segreto usato per distinguere le richieste autorizzate. |
| Overpatch | I percorsi forniti in una patch controllata dall’agente | I percorsi influivano sull’estensione dei permessi di scrittura, anziché limitarsi a descrivere la modifica richiesta. |
È un caso di confused deputy: un helper o un harness con privilegi più elevati agisce per conto di input a minore affidabilità senza convalidarne in modo sicuro l’autorità o la destinazione finale. Perciò isolare soltanto la shell dell’agente non basta, se helper, token, configurazioni e sottoprocessi di orchestrazione restano privilegiati o sono influenzabili dal contenuto del repository.
Altre vulnerabilità del 2026 negli agenti di coding erano tecnicamente differenti, ma simili sul piano architetturale. I report Beltdown e Beltdown2 di Accomplish descrivevano shell dell’agente isolate mentre comandi Git interni all’harness venivano eseguiti fuori dalla sandbox. La configurazione .git/config di un repository poteva usare l’impostazione Git core.fsmonitor per far eseguire a Git un helper configurato durante l’ispezione dell’albero di lavoro. 17
18
Manifold Security ha definito questa classe più ampia GitSpawn: una configurazione Git controllata dal repository poteva indurre l’esecuzione di codice scelto dall’attaccante non appena l’agente ispezionava il progetto, potenzialmente prima di una decisione significativa di approvazione o fiducia. 20
21
La lezione non è che ogni repository sia automaticamente pericoloso in ogni flusso di lavoro. È che un repository deve essere trattato come input potenzialmente attivo quando gli strumenti leggono metadati, risolvono collegamenti simbolici, applicano patch, eseguono hook o avviano processi di supporto. Il confine di fiducia di un prodotto per agenti include tutti questi percorsi, non solo lo strumento a riga di comando visibile.
Le versioni minime riportate come corrette sono:
Accomplish ha dichiarato di aver segnalato entrambe le vulnerabilità a OpenAI il 12 agosto 2026 e che le correzioni sono arrivate entro otto giorni. 9
.git; un normale clone non trasferisce di norma il file .git/config locale del repository remoto. In pratica: installare le versioni corrette di Codex è necessario, ma non conviene trattare una sandbox interna al processo come l’unica barriera tra un repository sconosciuto e la postazione dello sviluppatore.
Studio Global AI
This page includes a source-backed answer you can continue inside Studio Global.
Heapjack e Overpatch potevano superare i confini previsti di Codex e portare ad azioni sul sistema host a partire da un repository non fidato.
Heapjack e Overpatch potevano superare i confini previsti di Codex e portare ad azioni sul sistema host a partire da un repository non fidato. Heapjack sfruttava l’helper node repl configurato globalmente e un heap V8 condiviso; Overpatch ampliava i permessi di apply patch usando percorsi controllati dall’attaccante e collegamenti simbolici.
Altre falle del 2026 legate alla configurazione Git avevano un meccanismo diverso, ma la stessa debolezza architetturale: un percorso di orchestrazione non isolato rispettava input controllati dal repository.