{"id":816241,"date":"2026-07-21T11:31:24","date_gmt":"2026-07-21T11:31:24","guid":{"rendered":"https:\/\/www.newsbeep.com\/ca\/816241\/"},"modified":"2026-07-21T11:31:24","modified_gmt":"2026-07-21T11:31:24","slug":"cursor-codex-gemini-cli-antigravity-hit-by-sandbox-escapes","status":"publish","type":"post","link":"https:\/\/www.newsbeep.com\/ca\/816241\/","title":{"rendered":"Cursor, Codex, Gemini CLI, Antigravity hit by sandbox escapes"},"content":{"rendered":"<p style=\"text-align:center\"><img loading=\"lazy\" decoding=\"async\" alt=\"sandbox\" height=\"900\" src=\"https:\/\/www.newsbeep.com\/ca\/wp-content\/uploads\/2026\/07\/sandbox-escape.jpg\" width=\"1600\"\/><\/p>\n<p>Security researchers broke out of the sandboxes in four widely used AI coding agents, including Cursor, OpenAI&#8217;s Codex, Google&#8217;s Gemini CLI and Antigravity, without attacking the sandbox head-on.<\/p>\n<p>The agent stays inside the box and follows every rule. It just writes a file that a trusted tool outside the box later runs, loads, or scans, and the escape happens on its own.<\/p>\n<p>How the escapes work<\/p>\n<p>Pillar Security&#8217;s research team, Eilon Cohen, Dan Lisichkin and Ariel Fogel, reproduced the bypasses over several months and published them today as a series they call the <a href=\"https:\/\/www.pillar.security\/blog\/the-week-of-sandbox-escapes\" target=\"_blank\" rel=\"nofollow noopener\">Week of Sandbox Escapes<\/a>, one write-up a day.<\/p>\n<p> <a href=\"https:\/\/www.tines.com\/access\/guide\/the-ultimate-guide-to-network-operations-management\/?utm_source=BleepingComputer&amp;utm_medium=paid_media&amp;utm_content=ROS-in-article970x250-0107\" rel=\"nofollow noopener\" target=\"_blank\"><img decoding=\"async\" src=\"https:\/\/www.newsbeep.com\/ca\/wp-content\/uploads\/2026\/07\/1783778360_473_ti-97.jpg\" alt=\"image\" style=\"margin-top: 0px;\"\/><\/a><\/p>\n<p>These sandboxes draw a simple line: the agent is trusted inside the project workspace, the host outside is protected.<\/p>\n<p>The catch is that files inside the workspace are not inert. Tools running outside the sandbox read and act on them, so a file the agent is allowed to write can turn into a command the host later runs.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"What developers expect versus what Pillar found: the agent stays sandboxed, but the files it writes are trusted by tools outside the box (Pillar Security)\" height=\"549\" src=\"https:\/\/www.newsbeep.com\/ca\/wp-content\/uploads\/2026\/07\/pillar-sec-exploit-chain.jpg\" width=\"600\"\/>The agent stays sandboxed, but the files it writes are trusted by tools outside the box<br \/>&#13;<br \/>\n(Pillar Security)<\/p>\n<p>IDEs and CLI agents constantly run their own tools outside the sandbox: Python extensions resolving interpreters, Git integrations scanning repos, VS Code running task files, hook engines firing commands, Docker Desktop exposing a local socket.<\/p>\n<p>A sandboxed agent can obey every rule it is given and still shape the files those components read.<\/p>\n<p>Prompt injection is the trigger. A malicious instruction planted in a README, an issue, a dependency or a diff becomes a local action on the developer&#8217;s machine.<\/p>\n<p>Pillar sorts the seven findings into four failure modes:<\/p>\n<p>denylist sandboxes that cannot keep pace with the operating system&#13;<br \/>\n\tworkspace config that is really executable code&#13;<br \/>\n\t&#8220;safe&#8221; command allowlists that trust a command&#8217;s name rather than its arguments, and&#13;<br \/>\n\tprivileged local daemons that sit outside the sandbox entirely.&#13;<br \/>\nThe bugs, and the fixes<\/p>\n<p>Most of the issues are patched and vendor-acknowledged.<\/p>\n<p>In Cursor, a workspace-controlled .claude hook config turned into unsandboxed command execution. It is now <a href=\"https:\/\/github.com\/cursor\/cursor\/security\/advisories\/GHSA-pc9j-3qc2-95wv\" target=\"_blank\" rel=\"nofollow noopener\">tracked as CVE-2026-48124<\/a> and was fixed in version 3.0.0.<\/p>\n<p>A <a href=\"https:\/\/github.com\/cursor\/cursor\/security\/advisories\/GHSA-p9g2-cr55-cw9c\" target=\"_blank\" rel=\"nofollow noopener\">second Cursor bug<\/a> let the agent edit a virtualenv interpreter that the editor&#8217;s Python extension then ran on its own during discovery.<\/p>\n<p>A third abused the fact that Git metadata does not have to live in a folder called .git, firing execution through fsmonitor and slipping past Cursor&#8217;s path-based rules. It was patched in 3.0.0, with a CVE pending.<\/p>\n<p>In Codex CLI, a &#8220;safe&#8221;\u00a0command allowlist trusted git show by name while the actual invocation was not read-only. OpenAI patched it in v0.95.0 and paid a high-severity bounty, with a CVE pending.<\/p>\n<p>One Docker socket finding <a href=\"https:\/\/github.com\/cursor\/cursor\/security\/advisories\/GHSA-v4xv-rqh3-w9mc\" target=\"_blank\" rel=\"nofollow noopener\">hit Codex, Cursor and Gemini CLI<\/a> at once. A privileged local daemon the agents could reach became an unsandboxed place to run code. That issue is now fixed.<\/p>\n<p>Google downgrades its two<\/p>\n<p>Google&#8217;s response to the two Antigravity findings, a macOS Seatbelt denylist bypass and a .vscode task-config bypass of its Secure Mode, was cooler.<\/p>\n<p>According to Pillar, Google classified both as &#8220;Other valid security vulnerabilities&#8221; and applied a downgrade, judging them difficult to exploit because they need social engineering or a user trusting a repository that carries an indirect prompt injection.<\/p>\n<p>Pillar says, however,\u00a0Google&#8217;s team still rated the work highly, quoting feedback that one report was &#8220;of exceptional quality.&#8221;<\/p>\n<p>An old problem, a wider one<\/p>\n<p>The underlying class is not new. In April, Cymulate <a href=\"https:\/\/cymulate.com\/blog\/the-race-to-ship-ai-tools-left-security-behind-part-1-sandbox-escape\/\" target=\"_blank\" rel=\"nofollow noopener\">documented<\/a> the same pattern, which it named &#8220;Configuration-Based Sandbox Escape,&#8221; across Claude Code, Gemini CLI and Codex CLI, where a file written inside the sandbox runs on the host at the next launch.<\/p>\n<p>What is new is the breadth. The same failure shows up across four tools from three vendors.<\/p>\n<p>Pillar&#8217;s fix is not another list of banned filenames. It watches the moment a trusted local tool runs something the agent wrote.<\/p>\n<p>For anyone weighing agentic coding tools, that is the more useful signal: not whether an agent has a sandbox, but what happens to the files it leaves behind.<\/p>\n<p>        <a href=\"https:\/\/hubs.li\/Q04jQ9z40\" target=\"_blank\" rel=\"noopener nofollow\"><br \/>\n            <img decoding=\"async\" alt=\"article image\" src=\"https:\/\/www.newsbeep.com\/ca\/wp-content\/uploads\/2026\/07\/bas-report.jpg\" class=\"b-lazy\"\/><\/a><\/p>\n<p>Security teams log 54% of successful attacks and alert on just 14%. The rest move through your environment unseen.<\/p>\n<p>The Picus whitepaper shows how breach and attack simulation tests your SIEM and EDR rules so threats stop slipping by detection.<\/p>\n<p>        <a class=\"article-link\" href=\"https:\/\/hubs.li\/Q04jQ9z40\" target=\"_blank\" rel=\"noopener nofollow\">Get the whitepaper<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"Security researchers broke out of the sandboxes in four widely used AI coding agents, including Cursor, OpenAI&#8217;s Codex,&hellip;\n","protected":false},"author":2,"featured_media":816242,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[49,48,61],"class_list":["post-816241","post","type-post","status-publish","format-standard","has-post-thumbnail","category-technology","tag-ca","tag-canada","tag-technology"],"_links":{"self":[{"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/posts\/816241","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/comments?post=816241"}],"version-history":[{"count":0,"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/posts\/816241\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/media\/816242"}],"wp:attachment":[{"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/media?parent=816241"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/categories?post=816241"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.newsbeep.com\/ca\/wp-json\/wp\/v2\/tags?post=816241"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}