A newly disclosed flaw in the plugin systems of four major AI coding agents is forcing a hard look at how much trust developers hand over the moment they type an install command. Security firm Air Security published research on September 17, 2026 describing a zero-click remote code execution bug it named Plugin4Shell, and by the next day outlets including The Hacker News and Help Net Security had confirmed the flaw touches Anthropic’s Claude Code, OpenAI’s Codex, GitHub Copilot, and Google’s Gemini CLI. Five days later, on September 23, 2026, the story is still moving: two of the four vendors have shipped fixes, one has reportedly deprecated the affected tool, and one remains in dispute with the researchers over whether it was ever exposed at all.
The bug matters because of what it breaks, not just what it touches. AI coding agents have leaned on commit-hash pinning as the one hard guarantee in an otherwise fuzzy trust model: pin a plugin to a specific 40-character Git SHA, and whatever code review happened on that commit is what actually lands on your machine. Plugin4Shell shows that guarantee was never enforced the way developers assumed.
What Plugin4Shell Actually Does
According to Air Security’s disclosure and confirmed by Help Net Security’s reporting, the four affected agents share one design assumption: when a plugin marketplace hands over a pinned commit SHA, the agent will check out exactly that commit and nothing else. Air Security’s researchers found the opposite. Each agent requests the pinned SHA during installation but never verifies afterward that the resulting working tree, or HEAD, actually matches it.
That gap opens the door to a specific Git trick. An attacker who controls the plugin’s repository (not the marketplace itself, just the underlying Git repo) can create a branch whose name is identical to the pinned commit hash, then set that branch as the repository’s default. Git’s own reference resolution then favors the branch name over the commit object it collides with, so the agent installs the attacker’s branch while still believing it honored the pin. For Gemini CLI, reporting from Hard2bit describes a related but distinct path: an attacker names a default branch FETCH_HEAD, and the same resolution ambiguity lets malicious content slip through.
Once installed, the swapped plugin runs with whatever privileges the coding agent already holds, which in practice can mean local files, source code, API tokens, and any credentials sitting in the developer’s environment. Cyware’s threat briefing on September 18 summed up the blast radius simply: the malicious plugin gets the same reach as the agent itself, no click, no approval prompt, no warning.
Who Found It and When
The research is credited to Air Security, with named researchers Or Nevo, Dor Granat, and Niv Hoffman, according to coverage from FourWeekMBA. Air Security published its own writeup on September 17, 2026, and the wider security press, including The Hacker News, picked the story up the following day. That places the disclosure squarely inside the current news cycle, and it is one reason the story is still generating fresh coverage a week later: unlike a single-vendor patch Tuesday item, Plugin4Shell forced four separate companies to respond on four separate timelines.
No CVE identifier has been assigned to Plugin4Shell as of this writing. Hard2bit’s write-up explicitly noted the absence of a CVE at the time of its check, and no source reviewed for this article lists a CVSS score tied to the flaw. Air Security itself characterized the bug as high severity and zero-click, and other outlets have called it critical, but those are researcher and press characterizations rather than a scored, vendor-confirmed rating. That absence of a formal identifier is itself notable: it means the flaw currently exists outside the tracking systems, CISA’s KEV catalog, NVD, vendor security bulletins, that security teams typically use to triage and prioritize.
Four Vendors, Four Different Responses
What makes Plugin4Shell unusual as a disclosure story is that it does not have a single, clean resolution. Reporting from SC World and Help Net Security describes a split outcome across the four affected products, and the accounts do not fully agree with each other on every point, which is itself worth flagging rather than smoothing over.
| Product | Vendor | Reported Status (as of Sept. 23, 2026) |
|---|---|---|
| Claude Code | Anthropic | Patched, per secondary reporting; exact fixed version not published |
| Codex | OpenAI | Patched, per secondary reporting; exact fixed version not published |
| Gemini CLI | Reported as deprecated by one outlet; patch status otherwise unclear | |
| GitHub Copilot | Microsoft / GitHub | Disputed: Air Security says Microsoft was notified and had not shipped a fix; GitHub reportedly says its platform was not affected due to separate mitigations |
That dispute over GitHub Copilot is the loose thread in this story. Air Security’s disclosure states the flaw was reported to Microsoft and that no fix had shipped at disclosure time. Separately, GitHub is reported to have said its platform was not affected because of unspecified mitigation measures already in place. Those two positions are not obviously reconcilable from the public record, and no source reviewed here resolves which installation paths, if any, were actually exposed. Anyone running GitHub Copilot with third-party plugins enabled should treat that ambiguity as a reason for caution rather than reassurance.
None of the four vendors has published a detailed advisory with a fixed-version table, at least not one indexed by the outlets covering the story. That is a meaningful gap. Developers who want to know whether their specific Claude Code or Codex install predates the fix currently have to rely on general update guidance rather than a version number to check against.
Why “Zero-Click” Changes the Calculus
Most supply chain scares in software involve some point of human decision: a developer runs npm install on a package they didn’t fully vet, or approves a pull request without reading the diff closely enough. Plugin4Shell removes that decision point. The agent believes it is doing exactly what it was told, pulling a specific, previously reviewed commit, and the verification step that would have caught the substitution simply doesn’t exist in any of the four implementations Air Security tested.
That distinction matters for risk modeling. A typical supply chain attack requires the attacker to get a malicious package published, indexed, and downloaded before anyone notices. Plugin4Shell requires only that the attacker control, or compromise, the repository backing an already-trusted, already-installed plugin, then rename a branch. No new package needs to propagate through a registry, and no user needs to click through a warning, because the whole point of SHA pinning was that no warning was supposed to be necessary in the first place.
This is also the first disclosure of its kind aimed squarely at the plugin layer of AI coding agents rather than the models themselves or the platforms hosting them. Coverage of the GitSpawn flaw that hit seven AI coding agents earlier this year focused on a different mechanism, but the pattern of AI-agent plugin ecosystems becoming a repeat target is now hard to ignore. The Hugging Face agent intrusion disclosed months ago showed a comparable dynamic: once an agent has broad permissions and an automated update path, a single trust failure cascades quickly.
How This Compares to Recent AI Supply Chain Incidents
2026 has not been short on AI-agent security incidents, but Plugin4Shell is distinct in scope and mechanism from most of what preceded it this year. The table below lines up the recent cluster of AI coding and agent supply chain stories to show where Plugin4Shell sits.
| Incident | Mechanism | Products Affected | User Action Required |
|---|---|---|---|
| Plugin4Shell (Sept. 2026) | SHA-pinning bypass via Git branch-name collision | Claude Code, Codex, GitHub Copilot, Gemini CLI | None, zero-click |
| GitSpawn flaw | Malicious spawned processes across coding agents | 7 agents, 4 unpatched at time of report | Varies by agent |
| Hugging Face agent intrusion | Automated agent actions over roughly 4.5 days | Hugging Face-hosted agent infrastructure | None, automated |
| OpenAI agents on RubyGems | Package repository compromise | RubyGems ecosystem, later Hugging Face | Dependency review needed |
The common thread across these incidents, including the OpenAI RubyGems attack that preceded the Hugging Face compromise by roughly two months, is that AI agents are increasingly given standing permissions to fetch, install, and execute code with minimal human review at each step. That is precisely the efficiency gain that makes these tools valuable, and precisely the property attackers are learning to target.
The Historical Pattern: Trust Anchors That Weren’t
Commit-hash pinning is not a new idea. Package managers and dependency systems have relied on cryptographic hashes for over a decade specifically because hashes are supposed to be unambiguous: one hash, one exact set of bytes, no room for substitution. What Plugin4Shell exposes is not a weakness in SHA-1 or SHA-256 as algorithms, but a weakness in how four independent engineering teams implemented the checkout-and-verify step around that hash. Git’s own reference resolution, built for developer convenience so you can type a short branch name instead of a full hash, became the seam that broke the guarantee.
This is a familiar shape in security history: a control that works correctly in isolation fails when combined with a second system’s own conveniences. TLS certificate pinning, npm’s integrity hashes, and now AI agent plugin pinning have all faced variations of the same problem, where the verification layer assumes an unambiguous identifier but the underlying resolution logic introduces ambiguity nobody accounted for. The fact that four separate vendors, building independently, made compatible versions of this mistake suggests the underlying assumption, that a pinned SHA is self-verifying, was treated as obvious enough not to test.
What Security Researchers Are Saying
Air Security researchers described the discovery in stark terms, stating “it is the first supply chain vulnerability of the AI agent ecosystem,” according to Help Net Security’s coverage of the disclosure. In its own writeup, Air Security summarized the flaw’s reach directly: “Plugin4Shell is a zero-click, high-severity RCE affecting all four major AI coding agents – Claude Code, Codex, Copilot, and Gemini,” as published on Air Security’s blog.
Explaining the core mechanism, Help Net Security wrote that “the bug, dubbed Plugin4Shell, breaks SHA pinning, the mechanism developers rely on to lock an installed plugin to a specific, reviewed version of its code,” in its September 18 report. Air Security added further color on the exploitation path, noting “a trusted plugin is silently swapped for a malicious one and auto-installed past the agent’s SHA pinning,” per its disclosure post.
Security analysis outlet Digging Beagle offered a more technical summary of the failure, writing that “the agents requested reviewed, SHA-pinned plugin revisions but failed to verify that the working tree actually resolved to the pinned commit,” in its case analysis of the bug. Taken together, these accounts converge on the same diagnosis from three independent vantage points: the pin was requested, but nobody checked whether it actually landed.
No Confirmed Exploitation, But That’s Cold Comfort
It is worth being precise about what has and hasn’t been confirmed. Every source reviewed for this article, including FourWeekMBA’s analysis, describes Plugin4Shell as a research disclosure and proof-of-concept demonstration, not a confirmed breach. No compromised production plugin has been named. No victim organization, stolen dataset, or active threat-actor campaign has been tied to the flaw as of September 23, 2026.
That distinction between exploitable and exploited matters, but it shouldn’t be read as low risk. Zero-click, credential-exposing bugs in widely deployed developer tools tend to attract attention precisely because they were published with working technical detail. Once the mechanism is public, branch names colliding with commit SHAs, or a FETCH_HEAD trick against Gemini CLI, reproducing it does not require deep expertise, just repository write access and knowledge of which plugin a target has installed.
Practical Mitigation Steps for Developers
Air Security’s guidance, echoed across the outlets that covered the disclosure, centers on one core fix: verify the checkout result, don’t just request it. Teams running any of the four affected agents with third-party plugins should consider the following steps while formal vendor advisories are still catching up.
- Update Claude Code and Codex to their latest released versions, both reported as patched.
- Treat Gemini CLI and GitHub Copilot plugin installs with extra caution until each vendor publishes a clear advisory.
- Manually confirm that any checked-out plugin commit matches the expected SHA using
git rev-parse HEADbefore trusting an install, rather than relying on the agent’s own pin-check. - Disable automatic plugin updates where the agent supports it, and review changes manually instead.
- Audit which repositories your installed plugins pull from, and flag any repository where write access is broadly shared or poorly governed.
- Check for unexpected default-branch changes or newly created branches named after commit hashes or
FETCH_HEADin any plugin repository your team depends on. - Restrict the credentials and file-system scope available to coding agents wherever the agent’s configuration allows it, so a compromised plugin has less to reach.
# Manual verification before trusting an agent's plugin checkout
cd path/to/plugin-repo
git fetch origin
git rev-parse HEAD
# Compare the output against the SHA the marketplace listing actually pinned
None of these steps are exotic. They are the kind of basic verification that dependency management systems in more mature ecosystems, package registries with signed releases, container registries with content trust, have converged on over the past decade. AI coding agents are simply the newest category to relearn that lesson under public pressure.
Market and Industry Impact
The immediate market impact of Plugin4Shell is reputational rather than financial, at least based on public reporting so far. No source reviewed here ties the disclosure to a stock move, a contract loss, or a regulatory inquiry for Anthropic, OpenAI, Microsoft, or Google. But the timing lands at a sensitive moment for the AI coding assistant category, which has spent 2026 racing to add plugin marketplaces and extensibility as a competitive differentiator. Each of the four affected products has marketed its plugin ecosystem, following Unity’s own move to ship dozens of new skills into Claude Code and Codex earlier this year, as a reason developers should adopt that specific agent over rivals.
Plugin4Shell complicates that pitch. A plugin ecosystem is only a competitive advantage if the trust model underneath it holds up, and this disclosure demonstrates that four separate teams built extensibility features on an assumption that turned out to be false for all of them simultaneously. Enterprise security teams evaluating which AI coding agent to standardize on now have a concrete, recent incident to weigh against vendor marketing claims about safety, alongside other 2026 disclosures like the Cursor vulnerability flagged by GLM-5.3 earlier this year and Anthropic’s own fourth disclosed Claude-related breach.
For the broader AI agent market, the incident reinforces a trend that has been building through 2026: plugin and extension ecosystems, prized for turning a general coding assistant into a specialized one, are becoming the preferred attack surface precisely because they sit outside the model’s own safety training and closer to raw code execution.
Predictions: Where This Goes Next
Based on how comparable disclosures have played out this year, several outcomes look likely in the weeks ahead.
- A CVE gets assigned. High-severity, multi-vendor, zero-click bugs with this much press coverage rarely stay outside the CVE system for long once vendors coordinate a joint disclosure timeline.
- GitHub clarifies its position. The current gap between Air Security’s claim that Microsoft was notified and unfixed, and GitHub’s claim of no exposure, is unstable and likely to be resolved publicly, either through a GitHub security advisory or a walk-back from one side.
- Other AI coding agents get audited for the same pattern. Once a Git-reference-resolution flaw is public, expect independent researchers to test additional agents, including smaller vendors and open-source projects, for the identical branch-name collision technique.
- Plugin marketplaces add mandatory post-checkout verification. The fix Air Security recommends, comparing
git rev-parse HEADagainst the pinned SHA, is simple enough that it is likely to become a baseline requirement across the category rather than a vendor-specific patch. - Expect at least one follow-up disclosure within 90 days. Given the pace of AI agent supply chain findings in 2026, from GitSpawn to the Hugging Face intrusion to Plugin4Shell, researchers actively hunting this category are likely to surface another related flaw before the end of the year.
What Enterprises Should Watch
Security teams managing developer tooling at scale should treat this less as a single bug to patch and more as a signal about an entire category. Any internal tooling that wraps or extends Claude Code, Codex, GitHub Copilot, or Gemini CLI with custom plugins inherits this risk until each vendor’s fix is confirmed and versioned. Procurement and vendor-risk teams evaluating AI coding assistants should now explicitly ask each vendor how plugin checkout integrity is verified, not just whether SHA pinning exists on paper.
It is also worth tracking whether Air Security or another firm publishes a proof-of-concept exploit publicly. Responsible disclosure norms in 2026 increasingly include a delayed release of working exploit code, which tends to sharply increase both patch adoption and opportunistic attack attempts in the days immediately following.
Frequently Asked Questions
What is Plugin4Shell?
Plugin4Shell is a zero-click remote code execution vulnerability disclosed by Air Security on September 17, 2026. It affects the plugin installation process in four AI coding agents, allowing an attacker who controls a plugin’s Git repository to bypass SHA-pinning and swap trusted code for malicious code.
Which AI coding agents are affected by Plugin4Shell?
Reporting confirms four agents: Anthropic’s Claude Code, OpenAI’s Codex, Microsoft’s GitHub Copilot, and Google’s Gemini CLI.
Has Plugin4Shell been assigned a CVE number?
No. As of September 23, 2026, no CVE identifier has been assigned, and no official CVSS score has been published for the flaw.
Do I need to click anything for Plugin4Shell to be exploited?
No. Reporting describes it as a zero-click flaw. If an attacker controls the relevant plugin repository and the agent installs or updates that plugin, the malicious code can run without any user interaction or approval prompt.
Have Anthropic and OpenAI fixed the issue?
Secondary reporting indicates Claude Code and Codex have been patched, though neither company has published a detailed advisory with an exact fixed version number in the sources reviewed.
Is GitHub Copilot still vulnerable?
Accounts conflict. Air Security says it notified Microsoft and no fix had shipped at disclosure time, while GitHub is reported to have said its platform was not affected due to existing mitigations. This has not been publicly reconciled.
Has Plugin4Shell been exploited in the wild?
No confirmed real-world exploitation, breach, or data loss has been reported. All current accounts describe it as a research disclosure demonstrating an exploitable condition, not a confirmed incident.
What should developers do right now?
Update Claude Code and Codex to their latest versions, avoid automatic plugin updates on Gemini CLI and GitHub Copilot until vendor advisories clarify their status, manually verify checked-out commits against expected SHAs, and audit which repositories your installed plugins depend on.
Related
- GitSpawn Flaw Hits 7 AI Coding Agents, 4 Unpatched [2026]
- Hugging Face Hack Anatomy: 17,600 Actions, 4.5 Days [2026]
- Unity Plugins Give Claude Code 29 Skills, Codex 31 [2026]
- GLM-5.3 Finds Cursor Flaw, Triggers $10B Rule [2026]
- Anthropic Reveals 4th Claude Cyber Breach [2026]



