무슨 일이 있었나
MCP 서버의 HTTP 모드는 요청 로컬 오류 경계 없이 인증되지 않은 POST /mcp 요청을 처리합니다: 하나의 잘못된 JSON 본문이 SyntaxError를 발생시켜 Node.js 프로세스를 종료합니다. 동반 결함은 누적 제한 없이 모든 요청 본문 청크를 Buffer[]에 누적하며, 다른 결함은 모든 클라이언트에 대해 하나의 상태 저장 StreamableHTTPServerTransport를 재사용합니다.
왜 중요한가
MCP 서버는 LLM 에이전트에 의해 활용되며 네트워크에 노출될 수 있습니다. 단일 요청에 대한 인증되지 않은 원격 DoS는 해당 서버에 의존하는 모든 에이전트에 대해 MCP 서비스를 사용할 수 없게 만들고, 전송 재사용 문제는 클라이언트 간 상태/세션 컨텍스트를 누출할 수 있습니다.
공격 경로
인증되지 않은 원격 클라이언트는 잘못된 JSON POST /mcp 본문 하나를 전송하여 처리되지 않은 SyntaxError를 발생시켜 Node.js 프로세스를 종료하고 외부 감독자가 재시작할 때까지 MCP 서비스를 오프라인 상태로 만듭니다. 관련 결함은 무제한 본문 누적 및 공유 전송을 통한 교차 클라이언트 상태 누출을 허용합니다.
영향받는 시스템
@tsparticles/mcp-server < 4.3.1 (충돌 / 본문 누적); < 4.3.2 (전송 재사용)
완화 방안
@tsparticles/mcp-server를 >=4.3.1로 업그레이드하십시오 (전송 재사용의 경우 >=4.3.2); 수정 커밋 및 GitHub 권고를 참조하십시오.