Heapjack og Overpatch kunne omgå Codex’ tilsigtede sikkerhedsgrænser og føre til handlinger på værtsmaskinen fra et ukendt repository. Heapjack ramte en globalt konfigureret node repl hjælper og et delt V8 heap, mens Overpatch udnyttede, at apply patch beregnede rettigheder ud fra stier i en angriberkontrolleret patch.
Udgivet afRedigeret med GPT-5.6 TerraBilleder genereret med 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
Codex’ sandbox skulle begrænse, hvad en AI-kodeagent kunne læse, skrive og køre. Fundene Heapjack og Overpatch fra Accomplish AI viste imidlertid, at grænsen kunne omgås, når en betroet komponent enten delte en hemmelighed med ikke-betroet kode eller udledte sine rettigheder af input, som en angriber kunne styre. Begge fejl er meldt rettet. 4
8
Heapjack ramte node_repl-integrationen, som blev installeret af Codex Desktop. Ifølge forskerne lagde Desktop-appen sin MCP-serverkonfiguration i den globale fil ~/.codex/config.toml. Det betød, at CLI-sessioner, der brugte den delte konfiguration, også kunne arve hjælpekomponenten. 8
9
Det afgørende brud på adskillelsen lå i hjælperens JavaScript-runtime:
Fordi forældreprocessen kørte uden for sandboxen, kunne resultatet være handlinger på værtsmaskinen, herunder kommandokørsel, selv når Codex angiveligt var i skrivebeskyttet tilstand. Problemet var altså ikke blot JavaScript i sig selv, men at den legitimationsoplysning, der skulle skelne betroet fra ikke-betroet arbejde, lå i hukommelse, som den ikke-betroede side kunne nå. 8
15
Overpatch var en fejl i Codex CLI’s apply_patch i tilstanden med skriverettighed til arbejdsområdet. Værktøjet skulle holde ændringer inden for arbejdsområdet, men autorisationslogikken gav skriveret ud fra overordnede mapper, der var angivet i selve patchen. 4
Det gjorde patchens stier til sikkerhedskritisk input. Accomplish beskrev et proof of concept, hvor en ellers virkningsløs sti som /tmp fik rettigheden til at udvide sig til filsystemets rod. En anden patchændring fulgte derefter et symlink, som repository’et kontrollerede, og ændrede en fil uden for arbejdsområdet, blandt andet en shell-opstartsfil i brugerens hjemmemappe. 4
9
Konsekvensen kunne komme med forsinkelse, men var reel: Kode placeret i en shell-opstartsfil kunne blive kørt uden for agentens sandbox, når udvikleren senere åbnede en terminal. Den efterfølgende handling på værtsmaskinen krævede ikke den normale godkendelsesprompt. 4
7
Heapjack og Overpatch benyttede forskellige tekniske veje, men afdækker samme designproblem: Den komponent, der håndhævede grænsen, stolede på data, som var tilgængelige fra den ikke-betroede side.
| Fejl | Hvad der blev betroet | Hvorfor grænsen brød sammen |
|---|---|---|
| Heapjack | Et autorisationstoken i et delt V8-heap | Ikke-betroet kode kunne hente hemmeligheden, der skulle adskille betroede forespørgsler fra andre. |
| Overpatch | Stier leveret i en agentstyret patch | Stierne påvirkede omfanget af skriverettigheder i stedet for blot at beskrive den ønskede ændring. |
Det er et eksempel på et confused deputy-problem: En hjælper eller harness med højere privilegier udfører en handling på vegne af input med lavere tillid uden sikkert at validere autoriteten eller det endelige mål. Det er derfor ikke nok kun at sandboxe agentens shell, hvis hjælpere, tokens, konfiguration og orkestreringsprocesser fortsat har privilegier eller kan påvirkes af repository-indhold.
Andre fund om kodeagenters sandboxe i 2026 var teknisk anderledes, men arkitektonisk beslægtede. Accomplish’ rapporter Beltdown og Beltdown2 beskrev agentshells, der var sandboxede, mens interne Git-kommandoer i den omgivende harness kørte uden for sandboxen. Et repositorys .git/config kunne bruge Git-indstillingen core.fsmonitor, så Git kørte en konfigureret hjælper, når arbejdstræet blev undersøgt. 17
18
Manifold Security beskrev den bredere klasse som GitSpawn: Repository-kontrolleret Git-konfiguration kunne få angribervalgt kode til at køre, når en agent undersøgte et projekt, muligvis før en meningsfuld godkendelse eller tillidsbeslutning. 20
21
Læringen er ikke, at ethvert repository automatisk er farligt i enhver arbejdsgang. Men repositories bør behandles som potentielt aktivt input, når værktøjer læser metadata, følger symlinks, anvender patches, kører hooks eller starter hjælpeprocesser. Et agentprodukts tillidsgrænse omfatter alle disse veje – ikke kun det synlige kommandoværktøj.
De angivne minimumsversioner med rettelser er:
Accomplish oplyste, at begge fejl blev rapporteret til OpenAI den 12. august 2026, og at rettelserne kom inden for otte dage. 9
.git-metadata. Et almindeligt clone overfører normalt ikke et fjern-repositorys lokale .git/config. Den praktiske konklusion er enkel: Opdatér de berørte Codex-komponenter, men gør ikke en sandbox i samme proces til den eneste beskyttelse mellem et ukendt repository og udviklerens arbejdscomputer.
Studio Global AI
This page includes a source-backed answer you can continue inside Studio Global.
Heapjack og Overpatch kunne omgå Codex’ tilsigtede sikkerhedsgrænser og føre til handlinger på værtsmaskinen fra et ukendt repository.
Heapjack og Overpatch kunne omgå Codex’ tilsigtede sikkerhedsgrænser og føre til handlinger på værtsmaskinen fra et ukendt repository. Heapjack ramte en globalt konfigureret node repl hjælper og et delt V8 heap, mens Overpatch udnyttede, at apply patch beregnede rettigheder ud fra stier i en angriberkontrolleret patch.
Lignende fund i 2026 med Git konfiguration brugte en anden teknik, men pegede på samme arkitekturfejl: En usandboxet del af orkestreringen stolede på input, som repository’et kontrollerede.
Heapjack og Overpatch kunne omgå Codex’ tilsigtede sikkerhedsgrænser og føre til handlinger på værtsmaskinen fra et ukendt repository. Heapjack ramte en globalt konfigureret node repl hjælper og et delt V8 heap, mens Overpatch udnyttede, at apply patch beregnede rettigheder ud fra stier i en angriberkontrolleret patch.
Udgivet afRedigeret med GPT-5.6 TerraBilleder genereret med 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
Codex’ sandbox skulle begrænse, hvad en AI-kodeagent kunne læse, skrive og køre. Fundene Heapjack og Overpatch fra Accomplish AI viste imidlertid, at grænsen kunne omgås, når en betroet komponent enten delte en hemmelighed med ikke-betroet kode eller udledte sine rettigheder af input, som en angriber kunne styre. Begge fejl er meldt rettet. 4
8
Heapjack ramte node_repl-integrationen, som blev installeret af Codex Desktop. Ifølge forskerne lagde Desktop-appen sin MCP-serverkonfiguration i den globale fil ~/.codex/config.toml. Det betød, at CLI-sessioner, der brugte den delte konfiguration, også kunne arve hjælpekomponenten. 8
9
Det afgørende brud på adskillelsen lå i hjælperens JavaScript-runtime:
Fordi forældreprocessen kørte uden for sandboxen, kunne resultatet være handlinger på værtsmaskinen, herunder kommandokørsel, selv når Codex angiveligt var i skrivebeskyttet tilstand. Problemet var altså ikke blot JavaScript i sig selv, men at den legitimationsoplysning, der skulle skelne betroet fra ikke-betroet arbejde, lå i hukommelse, som den ikke-betroede side kunne nå. 8
15
Overpatch var en fejl i Codex CLI’s apply_patch i tilstanden med skriverettighed til arbejdsområdet. Værktøjet skulle holde ændringer inden for arbejdsområdet, men autorisationslogikken gav skriveret ud fra overordnede mapper, der var angivet i selve patchen. 4
Det gjorde patchens stier til sikkerhedskritisk input. Accomplish beskrev et proof of concept, hvor en ellers virkningsløs sti som /tmp fik rettigheden til at udvide sig til filsystemets rod. En anden patchændring fulgte derefter et symlink, som repository’et kontrollerede, og ændrede en fil uden for arbejdsområdet, blandt andet en shell-opstartsfil i brugerens hjemmemappe. 4
9
Konsekvensen kunne komme med forsinkelse, men var reel: Kode placeret i en shell-opstartsfil kunne blive kørt uden for agentens sandbox, når udvikleren senere åbnede en terminal. Den efterfølgende handling på værtsmaskinen krævede ikke den normale godkendelsesprompt. 4
7
Heapjack og Overpatch benyttede forskellige tekniske veje, men afdækker samme designproblem: Den komponent, der håndhævede grænsen, stolede på data, som var tilgængelige fra den ikke-betroede side.
| Fejl | Hvad der blev betroet | Hvorfor grænsen brød sammen |
|---|---|---|
| Heapjack | Et autorisationstoken i et delt V8-heap | Ikke-betroet kode kunne hente hemmeligheden, der skulle adskille betroede forespørgsler fra andre. |
| Overpatch | Stier leveret i en agentstyret patch | Stierne påvirkede omfanget af skriverettigheder i stedet for blot at beskrive den ønskede ændring. |
Det er et eksempel på et confused deputy-problem: En hjælper eller harness med højere privilegier udfører en handling på vegne af input med lavere tillid uden sikkert at validere autoriteten eller det endelige mål. Det er derfor ikke nok kun at sandboxe agentens shell, hvis hjælpere, tokens, konfiguration og orkestreringsprocesser fortsat har privilegier eller kan påvirkes af repository-indhold.
Andre fund om kodeagenters sandboxe i 2026 var teknisk anderledes, men arkitektonisk beslægtede. Accomplish’ rapporter Beltdown og Beltdown2 beskrev agentshells, der var sandboxede, mens interne Git-kommandoer i den omgivende harness kørte uden for sandboxen. Et repositorys .git/config kunne bruge Git-indstillingen core.fsmonitor, så Git kørte en konfigureret hjælper, når arbejdstræet blev undersøgt. 17
18
Manifold Security beskrev den bredere klasse som GitSpawn: Repository-kontrolleret Git-konfiguration kunne få angribervalgt kode til at køre, når en agent undersøgte et projekt, muligvis før en meningsfuld godkendelse eller tillidsbeslutning. 20
21
Læringen er ikke, at ethvert repository automatisk er farligt i enhver arbejdsgang. Men repositories bør behandles som potentielt aktivt input, når værktøjer læser metadata, følger symlinks, anvender patches, kører hooks eller starter hjælpeprocesser. Et agentprodukts tillidsgrænse omfatter alle disse veje – ikke kun det synlige kommandoværktøj.
De angivne minimumsversioner med rettelser er:
Accomplish oplyste, at begge fejl blev rapporteret til OpenAI den 12. august 2026, og at rettelserne kom inden for otte dage. 9
.git-metadata. Et almindeligt clone overfører normalt ikke et fjern-repositorys lokale .git/config. Den praktiske konklusion er enkel: Opdatér de berørte Codex-komponenter, men gør ikke en sandbox i samme proces til den eneste beskyttelse mellem et ukendt repository og udviklerens arbejdscomputer.
Studio Global AI
This page includes a source-backed answer you can continue inside Studio Global.
Heapjack og Overpatch kunne omgå Codex’ tilsigtede sikkerhedsgrænser og føre til handlinger på værtsmaskinen fra et ukendt repository.
Heapjack og Overpatch kunne omgå Codex’ tilsigtede sikkerhedsgrænser og føre til handlinger på værtsmaskinen fra et ukendt repository. Heapjack ramte en globalt konfigureret node repl hjælper og et delt V8 heap, mens Overpatch udnyttede, at apply patch beregnede rettigheder ud fra stier i en angriberkontrolleret patch.
Lignende fund i 2026 med Git konfiguration brugte en anden teknik, men pegede på samme arkitekturfejl: En usandboxet del af orkestreringen stolede på input, som repository’et kontrollerede.