{"id":9532,"date":"2026-09-18T15:42:30","date_gmt":"2026-09-18T15:42:30","guid":{"rendered":"https:\/\/cybersecurityinfocus.com\/?p=9532"},"modified":"2026-09-18T15:42:30","modified_gmt":"2026-09-18T15:42:30","slug":"a-zero-click-rce-flaw-in-ai-coding-agents-could-have-exposed-enterprise-systems","status":"publish","type":"post","link":"https:\/\/cybersecurityinfocus.com\/?p=9532","title":{"rendered":"A zero-click RCE flaw in AI coding agents could have exposed enterprise systems"},"content":{"rendered":"<div>\n<div class=\"grid grid--cols-10@md grid--cols-8@lg article-column\">\n<div class=\"col-12 col-10@md col-6@lg col-start-3@lg\">\n<div class=\"article-column__content\">\n<div class=\"container\"><\/div>\n<p class=\"wp-block-paragraph\">Popular AI coding agents such as OpenAI\u2019s Codex, Anthropic\u2019s Claude Code, Google\u2019s Gemini CLI, and Microsoft-owned GitHub Copilot were vulnerable to a <a href=\"https:\/\/www.csoonline.com\/article\/572727\/zero-click-attacks-explained-and-why-they-are-so-dangerous.html\">zero-click attack<\/a> that enabled attackers to execute malicious code, even without developer interaction, by swapping a trusted plugin from an online marketplace for a malicious one, potentially giving them a foothold in enterprise development environments.<\/p>\n<p class=\"wp-block-paragraph\">Researchers at cybersecurity startup AIR found and reported the flaw, which they are calling <a href=\"https:\/\/www.air.security\/blog-posts\/plugin4shell\" target=\"_blank\" rel=\"noopener\">Plugin4Shell<\/a>, to the vendors concerned, and most of them have now released a patch for it, the researchers wrote in a blog post on Thursday.<\/p>\n<p class=\"wp-block-paragraph\">It\u2019s \u201ca flaw no marketplace can fix, so users must update their agent,\u201d the researchers wrote<\/p>\n<h2 class=\"wp-block-heading\">How Claude Code, Codex, and GitHub Copilot were exploited<\/h2>\n<p class=\"wp-block-paragraph\">Enterprises typically use plugins to extend the capabilities of their <a href=\"https:\/\/www.infoworld.com\/article\/4024327\/12-ai-coding-agents-at-the-cutting-edge.html\">AI coding agents<\/a>, giving the agent access to additional tools, commands, and external services that can help it perform tasks beyond generating or modifying code.<\/p>\n<p class=\"wp-block-paragraph\">When a developer installs a plugin, the agent typically downloads its code from a <a href=\"https:\/\/www.infoworld.com\/article\/2271105\/get-started-with-git.html\">Git<\/a> repository and uses a Git commit to determine if it is running an approved copy of the code, one that has been reviewed and cleared by the developer.<\/p>\n<p class=\"wp-block-paragraph\">That check is done with the help of a secure hash algorithm (<a href=\"https:\/\/www.csoonline.com\/article\/560341\/stop-using-sha1-it-s-now-completely-unsafe.html\">SHA<\/a>), a unique cryptographic identifier assigned to each Git commit. Developers can give the agent the SHA of the reviewed commit, telling it to run that specific copy of the plugin.<\/p>\n<p class=\"wp-block-paragraph\">However, <a href=\"https:\/\/www.infoworld.com\/article\/3853805\/vibe-coding-with-claude-code.html\">Claude Code<\/a>, <a href=\"https:\/\/www.infoworld.com\/article\/4126234\/openai-launches-codex-app-as-enterprises-weigh-autonomous-ai-coding-tools.html\">Codex<\/a>, and <a href=\"https:\/\/www.infoworld.com\/article\/3609013\/github-copilot-everything-you-need-to-know.html\">GitHub Copilot<\/a> can be tricked into running malicious code instead of the trusted plugin code associated with the SHA because they pass the SHA directly to Git to check out the plugin code but do not subsequently verify that Git has actually checked out the commit corresponding to that SHA, the researchers wrote.<\/p>\n<p class=\"wp-block-paragraph\">That means an attacker who controls the plugin\u2019s repository, either by publishing a benign plugin and later turning it malicious or by taking over the repository behind an existing trusted plugin, can exploit the gap by creating a new version of the repository containing malicious code and using the SHA of the legitimate commit as its name, the researchers explained.<\/p>\n<p class=\"wp-block-paragraph\">As a result, when the agent asks Git to check out the SHA, Git resolve it to the attacker-controlled version, causing the agent to execute the malicious code even though it was instructed to use the reviewed commit, they said.<\/p>\n<h2 class=\"wp-block-heading\">How Plugin4Shell compromised the Gemini CLI<\/h2>\n<p class=\"wp-block-paragraph\">The attack works differently in Gemini\u2019s CLI, although the underlying problem of the agent not verifying that Git has checked out the requested commit stays the same.<\/p>\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.infoworld.com\/article\/4012067\/google-unveils-gemini-cli-for-developers.html\">Gemini CLI<\/a> first uses the SHA to tell Git which legitimate version of the plugin to retrieve. After retrieving it, Gemini CLI tells Git to check out that code using the name \u201cFETCH_HEAD.\u201d<\/p>\n<p class=\"wp-block-paragraph\">An attacker who controls the repository can exploit this by creating a malicious version of the plugin and giving it the same \u201cFETCH_HEAD\u201d name, effectively creating a second version that Git can return when Gemini CLI asks for the code.<\/p>\n<p class=\"wp-block-paragraph\">The vulnerability, which was first discovered in May and disclosed to vendors in June, has since been addressed in some of the affected coding agents. Anthropic fixed the issue in <a href=\"https:\/\/code.claude.com\/docs\/en\/changelog\" target=\"_blank\" rel=\"noopener\">Claude Code version 2.1.179<\/a> and OpenAI addressed it in <a href=\"https:\/\/github.com\/openai\/codex\/releases\" target=\"_blank\" rel=\"noopener\">Codex version 0.146.0<\/a>, the researchers wrote. Google said it has <a href=\"https:\/\/developers.googleblog.com\/an-important-update-transitioning-gemini-cli-to-antigravity-cli\/\" target=\"_blank\" rel=\"noopener\">deprecated the Gemini CLI<\/a> and so will not issue a fix, suggesting instead that users to move to <a href=\"https:\/\/www.infoworld.com\/article\/4175416\/google-to-unify-ai-coding-tools-under-antigravity.html\">Antigravity<\/a>.<\/p>\n<p class=\"wp-block-paragraph\">GitHub has not yet release a fix for its Copilot, the researchers said.<\/p>\n<p class=\"wp-block-paragraph\">A representative of GitHub told <a href=\"https:\/\/www.theregister.com\/security\/2026\/09\/17\/ai-coding-agents-0-click-rce-flaw-could-hand-attackers-keys-to-the-kingdom\/5297335\" target=\"_blank\" rel=\"noopener\">The Register<\/a> that it already applied restrictions on creating version or tag names that resemble commit SHAs, preventing the reported vulnerability from being exploited on GitHub or on plugins from its marketplace. However, AIR researchers told the publication that GitHub\u2019s naming restrictions might not be enough to thwart Plugin4Shell attacks because plugin marketplaces can also be hosted on other platforms, such as Bitbucket.<\/p>\n<h2 class=\"wp-block-heading\">Plugin4Shell could widen exposure to enterprise systems<\/h2>\n<p class=\"wp-block-paragraph\">That gap, coupled with the likelihood that enterprises running affected coding agents are yet to patch or update them, could leave development environments exposed to attacks through compromised plugins, according to <a href=\"https:\/\/pareekh.com\/about\/\" target=\"_blank\" rel=\"noopener\">Pareekh Jain<\/a>, principal analyst at Pareekh Consulting.<\/p>\n<p class=\"wp-block-paragraph\">\u201cEnterprises using AI coding agents with third-party plugins are likely to be most exposed, especially when those agents have access to source code, credentials, cloud systems or <a href=\"https:\/\/www.infoworld.com\/article\/2269266\/what-is-cicd-continuous-integration-and-continuous-delivery-explained.html\">CI\/CD<\/a> tools as these plugins mostly run with the same access the developer or employee has,\u201d he said.<\/p>\n<p class=\"wp-block-paragraph\">That means that these malicious plugins could help attackers access source code, steal <a href=\"https:\/\/www.infoworld.com\/article\/2269032\/what-is-an-api-application-programming-interfaces-explained.html\">API<\/a> keys or cloud credentials, change repositories, or potentially reach CI\/CD and other corporate systems, Jain added.<\/p>\n<h2 class=\"wp-block-heading\">What can enterprises do to mitigate risk?<\/h2>\n<p class=\"wp-block-paragraph\">\u201cSecurity teams should examine machines that runs these vulnerable agents. Important warning signs include unusual processes or network connections, unexpected plugin files, changed source repositories, suspicious Git activity and unusual use of developer or cloud credentials,\u201d Jain said.<\/p>\n<p class=\"wp-block-paragraph\">\u201c<a href=\"https:\/\/www.csoonline.com\/article\/568045\/what-is-edr-endpoint-detection-and-response.html\">EDR<\/a>, Git, CI\/CD, cloud<a href=\"https:\/\/www.csoonline.com\/article\/518296\/what-is-iam-identity-and-access-management-explained.html\"> IAM<\/a> and authentication logs are good places to investigate,\u201d he added.<\/p>\n<p class=\"wp-block-paragraph\">Other measures, according to the analyst, includes checking if their coding agents update automatically to ensure they have received the patches from the vendors that applied it. \u00a0<\/p>\n<p class=\"wp-block-paragraph\">However, these steps only reduce the risk but doesn\u2019t fix the underlying vulnerability.<\/p>\n<p class=\"wp-block-paragraph\">\u201cThe underlying vulnerability is ultimately a vendor responsibility because it stems from how the agents verify the code they are instructed to execute. They need to ensure that the code being executed is actually the code that was reviewed and approved,\u201d Jain said.<\/p>\n<p class=\"wp-block-paragraph\">\u201cEnterprises can put controls around plugin usage, but they cannot fix a flaw in the way the coding agent validates the code it checks out,\u201d he added.<\/p>\n<p class=\"wp-block-paragraph\"><em>This article first appeared on <\/em><a href=\"https:\/\/www.infoworld.com\/article\/4223907\/a-zero-click-rce-flaw-in-ai-coding-agents-could-have-exposed-enterprise-systems.html\">InfoWorld<\/a><em>.<\/em><\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Popular AI coding agents such as OpenAI\u2019s Codex, Anthropic\u2019s Claude Code, Google\u2019s Gemini CLI, and Microsoft-owned GitHub Copilot were vulnerable to a zero-click attack that enabled attackers to execute malicious code, even without developer interaction, by swapping a trusted plugin from an online marketplace for a malicious one, potentially giving them a foothold in enterprise [&hellip;]<\/p>\n","protected":false},"author":0,"featured_media":9533,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-9532","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-education"],"_links":{"self":[{"href":"https:\/\/cybersecurityinfocus.com\/index.php?rest_route=\/wp\/v2\/posts\/9532"}],"collection":[{"href":"https:\/\/cybersecurityinfocus.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cybersecurityinfocus.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/cybersecurityinfocus.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=9532"}],"version-history":[{"count":0,"href":"https:\/\/cybersecurityinfocus.com\/index.php?rest_route=\/wp\/v2\/posts\/9532\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cybersecurityinfocus.com\/index.php?rest_route=\/wp\/v2\/media\/9533"}],"wp:attachment":[{"href":"https:\/\/cybersecurityinfocus.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=9532"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cybersecurityinfocus.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=9532"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cybersecurityinfocus.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=9532"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}