CVE-2026-63128: CWE-400: Uncontrolled Resource Consumption in modelcontextprotocol rust-sdk
RMCP is an official Rust SDK for the Model Context Protocol. Prior to 2.0.0, the rmcp crate's stateful Streamable HTTP server in crates/rmcp/src/transport/streamable_http_server/tower.rs allows an unauthenticated client to send a well-formed JSON-RPC POST that is not an initialization request, or an initialization request with a mismatched protocol header, causing StreamableHttpService::handle_post to call LocalSessionManager.create_session before validating the message. An early validation failure returns without removing the inserted LocalSessionHandle from LocalSessionManager.sessions, permanently retaining session and channel state for the server process lifetime. Repeated requests can grow the shared session table without bound, degrade legitimate-client latency through lock contention, exhaust memory, and terminate the server. This issue is fixed in version 2.0.0.
AI Analysis
Technical Summary
The vulnerability exists in the rmcp crate's Streamable HTTP server implementation (crates/rmcp/src/transport/streamable_http_server/tower.rs) where the StreamableHttpService::handle_post function creates a session before validating incoming JSON-RPC POST requests. If the request is not an initialization request or has a mismatched protocol header, the session is created but not properly cleaned up on validation failure. This causes the LocalSessionManager.sessions table to grow without bound, resulting in resource exhaustion and denial of service. The flaw is addressed in version 2.0.0 of the SDK.
Potential Impact
An unauthenticated attacker can exploit this vulnerability by sending crafted JSON-RPC POST requests that cause the server to retain session and channel state indefinitely. This leads to uncontrolled memory consumption, degraded performance due to lock contention, and ultimately server termination, causing denial of service to legitimate users.
Mitigation Recommendations
Upgrade to modelcontextprotocol rust-sdk version 2.0.0 or later, where this issue is fixed. No other mitigation or temporary workaround is indicated.
CVE-2026-63128: CWE-400: Uncontrolled Resource Consumption in modelcontextprotocol rust-sdk
Description
RMCP is an official Rust SDK for the Model Context Protocol. Prior to 2.0.0, the rmcp crate's stateful Streamable HTTP server in crates/rmcp/src/transport/streamable_http_server/tower.rs allows an unauthenticated client to send a well-formed JSON-RPC POST that is not an initialization request, or an initialization request with a mismatched protocol header, causing StreamableHttpService::handle_post to call LocalSessionManager.create_session before validating the message. An early validation failure returns without removing the inserted LocalSessionHandle from LocalSessionManager.sessions, permanently retaining session and channel state for the server process lifetime. Repeated requests can grow the shared session table without bound, degrade legitimate-client latency through lock contention, exhaust memory, and terminate the server. This issue is fixed in version 2.0.0.
CVSS v3.1
Score 7.5high
Affected software
modelcontextprotocol
rust-sdk
pkg:cargo/github/modelcontextprotocol/rust-sdkRun on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability exists in the rmcp crate's Streamable HTTP server implementation (crates/rmcp/src/transport/streamable_http_server/tower.rs) where the StreamableHttpService::handle_post function creates a session before validating incoming JSON-RPC POST requests. If the request is not an initialization request or has a mismatched protocol header, the session is created but not properly cleaned up on validation failure. This causes the LocalSessionManager.sessions table to grow without bound, resulting in resource exhaustion and denial of service. The flaw is addressed in version 2.0.0 of the SDK.
Potential Impact
An unauthenticated attacker can exploit this vulnerability by sending crafted JSON-RPC POST requests that cause the server to retain session and channel state indefinitely. This leads to uncontrolled memory consumption, degraded performance due to lock contention, and ultimately server termination, causing denial of service to legitimate users.
Mitigation Recommendations
Upgrade to modelcontextprotocol rust-sdk version 2.0.0 or later, where this issue is fixed. No other mitigation or temporary workaround is indicated.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-07-15T16:54:55.816Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 6aaaaf7355bf5e2cf5c3ac71
Added to database: 09/16/2026, 15:02:11 UTC
Last enriched: 09/16/2026, 15:16:39 UTC
Last updated: 09/16/2026, 15:55:47 UTC
Views: 5
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.