🇰🇷 한글 설명
MCP Python SDK(mcp)의 1.23.0부터 1.27.2 버전 사이에서 발생하는 취약점입니다. server.experimental.enable_tasks()로 활성화된 태스크 핸들러가 세션 정보를 기록하지 않아, 연결된 모든 클라이언트가 다른 클라이언트의 태스크를 열람, 결과 읽기, 메시지 소비 또는 취소할 수 있습니다.
💡 쉬운 설명
프로그램이 작업(태스크)을 관리할 때 '누가 만든 작업인지'를 확인하지 않는 문제입니다. 이로 인해 다른 사용자가 생성한 작업을 몰래 훔쳐보거나 강제로 중단시킬 수 있습니다.
🇺🇸 원문 (English)
The MCP Python SDK, called mcp on PyPI, is a Python implementation of the Model Context Protocol (MCP). From 1.23.0 until 1.27.2, default handlers installed by server.experimental.enable_tasks() for tasks/list, tasks/get, tasks/result, and tasks/cancel operate only on task identifiers without recording the session that created each task, allowing any connected client to enumerate, read results from, consume messages for, or cancel other clients' tasks. This issue is fixed in version 1.27.2.
📍 영향받는 시스템
mcp Python SDK (PyPI) 버전 1.23.0 ~ 1.27.2
⚔️ 공격 벡터
동일한 서버에 연결된 악의적인 클라이언트가 태스크 식별자를 이용해 타인의 세션에 접근
🛡️ 대응 방법
mcp Python SDK를 버전 1.27.2 이상으로 업데이트
🔧 검증 코드
출력된 버전이 1.27.2 미만(1.23.0~1.27.1)이면 취약한 상태입니다.
pip show mcp | grep Version