무슨 일이 있었나
VulnCheck는 공식 MCP Kotlin SDK ≤ 0.15.0에 대해 CVE-2026-108714(2026-10-11 게시, CVSS 7.5 v3.1 / 8.7 v4.0, CWE-770)을 게시했습니다: Application.mcpWebSocket은 maxFrameSize 제한 없이 Ktor WebSockets를 설치하므로, 작은 제어 프레임 헤더가 몇 개의 연결을 통해 수 GiB 할당을 트리거하여 MCP 서버를 다운시킬 수 있습니다. NVD REST API를 통해 검증됨.
왜 중요한가
Kotlin SDK는 에이전트 생태계 전반에 걸쳐 프로덕션 MCP 서버를 지원합니다. MCP 인프라에 대한 인증되지 않은 원격 DoS는 에이전트 도구 호출 표면을 오프라인으로 만들고 공유 모델 서빙/에이전트 호스트를 충돌시킬 수 있습니다 — 네트워크에 MCP를 노출하는 에이전트 배포에 대한 저비용 가용성 공격입니다.
공격 경로
원격 인증되지 않은 클라이언트는 MCP 서버에 하나 또는 몇 개의 WebSocket 연결을 열고 헤더가 2GiB에 가까운 페이로드를 선언하는 프레임을 보내며(Ktor WebSocket 설치에 maxFrameSize가 구성되지 않음), 대규모 힙 할당을 강제하고 서버 메모리를 고갈시킵니다.
영향받는 시스템
MCP Kotlin SDK(io.modelcontextprotocol:kotlin-sdk-server) 최대 0.15.0
완화 방안
Kotlin MCP SDK를 0.15.0 이후 버전으로 업그레이드하거나(전송 구성을 통해 명시적 WebSocket maxFrameSize 설정) MCP 엔드포인트를 본문 크기 제한이 있는 인증/리버스 프록시 뒤에 배치하십시오. 권고: https://www.vulncheck.com/advisories/mcp-kotlin-sdk-through-0.15.0-memory-exhaustion-via-application-mcpwebsocket