피드로 돌아가기
Dev.toSecurity
원문 읽기
MCP 서버 12종 전수 조사, Prompt-to-RCE 위험성 발견
We Scanned 12 Popular MCP Servers. Here's What We Found.
AI 요약
Context
MCP 생태계 내 보안 표준 및 베이스라인 부재. AI 에이전트가 사용자 입력을 MCP 도구로 전달하는 구조적 특성 존재. 입력값 검증 미비로 인한 원격 코드 실행(RCE) 가능성 상존.
Technical Solution
execFile()대신spawn()또는exec()를 사용하여 셸 인젝션에 취약한 명령 실행 패턴 사용- 템플릿 리터럴을 통한 셸 명령어 직접 삽입으로 입력값 검증 단계 생략
- 프로덕션 코드 내 API 키 및 OAuth 클라이언트 시크릿 하드코딩
- Python
exec()함수를 이용한 동적 코드 실행 및 샌드박스 격리 미비 - Claude Desktop 설정에서
node및python런타임을 직접 호출하는 셸 인터프리터 구성 - CI/CD 파이프라인 내 MCP 전용 보안 스캐닝 및 입력값 유효성 검사 로직 누락
Impact
- 분석 대상 12개 저장소 모두 보안 취약점 발견 (발견율 100%)
- 총 58건의 취약점 식별 (Critical 12건, High 17건, Medium 29건)
- Command Injection 패턴 46건 검출
- 하드코딩된 자격 증명 7건 발견
- 2026년 1~2월 보고된 MCP CVE 중 Command Injection 비중 43%
Key Takeaway
AI 에이전트와 시스템 셸 사이의 신뢰 경계가 모호할 때 발생하는 Prompt-to-RCE 파이프라인의 위험성 확인. 런타임 수준의 격리가 아닌 애플리케이션 코드 수준의 엄격한 입력 검증과 정적 분석 도구 도입이 필수적임.
실천 포인트
MCP 서버 개발 시 `exec()` 사용을 금지하고 `execFile()`로 대체하며, agent-audit을 CI 파이프라인에 통합하여 하드코딩된 시크릿과 인젝션 패턴을 자동 검사할 것