Packages / @modelcontextprotocol/sdk / Security
Anthropic's MCP TypeScript SDK has a ReDoS vulnerability
Affected releases · @modelcontextprotocol/sdk
- 1.x1.3.0 – 1.25.1Fixed in 1.25.2
On 1.x, the newest line:
npm install @modelcontextprotocol/sdk@1.25.2Not affected
0.4.0 – 1.2.0
13 releases
Affected
1.3.0 – 1.25.1
57 releases
Fixed
1.25.2 – 1.32.1
12 releases, latest
Is your project affected?
Paste your package.json, or type the range you declare for @modelcontextprotocol/sdk. It is read in your browser and sent nowhere.
What happens
Impact
A ReDoS vulnerability in the UriTemplate class allows attackers to cause denial of service. The partToRegExp() function generates a regex pattern with nested quantifiers (([^/]+(?:,[^/]+)*)) for exploded template variables (e.g., {/id*}, {?tags*}), causing catastrophic backtracking on malicious input.
Who is affected: MCP servers that register resource templates with exploded array patterns and accept requests from untrusted clients.
Attack result: An attacker sends a crafted URI via resources/read request, causing 100% CPU utilization, server hang/crash, and denial of service for all clients.
Affected Versions
All versions of @modelcontextprotocol/sdk prior to the patched release.
Patches
v1.25.2 contains b392f02 the fix modifies the regex pattern to prevent backtracking.
Workarounds
Avoid using exploded patterns (
{/id*},{?tags*}) in resource templatesImplement request timeouts and rate limiting
Validate URIs before processing to reject suspicious patterns