CVE-2026-63119
MediumCVSS 6.2Exploitation Probability (EPSS)
Low risk3th percentile - higher than 3% of all known CVEs
Summary
A vulnerability in MCP Ruby SDK before version 0.23.0 allows process memory exhaustion by sending data without a newline in StdioTransport and Stdio client. The IO#gets function is used without a byte limit.
Risk Assessment
An attacker could cause the MCP server to crash due to memory exhaustion, leading to service disruption.
Recommendation
Upgrade MCP Ruby SDK to version 0.23.0 or later.
Other vulnerabilities in MCP Ruby SDK
See all- CVE-2026-67432High
MCP Ruby SDK before version 0.23.0 in StreamableHTTPTransport reads the entire JSON-RPC POST body without size limits, allowing an unauthenticated remote attacker to exhaust process memory.
- CVE-2026-67431High
MCP Ruby SDK before version 0.23.0 does not bind a session ID to its owner, allowing an attacker with a stolen session ID to send tools/call requests in the victim's session.
- CVE-2026-67430Medium
A vulnerability in MCP Ruby SDK before version 0.23.0 allows process memory exhaustion via unbounded creation of ServerSession objects in StreamableHTTPTransport. Sessions do not expire by default, and repeated initialize requests accumulate objects.
- CVE-2026-63118Medium
A vulnerability in MCP Ruby SDK before version 0.23.0 allows DNS rebinding attacks due to missing validation of Host and Origin headers in StreamableHTTPTransport. A malicious web page can access a local MCP server and invoke tools.
Original NVD description (English source)
MCP Ruby SDK is the official Ruby SDK for Model Context Protocol servers and clients. Prior to 0.23.0, MCP::Server::Transports::StdioTransport and MCP::Client::Stdio in the mcp gem use IO#gets without a byte limit, allowing a peer that sends data without a newline to exhaust process memory. This issue is fixed in version 0.23.0.

