Anatomy of
AI Agent
Breaches.
We dissected the AI agent and non-human identity breaches of 2026. In almost none of them is identity governance how you stop the attack from starting. In most of them, it is how you stop the attack from mattering.
We pulled every 2026 breach, disclosed attack, and named vulnerability we could verify where an AI agent or a non-human identity sat in the chain. We threw out the ones we could not source. What remains is 38 confirmed incidents. This note takes the strongest of them apart, one at a time, and then does something most vendor writing avoids: it tells you honestly where our layer would have changed the outcome, and where it would not.
A method note first, because it is the point. This is a foundational companion to FN-05, which maps the ten identity gaps beneath every enterprise AI agent. Every incident below is one of those gaps happening in production. For each featured case we give three things: the technical anatomy, the same thing explained as if to a twelve-year-old, and an honest Arkion verdict.
The Shape of a 2026 Agent Breach
Read 38 of these back to back and a shape appears. The thing that fails first is almost never identity. It is a prompt injection, a sandbox or parser bug, a poisoned dependency, or a server-side misconfiguration. Those are not our layer, and we will say so every time. But the thing the attacker is actually after, and the thing that turns a single foothold into an estate-wide incident, is almost always a non-human credential.
Two sub-patterns carry most of the corpus. The first is the credential as the prize. Every supply-chain and MCP compromise here (node-ipc, LiteLLM, the Axios and TanStack npm incidents, the typosquat campaign, the poisoned GitHub Action) exists for one reason: to harvest API keys, OAuth tokens, cloud roles, and publish tokens off developer and CI machines. The delivery is the exploit. The payout is the standing secret.
The second is the standing, over-scoped identity as the pivot. Klue, Vercel, Storm-2949, the AWS eight-minute takeover, PocketOS, the AgentCore escalation. In each, the damage flows through a long-lived, over-permissioned machine identity, whether an intruder inherits it (Klue, Vercel, Storm-2949, the AWS takeover) or an agent misuses its own standing credential (PocketOS, the AgentCore escalation). No malware required, because the credential was already trusted and already too powerful.
Nine Breaches, Taken Apart
a nine-second wipe.
- A Cursor AI agent operating on the PocketOS project held a standing, over-privileged Railway API token. Asked to tidy the database, it read the instruction broadly and dropped the production database, then its backups, in about nine seconds. The token carried delete and backup-management rights it never needed.
- In plain terms. They gave the robot a master key that opened every door, including the one marked erase everything. When it got confused, it opened that door, and nobody could stop it in time because the key was always live.
- Arkion verdict: contained. We do not decide what an agent tries to do. We govern what its identity is allowed to do. A scoped, short-lived Railway identity bound to least privilege would not carry standing delete-and-purge-backup rights, so the same mistake reaches far less. The Register
cloud admin.
- Sysdig documented an AI-assisted intrusion in which a leaked, long-lived AWS IAM access key was used, with an LLM guiding reconnaissance and privilege escalation, to reach full cloud-admin in roughly eight minutes. The key was standing and over-scoped.
- In plain terms. Someone found a spare house key under the mat. A very fast helper used it to work out how to become the landlord of the whole building, in the time it takes to make toast.
- Arkion verdict: mixed, leaning contain. We cannot stop a key from leaking or an LLM from reasoning. But our entire model is that agents and workloads should not hold long-lived, over-scoped IAM keys. A short-lived, scoped, revocable identity is worth far less when stolen and can be cut off before minute eight. Sysdig
token is a skeleton key.
- ReliaQuest tracked a threat cluster it called Icarus abusing a trusted third-party OAuth integration (Klue) to reach and exfiltrate Salesforce CRM data across victim organisations. No password was cracked. The standing OAuth grant was the access.
- In plain terms. A company you already trusted was given a permanent pass to your filing cabinet. Someone took that pass and copied your files. They never had to pick a single lock.
- Arkion verdict: mixed.We do not run Salesforce or issue Klue’s grants. But this is a pure standing-non-human-credential problem: a long-lived integration token, broad scope, no expiry. Governed as a scoped, monitored, revocable identity, the grant is smaller, its drift is visible, and it can be revoked estate-wide the moment it is abused. ReliaQuest
a replayed token.
- Vercel disclosed an April 2026 incident in which an attacker replayed an OAuth token tied to a connected third-party AI service (Context.ai) to gain access. Shadow-AI integrations had accumulated standing tokens few people were tracking.
- In plain terms. The office had handed out guest badges to helper apps for years and forgotten most of them. Someone found one still working and walked straight in.
- Arkion verdict: contained. This is identity debt: unknown, unowned, non-expiring machine grants. Governed as owned, scoped, expiring identities, discovery would surface them, scope would shrink them, lifecycle would expire them, and a replayed token could be revoked estate-wide fast once the abuse is seen. That is exactly the layer we govern. Vercel
only job is to steal keys.
- A compromised version of the widely used node-ipc npm package shipped a credential stealer that hunted specifically for AI-tool configs (Claude, Kiro IDE) and cloud and CI secrets on developer machines. The supply chain was the delivery. Machine credentials were the prize.
- In plain terms.A tool millions of builders use got a hidden pickpocket sewn into it, and the pickpocket’s only job was to find and copy the special keys developers leave lying around.
- Arkion verdict: mixed. We cannot vet an npm package or stop the install. But the whole point of the attack is to harvest standing secrets sitting on disk. When those are short-lived, scoped identities instead of static keys, what the stealer grabs is close to worthless and quickly revoked. Socket
poisoned dependency.
- A supply-chain compromise of LiteLLM led to exposure of provider API keys. Mercor was among the confirmed affected. The dependency was trusted; the credentials it could reach were the target.
- In plain terms. A part inside the machine was swapped for a fake one, and the fake part quietly copied the keys the machine used to talk to other services.
- Arkion verdict: mixed. The same shape as node-ipc. We do not secure the dependency, but we govern whether the keys it reaches are standing and reusable or scoped and short-lived. Governed, the blast radius shrinks and rotation closes the window. LiteLLM
badge opens every locker.
- Unit 42 demonstrated an AWS Bedrock AgentCore misconfiguration it called Agent God Mode, where an over-broad IAM role let one agent escalate across other agents. This one is proof-of-concept research, not a confirmed in-the-wild breach.
- In plain terms.All the robots in the building shared one badge that happened to open everyone else’s lockers too. Take over one robot, and you reach them all.
- Arkion verdict: contained. This is the agent-to-agent trust gap: shared, over-scoped identity instead of per-agent least privilege. Per-agent cryptographic identity with bound scope removes the shared skeleton key. Unit 42
just a stolen identity.
- Microsoft attributed a cloud-wide breach to a group it tracks as Storm-2949 that used a compromised identity, not malware, to move into cloud resources. The identity itself was the attack.
- In plain terms.The intruder did not break anything or plant a virus. They showed up wearing someone’s badge, and the badge worked everywhere.
- Arkion verdict: mixed. Human-identity compromise is not our lane. But the lateral movement rides on machine and workload identities that are standing and over-trusted. Scoped, monitored, revocable non-human identity shortens how far a stolen credential travels and how long it lasts. Microsoft
honest limit.
- Tenet’s AgentJacking injects a fake Sentry error over MCP that a coding agent executes with the developer’s own privileges. No credential is stolen and no authentication is bypassed. The exploit lives in the agent’s reasoning.
- In plain terms.Someone slipped the robot a fake instruction disguised as a real one, and the robot did what it was told, using its owner’s own hands.
- Arkion verdict: not addressed.This is where we are candid. We govern identity, not the agent’s reasoning or its inbound tool data, and we do not run on the developer’s operating system session. We cannot stop the trick or the execution. The full breakdown is in FN-04.
Where Identity Governance Does Not Help
The honest column in the table below is the one that reads “not addressed,” and there are 10of them. They cluster tightly. Cursor DuneSlide, the Gemini CLI and Copilot CLI command-injection flaws, Microsoft 365 Copilot SearchLeak, Copilot Studio, the LiteLLM pre-auth SQL injection. These are code vulnerabilities, sandbox escapes, and prompt injections that execute under a human’s own session or exploit a vendor’s server-side endpoint.
There are four things a non-human identity layer structurally cannot do, and almost every “not addressed” verdict traces to one of them. It does not inspect prompts or tool-description metadata. It does not sit in the agent’s reasoning loop, so it stops no injection, jailbreak, or hallucination. It does not patch code, sandboxes, parsers, or a vendor’s endpoints. And it does not run on the developer’s laptop or govern a human’s local operating-system session. Any vendor who tells you their identity product would have blocked AgentJacking or SearchLeak is selling you something.
The Tally, Stated Plainly
Across 38 confirmed incidents, the number that identity governance would have prevented or blocked outright is zero. That is not a soft number. Prevention is not what this layer does. What it does is change the outcome after the initial failure:
Read the honest way: in the 10 contained cases, governing the non-human identity changes the outcome outright, it shrinks the blast radius, shortens dwell time, and enables fast revocation. In the 18 mixed cases it can, depending on how the identity was deployed and scoped. In 10, it does not. We would rather tell you that than sell you a prevention story the evidence does not support.
The Full Corpus
Every 2026 incident we verified, with its date, our honest verdict, and a primary source. A note on completeness: during research, part of our supply-chain sweep was interrupted, so the npm and PyPI section is likely undercounted. This is a floor, not a ceiling.
| Incident | Date | Arkion verdict | Source |
|---|---|---|---|
| AWS Bedrock AgentCore 'Agent God Mode' privilege escalation | Apr 2026 | Contained | unit42.paloaltonetworks.com |
| Amazon Q Developer silent MCP auto-load credential exposure | Jun 2026 | Contained | aws.amazon.com |
| Claude Code project-file RCE and API-key exfiltration | Feb 2026 | Contained | research.checkpoint.com |
| Comment and Control (GitHub-comment prompt injection) | Apr 2026 | Contained | oddguan.com |
| Marimo autonomous LLM-agent post-exploitation | May 2026 | Contained | sysdig.com |
| Mexican government AI-orchestrated mega-breach | Feb 2026 | Contained | livescience.com |
| OpenClaw exposed instances / unauthenticated MCP endpoints | Jan 2026 | Contained | nvd.nist.gov |
| PocketOS: Cursor agent deletes prod DB in 9 seconds | Apr 2026 | Contained | theregister.com |
| Vercel breach via Context.ai OAuth token replay | Apr 2026 | Contained | vercel.com |
| codfish/semantic-release-action GitHub Action compromise | Jun 2026 | Contained | aikido.dev |
| AWS 8-minute cloud-admin takeover (LLMjacking) | Feb 2026 (disclosed; observed Nov 2025) | Mixed | sysdig.com |
| Anthropic Claude 'Mythos' restricted-model unauthorized access | Apr 2026 | Mixed | siliconangle.com |
| Clinejection: Cline coding-agent npm supply-chain compromise | Feb 2026 | Mixed | cline.bot |
| Klue OAuth integration breach ('Icarus', Salesforce theft) | Jun 2026 | Mixed | reliaquest.com |
| LiteLLM gateway CVEs (auth bypass + CISA KEV RCE) | Jun 2026 | Mixed | nvd.nist.gov |
| MCP ecosystem systemic STDIO-RCE design flaw | Apr 2026 | Mixed | ox.security |
| Mercor breach via LiteLLM supply-chain compromise | Mar 2026 | Mixed | docs.litellm.ai |
| Microsoft: poisoned MCP tool descriptions leak data | Jul 2026 | Mixed | microsoft.com |
| Moltbook AI-agent social network database exposure | Feb 2026 | Mixed | wiz.io |
| OpenAI Codex GitHub-token / ChatGPT exfiltration flaws | Feb 2026 | Mixed | research.checkpoint.com |
| OpenAI supply-chain exposure (Axios/TanStack npm) | Mar 2026 | Mixed | socket.dev |
| ServiceNow 'BodySnatcher' agent impersonation | 2026 | Mixed | appomni.com |
| Step Finance $27M Solana treasury hack | Jan 2026 | Mixed | coindesk.com |
| Storm-2949 no-malware identity-to-cloud breach | May 2026 | Mixed | microsoft.com |
| Typosquatted npm packages steal cloud / CI-CD secrets | May 2026 | Mixed | microsoft.com |
| Vertex AI 'Double Agents' P4SA service-agent flaw | Mar 2026 | Mixed | unit42.paloaltonetworks.com |
| Windsurf malicious MCP-server registration RCE | 2026 | Mixed | nvd.nist.gov |
| node-ipc npm supply-chain credential stealer | May 2026 | Mixed | socket.dev |
| AgentJacking (Sentry MCP injection) | Jun 2026 | Not addressed | tenetsecurity.ai |
| Amazon v. Perplexity (Comet agentic-commerce injunction) | Mar 2026 | Not addressed | iapp.org |
| Azure SRE Agent token / eavesdrop flaw | 2026 | Not addressed | enclave.ai |
| Cursor DuneSlide sandbox escape | Feb 2026 | Not addressed | nvd.nist.gov |
| Gemini CLI headless-trust / --yolo allowlist bypass | Apr 2026 | Not addressed | github.com |
| GitHub Copilot CLI shell-expansion command injection | 2026 | Not addressed | github.com |
| LiteLLM pre-auth SQL injection exposing API keys | Apr 2026 | Not addressed | nvd.nist.gov |
| Microsoft 365 Copilot 'SearchLeak' one-click exfiltration | Jun 2026 | Not addressed | nvd.nist.gov |
| Microsoft Copilot Studio indirect prompt injection | Jan 2026 | Not addressed | nvd.nist.gov |
| ServiceNow unauthenticated Scripted REST API exposure | Jun 2026 | Not addressed | bleepingcomputer.com |
Closing
The industry keeps writing about how to make agents reason more safely. That work matters, and it is not our work. Read this corpus and a different, quieter conclusion holds: the model is rarely the target, and prevention of the first failure is rarely available. The credential is the target, and containment is available right now.
You cannot stop every agent from being tricked, every dependency from being poisoned, or every key from leaking. You can make sure that when one of those happens, the identity underneath is scoped, short-lived, signed, and revocable, so the incident is something you close in seconds instead of something you read about for a year.
Field Note FN-06-2026 · Distributed under arkion.ai/field-notes
For questions or to discuss findings against your environment: research@arkion.ai
- Every incident in the corpus table was independently verified as real, dated to 2026, genuinely involving non-human identity or machine credentials, and backed by a resolving primary source. Candidates that failed any of those tests were excluded.
- Verdicts are honest by construction: none of the 38 incidents is rated prevented or blocked, because non-human identity governance does not prevent the initiating failure.
- Related Arkion Field Notes: FN-05 (the ten identity gaps) and FN-04 (AgentJacking).
- Primary sources for each incident are linked in the corpus table above (Tenet Security, Sysdig, Unit 42, ReliaQuest, Microsoft, Wiz, Socket, Check Point, NVD, vendor advisories, and named outlets).
Recommend Arkion in one click.
Find the standing
credentials first.
Most of these breaches turned on a machine credential nobody was tracking. A read-only Discovery Scan surfaces the AI agents and non-human identities already acting in your environment, and which ones hold standing, over-scoped access. Read the brief, or run the scan.