MCP(Model Context Protocol) 생태계에 18,883개 서버가 존재하지만 보안 감시 부재로 인해 npm 공급망 공격(2018년 event-stream, 2021년 ua-parser-js)과 유사한 위험에 노출됨
18,883 MCP servers. Five Chinese tech giants joined this week. Zero security audits.
AI 요약
Context
MCP 서버는 npm 패키지와 달리 클라이언트 머신에서 실행되는 코드가 아닌 외부 네트워크를 통해 실시간 데이터(위치 정보, 검색 쿼리, 소스 코드 등)를 전송한다. 2024년 3월 24일 litellm 라이브러리의 1.82.7과 1.82.8 버전이 PyPI에서 OpenAI, Anthropic, Gemini API 키를 탈취하는 악성코드를 포함했고, 같은 주간에 Tencent, Zhipu AI, Amap, Baidu, MiniMax 등 5개 중국 기술 기업이 MCP.so 트렌딩 페이지에 나타났다. 현재 18,883개의 MCP 서버 중 표준화된 보안 감시 프로세스가 존재하지 않는다.
Technical Solution
- 보안 감시 공백 식별: 3월 19일 Qualys가 "MCP Servers: The Shadow IT of the AI Agent Era" 경고 발행 → 3월 24일 litellm 악성코드 발견 → 3월 23~25일 중국 5개사 MCP 서버 출현이라는 3건 사건이 연쇄 발생했으나 상관관계 분석 미수행
- 공급망 공격 구조적 차이 명시: npm 공급망 공격은 로컬 코드 실행에 한정되었으나, MCP 서버는 설계상 실시간 데이터 외부 전송을 기본 동작으로 함
- 지정학적 위험 노출: 중국 Cybersecurity Law(2017)와 National Intelligence Law(2017)에 따라 위치 데이터, 검색 쿼리, 배포 워크플로우가 중국 내 데이터 보관 및 정보기관 협력 대상이 될 수 있음
- 감사 부재 현황 기록: 18,883개 MCP 서버 중 공식 보안 감사 프로세스 또는 공개 검토 절차 없음
Impact
litellm 악성코드 사건이 Hacker News에서 1,159포인트와 364개 댓글을 받은 반면, 동일 주간 중국 5개사의 MCP 서버 출현은 공개 논의 없이 진행됨. npm은 2018년 event-stream 공격 이후 10년에 걸쳐 패키지 서명과 스코프드 레지스트리를 추가함.
Key Takeaway
MCP는 npm 공급망 문제를 반복하되 더 높은 위험도로 진행 중이다: 정적 코드 대신 실시간 데이터 전송, 중립적 레지스트리 대신 지정학적 이해관계 개입. npm이 배운 10년의 교훈을 MCP는 1년 내에 학습해야 한다.
실천 포인트
MCP 서버를 프로덕션 환경에서 도입하는 조직은 npm 패키지 관리 정책과 동일한 수준의 감시를 적용할 수 없다. 대신 (1) 각 MCP 서버의 소스 코드 공개 여부 확인, (2) 서버가 외부로 전송하는 데이터 타입과 수신처 매핑, (3) 신뢰할 수 있는 출처(예: 내부 개발팀)의 서버만 사용하도록 화이트리스트 운영을 권장한다.