Cyber Chaos Monkey
- Source
- shopify.engineering
- Author
- Shopify Engineering
- Date

Context
Shopify's security team now runs AI agents that attack its own live production systems, and it keeps them from doing damage in two ways. Each attacking is boxed in by network and credential limits, and a second agent running on a different model watches everything it does and can shut it down. Shopify calls the system Cyber Chaos Monkey, after the Netflix tool that randomly switched off production servers to prove its services could survive failures. The reasoning is economic. Shopify says frontier models are making vulnerability discovery cheap for everyone, and its bug bounty program has received almost 300% more reports since 2024. Its bet is that the same models, combined with knowledge no outsider has (source code, past bug reports, threat intelligence and deployment records), let it find the most damaging bugs first. The system extends an earlier Shopify harness that reviewed code and proved findings with tests; the new step is attacking the running site itself, using test shops and organizations.
Each attack, which Shopify calls an engagement, starts from an idea supplied by a human security engineer, another security agent or an earlier run. It can be narrow, such as looking for flaws similar to one reported through the bug bounty, or broad, such as gaining the ability to run code on the Shopify admin. One component, Discovery, uses models to find places in the code or configuration that might be exploitable. Promising leads go to a where agents try to exploit them. The technique Shopify singles out as most effective is sending a live request to Shopify, reading the production logs to see how it was handled, checking that against the source code and trying again. Reports flow back to Discovery, which can launch further engagements.
The containment is conventional. Every engagement runs as its own Kubernetes job, the attacking agent has no elevated permissions, and it receives only short-lived Shopify credentials, such as a session cookie and CSRF token, that it can read but not change. Keys for internal services and model providers are inserted by a proxy, so the agent never holds them, and outbound traffic can reach only Shopify production domains, those services, model providers and a few package sources. The less familiar layer governs behavior. Written rules of engagement let the agent try any exploit against its target but forbid things like moving into other systems or keeping access once an exploit works. Shopify does not trust the attacking agent to obey them, so a separately prompted judge agent on a different model reads its whole session in real time, including its reasoning and tool calls, and can kill it. The design fails closed: if the judge times out, crashes or stops ruling, the run ends, and because both agents share one Kubernetes pod, an eviction stops them together.
The evidence for how well this works is Shopify's own summary: tens of thousands of engagements and dozens of impactful findings that it acted on, without an outage or incident. The post does not say what those findings were, how severe they were, how often the judge has stopped a run or whether anyone has tested if an attacking agent can hide a rule violation from it. The fail-closed design covers a judge that stops working, not one that keeps running and misses something. Outside red-teaming of Anthropic's internal agent monitoring, published by METR, found new weaknesses in that kind of oversight, which is the sort of test this post does not report for its judge. Shopify has described a careful design and reports a clean record so far; the post reports no outside check of either.
- Shopify's Cyber Chaos Monkey runs AI agents against live production using test shops and live credentials. Shopify says tens of thousands of engagements produced dozens of impactful findings without causing an outage or incident.
- The system has two parts: Discovery uses cyber models to refine an attack idea and find suspect code or config, then hands the lead to a Sandbox where agents try to exploit it and report results that can spawn new engagements.
- Shopify found one of the agents' strongest techniques is a loop: send a live request to Shopify, read the production logs for how it was processed, reconcile that against source code, and iterate.
- The attacking agent calls model providers and internal knowledge services with a placeholder header that a credential proxy swaps for a regularly rotated secret, and an egress proxy is the only path out of the VPC.
- A second agent on a different model reads the attacker's full session in real time and can kill it for breaking the Rules of Engagement. If that judge crashes, times out or stops adjudicating, the orchestrator ends the run.
- AI agent — An AI system that doesn't just answer once but works toward a goal in a loop — taking actions, reading the results, and deciding what to do next.
- agent harness — The scaffolding around a model that turns it into a working agent — the loop, the tools it can call, and the rules for when to stop.
- sandbox — An isolated environment where AI-generated code or agent actions run without being able to touch anything real.
- tool permissions — The rules governing which tools an agent may call and which need confirmation — the boundary between a mistake and an incident.
Checking sign-in…
Loading comments…





