MCP 보안, 설계 자체가 뚫려 있는 이유
Anthropic이 만든 MCP는 지금 이 순간에도 월 9,700만 건 내려받고 있습니다. 그런데 이 프로토콜의 핵심 보안 결함을 연구팀이 발견하고 수정을 요청했을 때, Anthropic의 공식 답변은 딱 한 줄이었습니다. “설계 의도대로 동작하고 있다.”
MCP 보안이 왜 지금 문제가 됐나
Anthropic이 2024년 11월 공개한 MCP(Model Context Protocol)는 AI 모델과 외부 도구를 표준화된 방식으로 이어주는 오픈 프로토콜입니다. 출시 이후 2026년 3월까지 월간 SDK 다운로드가 9,700만 건을 돌파했고, 브런치 AI 트렌드 리포트(2026.04.16)는 이것을 “AI 인프라 표준 역사상 가장 빠른 채택 곡선”으로 표현했습니다. Kubernetes가 비슷한 수준의 배치 밀도에 도달하는 데 거의 4년이 걸렸다는 비교가 그 속도를 실감나게 보여줍니다.
문제는 이 채택 속도가 보안 검토를 한참 앞질렀다는 점입니다. 현재 공개 인터넷에 노출된 MCP 서버만 8,000개 이상이고, 이 중 492개는 클라이언트 인증과 트래픽 암호화가 전혀 없는 상태입니다. (출처: Trend Micro, 2026년 2월) 그냥 열어놓은 창고나 다름없습니다.
💡 공식 발표문과 실제 인터넷 노출 현황을 함께 보면 이 숫자가 다르게 읽힙니다. MCP 서버 7,000개 이상을 분석한 BlueRock Security는 그 중 36.7%가 서버 사이드 요청 위조(SSRF)에 취약하다는 걸 확인했습니다. 마이크로소프트 MarkItDown MCP 서버를 대상으로 한 개념 증명에서는 AWS IAM 액세스 키, 시크릿 키, 세션 토큰이 그대로 빠져나왔습니다. (출처: Security Boulevard, 2026)
보안 연구자 Simon Willison은 이 상황을 “치명적 3요소”라고 명명했습니다. AI 에이전트가 개인 데이터에 접근하면서, 신뢰할 수 없는 외부 콘텐츠를 처리하고, 외부와 통신까지 할 수 있는 구조—이 세 가지가 동시에 갖춰지면 해킹이 설계에 내장된 것과 같습니다. (출처: simonwillison.net, 2025.06.16) 실제로 배포된 MCP 에이전트 대부분이 이 세 가지를 모두 갖추고 있습니다. 그게 MCP의 핵심 기능이기 때문입니다.
STDIO 설계 결함 — 공식 SDK가 RCE 통로인 이유
MCP가 사용하는 로컬 전송 방식은 STDIO(표준 입출력)입니다. 클라이언트가 MCP 서버를 서브프로세스로 실행시키고, 그 프로세스의 stdin/stdout을 통해 JSON-RPC 메시지를 주고받는 구조입니다. (출처: MCP 공식 스펙 문서, 2025-11-25 버전)
OX Security 연구팀이 2025년 11월부터 시작한 조사에서 핵심 결함을 찾아냈습니다. STDIO 전송을 위한 서브프로세스 실행 함수가 MCP 서버를 시작하는 것뿐 아니라 임의의 OS 명령을 실행할 수 있도록 되어 있다는 것입니다. 그 명령이 STDIO 서버를 정상적으로 생성하면 핸들을 돌려주고, 다른 명령을 넣으면 명령을 실행한 뒤 오류를 반환합니다—명령은 이미 실행된 상태에서요. (출처: OX Security 공식 블로그, 2026.04.14)
💡 공식 스펙 문서와 실제 SDK 동작을 비교하면 이 차이가 선명합니다.
MCP 공식 스펙(2025-11-25)은 STDIO 전송에서 “클라이언트는 서버의 stdin에 유효한 MCP 메시지가 아닌 것을 쓰면 안 된다”고 명시합니다. 그러나 Anthropic 공식 SDK의 실제 구현은 이 제약 없이 임의 명령 실행이 가능한 인터페이스를 제공합니다. 스펙에는 적혀 있지만 구현에서는 지켜지지 않은 겁니다.
이 결함은 Python, TypeScript, Java, Rust — Anthropic 공식 SDK가 지원하는 모든 언어에 동일하게 존재합니다. 개발자가 어느 언어로 MCP를 구현하든 이 취약점을 그대로 상속받습니다. 그리고 이 코드를 내려받은 패키지는 누적 1억 5천만 건이 넘습니다. (출처: The Hacker News, 2026.04.20)
실제 공격 4가지 경로와 발급된 CVE 목록
OX Security가 밝혀낸 공격 경로는 크게 네 종류입니다. 각각 다른 방식으로 결국 서버에서 임의 명령을 실행시킵니다.
① 인증 없는 UI 주입
공개 UI를 통해 사용자 입력이 서버 명령에 그대로 전달. LangFlow, GPT Researcher, Agent Zero, Fay Framework 등 영향.
② 보호 우회 주입
허용 명령어 목록(python, npm, npx)만 실행 가능하도록 강화된 환경에서, 인수(args)를 통해 우회 성공. Upsonic, Flowise 영향.
③ 제로클릭 프롬프트 인젝션
AI IDE에서 사용자 프롬프트가 MCP JSON 설정에 직접 반영되면서 클릭 없이 로컬 명령 실행. Windsurf가 유일하게 CVE 발행.
④ 마켓플레이스 공급망 오염
MCP 디렉터리에 악성 패키지 등록. 개발자가 설치하는 순간 공격자가 개발 환경 전체를 장악. 11곳 중 9곳 통과.
이 네 가지 경로에서 현재까지 발행된 주요 CVE 목록입니다.
| CVE ID | 대상 | 공격 유형 | 심각도 | 현황 |
|---|---|---|---|---|
| CVE-2025-65720 | GPT Researcher | UI 주입/리버스셸 | Critical | 미패치 |
| CVE-2026-30623 | LiteLLM | 인증 후 RCE (JSON 설정) | Critical | 패치 완료 |
| CVE-2026-30615 | Windsurf | 제로클릭 프롬프트 → 로컬 RCE | Critical | 보고됨 |
| CVE-2026-30625 | Upsonic | 허용목록 우회 (npx 인수) | High | 경고 |
| CVE-2025-54136 | Cursor | 간접 프롬프트 인젝션 → RCE | Critical | 패치 완료 |
| CVE-2026-32211 | Microsoft Azure DevOps MCP | 인증 없이 API 키·토큰 접근 | CVSS 9.1 | 패치 완료 |
(출처: OX Security, The Hacker News, CVEdetails 2026년 4월 기준 / 현황은 이후 변경될 수 있습니다)
결국 연구팀은 살아있는 프로덕션 플랫폼 6곳에서 실제 명령 실행에 성공했습니다. 개념 증명이 아닌 실제 운영 환경에서 직접 확인한 수치입니다. (출처: OX Security, 2026.04.14)
마켓플레이스 11개 중 9개가 뚫렸습니다
공식 MCP 디렉터리나 마켓플레이스는 어떻게 됐을까요. OX Security는 실제 악성 행위 없이 빈 파일 하나를 생성하는 명령을 숨긴 테스트용 MCP 패키지를 만들어서 11개 마켓플레이스에 등록을 시도했습니다. 결과는 9개 통과, 2개 차단이었습니다. (출처: OX Security, 2026.04.14)
💡 공식 등록 채널이라는 것이 안전하다는 뜻은 아닙니다.
통과된 마켓플레이스 중에는 월간 방문자 수십만 명 이상인 플랫폼도 포함됩니다. 악성 MCP 패키지 하나가 그 디렉터리에 올라가면 탐지되기 전에 수천 명의 개발자가 설치할 수 있고, 각 설치마다 공격자는 그 개발 환경 전체를 통제할 수 있습니다.
AI 에이전트 프레임워크 OpenClaw를 노린 ClawHavoc 캠페인은 이것이 이미 현실임을 보여줍니다. 공식 패키지 레지스트리 ClawHub에서 확인된 악성 스킬은 1,184개로, 생태계 전체 패키지의 5개 중 1개꼴이었습니다. (출처: Antiy CERT, 2026년 2월) 타이포스쿼팅, 대량 자동 업로드, 가짜 오류 메시지를 이용한 사회공학—기존 소프트웨어 공급망 공격에서 쓰던 기법 그대로입니다. MCP가 처음 겪는 일이 아니라는 게 더 무섭습니다.
Windsurf만 CVE를 받은 이유가 따로 있습니다
프롬프트 인젝션 경로와 관련해서 의아한 부분이 하나 있습니다. 제로클릭 취약점이 영향을 미치는 AI IDE는 Windsurf, Cursor, Claude Code, Gemini CLI, GitHub Copilot 등 여러 개입니다. 그런데 CVE가 발행된 것은 Windsurf(CVE-2026-30615) 하나뿐입니다. (출처: The Register, 2026.04.16)
이유는 명확합니다. Windsurf에서는 사용자 프롬프트가 MCP JSON 설정 파일에 직접 반영되는 방식이라 사용자 상호작용이 전혀 필요 없습니다. 그래서 “진정한 제로클릭”으로 인정받아 CVE를 받았습니다.
💡 취약점이 없다는 것과 CVE가 없다는 것은 다릅니다.
Google, Microsoft, Anthropic은 다른 IDE들의 같은 문제에 대해 “파일 수정에 사용자 명시적 허가가 필요하므로 보안 취약점이 아니다”라는 입장을 밝혔습니다. CVE 등록을 위한 기준을 충족하지 않는다는 판단입니다. 하지만 사용자 허가 클릭 한 번이 방어선 전부라면, 사회공학이나 주의력이 흐트러진 순간 그 방어는 사라집니다.
같은 맥락에서, Anthropic이 OX Security의 수정 요청을 거부하면서 내놓은 공식 입장도 “STDIO 실행 모델은 안전한 기본값이고, 입력 새니타이제이션은 개발자 책임”이었습니다. 프로토콜을 만든 쪽이 책임을 구현체 개발자에게 넘긴 셈입니다. OX Security는 이를 두고 “하나의 구조적 결정이 모든 언어, 모든 하위 라이브러리, 모든 프로젝트에 조용히 퍼졌다”고 표현했습니다. (출처: OX Security, 2026.04.14)
지금 당장 할 수 있는 5가지 조치
근본 원인이 프로토콜 수준에 있다고 해서 손 놓고 있을 수는 없습니다. OX Security와 CoSAI(2026년 1월 MCP 보안 백서)가 공통으로 제시하는 실질적인 조치를 정리하면 다음과 같습니다.
외부 노출 MCP 엔드포인트 즉시 점검
환경 전체에서 /mcp, /sse 엔드포인트와 0.0.0.0 바인딩을 확인하세요. Snyk mcp-scan 도구가 MCP 서버와 에이전트 스킬을 동시에 점검해줍니다. 로컬 전용이라면 반드시 127.0.0.1에만 바인딩해야 합니다.
설정 파일 속 자격 증명 즉시 교체
.claude/settings.json, .mcp.json 등 에이전트 설정 파일에 있는 API 키는 유출됐다고 가정하고 교체하세요. Claude Code 기준으로 2.0.65+ 이상으로 업데이트하면 CVE-2025-59536, CVE-2026-21852가 패치됩니다. (출처: Check Point Research, 2026.02.25)
MCP 서버는 공식 GitHub MCP Registry에서만 설치
타사 마켓플레이스 11곳 중 9곳이 악성 패키지 등록을 막지 못했습니다. 검증된 출처 외 MCP 서버 설치는 피하고, 버전을 고정해서 관리하세요.
샌드박스 환경에서 MCP 서비스 실행
MCP 서버에 전체 디스크 접근 또는 셸 실행 권한을 주는 것은 기능에 꼭 필요한 경우로만 제한하세요. 컨테이너나 격리된 VM에서 실행하면 피해 범위를 작업 단위로 묶을 수 있습니다.
도구 호출 로그 모니터링
에이전트가 실제로 어떤 도구를 호출하는지 기록하고, .env 파일이나 API 키 디렉터리에 접근하는 패턴이 나타나면 즉시 확인하세요. 기존 EDR은 AI 에이전트의 텍스트 기반 공격을 잡지 못합니다. (출처: Cisco State of AI Security 2026 — 기업의 29%만 에이전트 보안 준비 완료)
Q&A
마치며
MCP는 실용적인 프로토콜입니다. AI 모델과 수백 개의 외부 도구를 표준화된 방식으로 이어준다는 아이디어는 옳았고, 채택 속도가 그것을 증명합니다. 문제는 속도에 있습니다. 설계 당시 보안이 1순위가 아니었고, 배포가 먼저 이뤄졌습니다. 이 순서는 클라우드 초기, REST API 초기에도 똑같이 반복됐던 패턴입니다.
솔직히 말하면, “Anthropic이 고쳐주겠지”를 기대하기는 어렵습니다. 공식 입장이 “설계 의도대로”이고 프로토콜 아키텍처 수정을 거부했다는 것은, 개별 개발자와 조직이 스스로 완화 조치를 적용해야 한다는 뜻입니다. 이 부분이 좀 아쉬웠습니다. 이미 공식 SDK 다운로드가 1억 5천만 건을 넘은 시점에서 “구현자 책임”이라는 답은 위험을 만든 쪽에서 위험을 넘기는 것에 가깝습니다.
에이전트 보안은 기술 문제라기보다 설계 철학의 문제입니다. 빠르게 열고 나서 천천히 잠그는 방식은 AI 인프라에서 더 이상 허용되기 어렵습니다. OWASP Agentic Top 10(2026)이 NIST, Microsoft AI Red Team, AWS의 검토를 거쳐 나온 것도 같은 인식에서입니다. 지금 MCP를 사용하고 있다면, 이 글에서 정리한 5가지 조치를 적용하는 것부터 시작하는 게 현실적입니다.
📚 본 포스팅 참고 자료
- OX Security — “The Mother of All AI Supply Chains: Critical Systemic Vulnerability at the Core of the MCP” (2026.04.14)
https://www.ox.security/blog/… - The Hacker News — “Anthropic MCP Design Vulnerability Enables RCE” (2026.04.20)
https://thehackernews.com/2026/04/… - The Register — “MCP ‘design flaw’ puts 200k servers at risk: Researcher” (2026.04.16)
https://www.theregister.com/2026/04/16/… - Anthropic MCP 공식 스펙 문서 — Transports (2025-11-25 버전)
https://modelcontextprotocol.io/specification/2025-11-25/basic/transports - AWS Tech Blog — “OWASP 기반 GenAI 보안 실무 점검 가이드” (2026.04.01)
https://aws.amazon.com/ko/blogs/tech/… - CyberDesserts — “AI Agent Security Risks 2026: MCP, OpenClaw & Supply Chain” (2026년 4월)
https://blog.cyberdesserts.com/ai-agent-security-risks/
본 포스팅은 2026년 4월 22일 기준으로 작성되었습니다. 본 포스팅 작성 이후 서비스 정책·UI·기능·보안 패치 현황이 변경될 수 있습니다. CVE 현황 및 패치 상태는 NVD(nvd.nist.gov) 및 각 공식 벤더 채널에서 반드시 최신 정보를 확인하세요.

댓글 남기기