SEPTEMBER 17, 2026
Live Feed
Back to database
Case File

CVE-2026-53937

MEDIUM · CVSS 6.2 EPSS 0.19% Public Exploit

Source: NVD + CISA KEV + EPSS · Published 2026-09-09 · Last synced 2026-09-17

CyberRota Analysis

AI-Generated

The MCP Kotlin SDK versions 0.7.0 to 0.12.0 are vulnerable to a denial-of-service attack due to an unbounded buffer growth in the `ReadBuffer.append` method, which can lead to an out-of-memory condition when processing streams without newline characters. This vulnerability is particularly critical for environments where the SDK's stdin is fed by untrusted sources, such as in server-side applications or containerized deployments. Organizations using affected versions should prioritize upgrading to version 0.13.0 to mitigate this risk.

Public Exploit Signal

A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.

Note: these links are listed for security research and verification purposes only.

CVE
CVE-2026-53937
Severity
MEDIUM
CVSS
6.2
EPSS
0.19%

Original NVD Description

MCP Kotlin SDK is the Kotlin Multiplatform software development kit for the Model Context Protocol. In versions 0.7.0 through 0.12.0, `ReadBuffer.append` in `kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/ReadBuffer.kt` writes every chunk of bytes received from the stdio transport into a `kotlinx.io.Buffer` with no size cap. Frames are extracted from that buffer only when a `\n` (0x0a) byte is observed. A peer that streams bytes without ever sending a newline causes the internal buffer to grow indefinitely until the JVM (or the surrounding host process) is OOM-killed. The leak is amplified by `StdioServerTransport` and `StdioClientTransport`, which both queue raw chunks through a `kotlinx.coroutines.channels.Channel<ByteArray>(Channel.UNLIMITED)` and then call `readBuffer.append(chunk)` without backpressure or size guard. This is a remote-pre-auth denial of service whenever an SDK stdio server's stdin is fed by an untrusted or attacker-controlled producer (for example: a host program that exec's the MCP server as a subprocess and pipes through bytes received from a network peer, or a sidecar wrapper that proxies bytes from an HTTP endpoint to the stdio transport). Version 0.13.0 fixes the issue.