← All advisories
CVE-2026-96620criticalCode execution2026-10-16

CVE-2026-96620: Claude Agent SDK (Python) resume option lets attackers run commands

Before 0.2.121, the Python Claude Agent SDK passed the resume session ID straight to the Claude CLI. A value starting with a dash became a CLI flag, so an attacker could inject an MCP server config and run commands.

01.

What it is

GitHub advisory: the SDK “passed the resume option to the Claude CLI without validation, allowing a value beginning with - to be interpreted as a separate CLI flag.”

An attacker who controls that value can inject --mcp-config defining a stdio MCP server, which runs arbitrary commands at CLI startup and bypasses the SDK’s permission controls.

It is only exploitable when your app passes untrusted input (for example a session ID from a request) as the resume value.

02.

How to check

  1. Affected: claude-agent-sdk (pip) below 0.2.121.
  2. Search your code for resume= and check whether the value can come from a user, URL or request body.
03.

How to fix

  1. Upgrade claude-agent-sdk to 0.2.121 or later.
  2. Never pass user-supplied session IDs to the SDK without validating them against IDs your app created.
pip show claude-agent-sdk | grep Version
pip install -U "claude-agent-sdk>=0.2.121"
04.

Sources

More advisories for this tool
The weekly email

One email a week. Only what changed.

New advisories, CVEs and fixes for Lovable, Bolt, v0, Replit, Base44 and Cursor apps. No roundups of things you already read.

Free. The list is new, so the first issues go out once there are readers. Unsubscribe from any email in one click. We never sell or share addresses.