MCP 서버 과다 권한 도구 탐지를 위한 종합 보안 감사 프레임워크

MCP 서버 과다 권한 도구 탐지를 위한 종합 보안 감사 프레임워크
안내: 본 포스트의 한글 요약 및 분석 리포트는 AI 기술을 통해 자동 생성되었습니다. 정보의 정확성을 위해 하단의 [원본 논문 뷰어] 또는 ArXiv 원문을 반드시 참조하시기 바랍니다.

초록

본 논문은 LLM‑연동 프로토콜인 Model Context Protocol(MCP) 서버가 노출할 수 있는 파일·네트워크·명령 실행 등 과다 권한 기능을 사전 검증하기 위해, 정적 패턴 매칭과 동적 eBPF 기반 샌드박스 퍼징을 결합한 오픈소스 도구 mcp‑sec‑audit을 제안한다. TOML‑형식 규칙집을 활용한 플러그인 아키텍처로 Python 코드와 MCP 메타데이터를 분석하고, 위험도 점수를 산출해 최소 권한 컨테이너 설정 등 구체적인 완화 방안을 자동으로 생성한다. 평가 결과, 정적 분석에서는 100%(Python) 탐지율, 동적 분석에서는 언어에 관계없이 100% 탐지율을 달성했으며, 현재 한계와 향후 확장 방향도 제시한다.

상세 분석

본 연구는 MCP 서버가 제공하는 도구 인터페이스가 LLM 에이전트에게 직접적인 시스템 권한을 위임할 위험성을 강조한다. 기존 SAST 도구는 일반적인 코드 패턴(예: subprocess.run, open(..., 'w'))을 탐지하지만, MCP 특유의 메타데이터(툴 설명 JSON)와 프로토콜 흐름을 고려하지 못한다는 점을 지적한다. 이를 보완하기 위해 저자들은 두 단계의 분석 파이프라인을 설계하였다. 첫 번째 정적 파이프라인은 TOML 기반 규칙집을 로드하고, 정규식·키워드 매칭을 통해 Python 소스와 메타데이터에서 command_exec, file_write, network_outbound 등 사전 정의된 “Capability Family”를 식별한다. 규칙은 가중치와 심각도 레벨을 포함해 위험 점수 산출에 직접 활용된다. 두 번째 동적 파이프라인은 Docker 샌드박스 내에서 MCP 서버를 실행하고, 프로토콜 퍼저가 악의적 페이로드(쉘 인젝션, 경로 탐색 등)를 주입한다. 실행 중 eBPF 프로브가 시스템 콜, 파일 I/O, 네트워크 연결을 캡처하고, 이를 CEF 포맷 로그로 변환한다. 동적 분석 엔진은 로그를 파싱해 실제 런타임 행동을 “Capability Finding”으로 매핑함으로써 정적 분석이 놓칠 수 있는 우회·난독화 코드를 검출한다.

아키텍처는 Control Plane, Core Analysis Plane, Output Synthesis Plane, Web Detection Portal 네 개의 레이어로 구성된다. 플러그인 레지스트리를 통해 새로운 탐지기(예: TypeScript AST 분석기)를 손쉽게 추가할 수 있도록 설계했으며, 규칙집은 TOML 파일 하나로 정적·동적 탐지 모두에 재사용된다. 위험 점수는 각 Capability에 부여된 가중치와 탐지 신뢰도(confidence)를 가중합해 산출하고, 사전 정의된 임계값에 따라 LOW/MEDIUM/HIGH/CRITICAL 등급을 부여한다.

평가에서는 세 가지 실험을 수행했다. (1) 합성 악성 툴에 대한 정적 분석에서는 3가지 주요 Capability를 0.65~0.85 신뢰도로 정확히 탐지했으며, 2초 이내에 결과를 출력했다. (2) MCPTox 벤치마크(45개 실세계 MCP 서버)에서는 메타데이터에 Capability 표시가 있는 367개 샘플을 100% 탐지했으며, 전체 탐지율은 74.7%에 달했다. (3) 취약점 실험실(Vulnerable MCP Servers Lab)에서는 Python 기반 서버는 정적·동적 모두에서 탐지했으나, JavaScript 서버는 정적 분석에서 0% 탐지된 반면 동적 분석에서는 100% 탐지했다. 이는 동적 파이프라인이 언어에 독립적인 행동 기반 탐지를 제공함을 증명한다.

한계점으로는 현재 정적 분석이 Python·JSON만 지원하고, JavaScript·TypeScript는 플러그인 미구현 상태이며, 패턴 기반 탐지 특성상 오탐·누락 위험이 존재한다는 점을 들었다. 또한 eBPF 기반 샌드박스는 Linux 전용이며, privileged Docker 실행이 필요해 배포 장벽이 높다. 향후 작업으로는 언어 지원 확대, LLM 기반 의미 분석 결합, 비-Linux 환경 지원, 그리고 보다 세분화된 정책 템플릿 제공을 계획하고 있다.

전반적으로 mcp‑sec‑audit은 MCP 서버 개발·배포 단계에서 과다 권한을 사전에 식별하고 최소 권한 원칙을 적용하도록 돕는 실용적인 도구이며, 정적·동적 분석을 결합한 하이브리드 접근법이 언어와 구현 방식에 관계없이 높은 탐지율을 보인다는 중요한 교훈을 제공한다.


댓글 및 학술 토론

Loading comments...

의견 남기기