피드로 돌아가기
Dev.toSecurity
원문 읽기
MCP 서버 설치 시 의존성 트리를 통해 평균 수십 개의 CVE 취약점이 전달됨
What You're Installing When You Add an MCP Server
AI 요약
Context
MCP 에코시스템이 빠르게 성장하는 가운데 사용자들은 서버 설치 시 실제로 무엇을 상속하는지 파악하지 못하고 있음. 코드와 의존성 트리, 취약점이まるごと 전달되는 구조를 인식하지 못한 채 설치를 진행함.
Technical Solution
- Public CVE Registry API: mistaike.ai/cve-registry에서 API 키 없이 MCP 서버별 취약점 데이터를 조회할 수 있음
- Dependency Graph 분석: 25,000개 이상의 MCP 구현체를 색인하고 6,000개 이상의 서버에 대한 CVE 매핑을 수행함
- Severity Filter: ?severity=critical|high|medium|none 파라미터로 취약점 심각도를 필터링함
- Behavioral Runtime Analysis: 서버 실행 시 실제 네트워크 연결과 데이터 전송 행위를 동적으로 추적함
- Search & Sort API: ?search=, ?sort=, ?page=, ?page_size= 파라미터로 다양한 쿼리 시나리오를 지원함
Impact
분석 대상 서버 중 다수가 의존성 트리를 통해 알려진 취약점을 보유하고 있음. 상위권 서버들은 40개에서 103개 사이의 CVE를 보유하며 일부 사례에서 critical 등급 취약점이 확인됨. 런타임 분석에서는 86%의 서버가 문서화된 목적 외에 우려스러운 행위를 보이지 않았으나 소수 서버에서 미공개 텔레메트리, 데이터 유출, 숨겨진 network call 등의 심각한 행위가 발견됨.
Key Takeaway
MCP 서버의 위험은 직접 작성한 코드가 아니라 전달받는 공급망에 존재함. 취약점 수치와 심각도를 동시에 고려해야 실제 노출 범위를 정확히 평가할 수 있음.
실천 포인트
MCP 에이전트에 서버를 추가하기 전 Public CVE Registry API(?search=서버이름)로已知 취약점 노출 수준을 확인하고 ?severity=critical 필터로 즉시 조치 필요 취약점을 선별적으로 검토할 것. 의존성이 많거나 버전을 고정하지 않은 서버는 설치 전 추가 검증이 필요함.