무슨 일이 있었나
Erlang CNA를 통해 2026-10-08에 BeamMCP에 대해 게시된 두 개의 낮은 심각도 권고(CVE-2026-88257 CVSS 5.3, CVE-2026-104634 CVSS 2.3): 스키마 검증이 경계 사례(유형/필수/additionalProperties/enum/숫자 범위)를 놓치고 서버가 JSON 불리언/null을 문자열로 강제 변환하므로 호스트 디스패치에 도달하는 도구 인수가 선언된 계약 및 타입 가정을 위반할 수 있음
왜 중요한가
MCP 도구 입력 검증은 신뢰할 수 없는 클라이언트와 호스트의 디스패치 함수 사이의 신뢰 경계입니다. 우회 가능한 스키마는 클라이언트가 예기치 않은 값으로 도구를 구동할 수 있게 하며, 이는 MCP 호스트 내부의 타입 혼동/명령 주입 프리미티브로 가는 디딤돌이 됩니다. 다만 현재 폭발 반경은 알려진 익스플로잇이 없는 틈새 Elixir 라이브러리입니다.
공격 경로
MCP 클라이언트는 서버가 광고한 스키마를 위반하는 인수로 도구의 디스패치 함수에 도달할 수 있습니다. 스키마 검증이 reject-additional-properties/숫자 처리를 완전히 강제하지 않으며, JSON true/false/null이 호스트 디스패치 함수에 도달하기 전에 문자열 'true'/'false'/'nil'로 변환되므로 불리언/숫자 기대값이 예기치 않은 유형으로 우회될 수 있습니다.
영향받는 시스템
ScriptKittyOS beam_mcp (BeamMCP.Schema.validate/2 및 BeamMCP.Server 디스패치)
완화 방안
수정 사항이 릴리스되면 beam_mcp를 업데이트하십시오. 스키마 검증을 심층 방어로 취급하고 광고된 스키마와 관계없이 호스트 도구 디스패치가 예기치 않은 인수 유형에 대해 강화되도록 하십시오.