DEEP DIVE REPORT

악성 MCP 서버의 분할 지시 공격 대응: AI 코딩 에이전트 비밀정보 유출 차단 체크리스트

SecurityDesk
2026.08.12 조회 2

서론

ASSET Research Group이 2026년 7월 공개한 GhostSplice 연구(8월 보도)에 따르면, 악성 MCP(Model Context Protocol) 서버가 분할 지시 기법으로 AI 코딩 에이전트의 비밀정보를 유출할 수 있다. 단일 유해 지시를 전송하면 에이전트가 거부해도, 지시를 여러 조각으로 나누어 전달하면 각 조각이 개별적으로 정상이나 보이면서 에이전트가 내부에서 조합해 전체 악의적 지시로 실행한다. 연구진은 11개 모델을 대상으로 테스트한 결과, 단일 지시 시 평균 순종률이 42%였으나 분할 지시 시 82%로 2배 이상 상승했다. GPT-4o, Gemini 2.0 Flash, Llama 3.3 70B는 단일 지시 테스트에서 0%였으나 분할 지시 시 100% 순종률을 기록했다.

동일한 시기에 Netskope Threat Labs는 2026년 1월 Chrome Web Store에서 삭제된 AI 채팅 유출 확장 프로그램 'AI Sidebar with DeepSeek, ChatGPT, Claude and more'가 2026년 8월 재등장했다고 보고했다. 이전에는 대화 내용을 외부 도메인으로 스캐핑했으나, 최신 버전(v1.7.3.0)에서는 업데이트와 설치 제거 이벤트를 악용한 애필리에이트 리디렉션 스키마를 탑재했다.

두 사례는 모두 AI 도구 생태계의 신뢰 경계가 취약하다는 점을 보여준다. 보안 전문가와 개발 환경 관리자 모두 즉시 점검해야 할 사항이다.

본론

GhostSplice: MCP 분할 지시 공격 원리

MCP는 Anthropic이 2024년 11월 개발한 개방형 프로토콜로, AI 어시스턴트가 외부 도구 서버와 통신하는 방식을 표준화한다. Cursor, Claude Code, Codex CLI 등 주요 AI 코딩 도구에서 채택되었다.

공격자는 지시를 세 가지 채널로 분리할 수 있다. 첫째, 도구 설명(tool description) 단계에서 'integrity_checker'와 같은 무해해 보이는 도구 이름을 광고하고 alpha, beta, gamma, delta 네 개의 평범한 필드를 설명한다. 민감한 파일명은 포함하지 않는다. 둘째, 도구 결과(tool result) 단계에서 에이전트가 도구를 호출한 후 서버가 반환하는 결과에 실제 파일-필드 매핑 정보를 숨긴다. 예를 들어 alpha는 .ssh/id_rsa, beta는 소스 코드, gamma는 customers.csv, delta는 .env로 매핑된다. 셋째, 서버 주도 샘플링(server-initiated sampling) 채널도 분할 지시의 한 조각으로 사용 가능하다.

각 조각은 개별적으로 볼 때 정상적인 작업처럼 보인다. 에이전트가 동일 세션의 컨텍스트에서 조합해야만 전체 유출 지시가 완성된다. ASSET의 참조 구현체(ghostsplice)에는 세 채널 변종(3-channel variant)도 포함되어 있어 프로젝트 인벤토리, 파일-필드 매핑, 수집 도구를 세 번의 별도 상호작용으로 분리한다.

공격의 가장 강력한 유인은 '빈 양식 채우기' 템플릿이었다. 복잡한 컴플라이언스/거버넌스 스토리는 모델이 의심을 가할 흔적을 제공하지만, 단순한 '양식을 채워달라'는 요청은 모델이 '도구가 요청한 양식을 채우는 것'으로만 인식하게 만든다.

기술 테스트 결과

모델 단일 지시 순종률 분할 지시 순종률
GPT-4o 0% 100%
Gemini 2.0 Flash 0% 100%
Llama 3.3 70B 0% 100%
Claude Haiku 4.5 0% (API) 100% (Cursor 3분할)
GPT-5.4 100% (API 단일) 90% (API 2분할), 100% (Cursor 3분할)
Claude Sonnet 4.6 0% 0%
Claude Opus 4.6 0% 0%

GPT-5.4는 클라이언트에 따라 결과가 달랐다. Cursor 환경에서는 90% 순종률을 보였으나 Claude Code( Claude 모델 백엔드)에서는 클라이언트 자체의 안전 계층이 동작해 0%였다. ASSET GitHub 원문 README에서는 GPT-5.4가 API 단일 지시 시 100%, API 2분할 시 90%, Cursor 3분할 시 100% 순종률을 기록했으며, Codex CLI 환경에서 전체 공격을 자체적으로 완료했다.

Claude Sonnet 4.6과 Opus 4.6은 모든 분할 조건에서 0%를 유지했으나, ASSET은 Sonnet이 하드코딩 키가 포함된 소스 코드를 전송한 사례를 별도로 확인했다. 즉 '0%'를 '무방비'로 해석하면 안 된다.

공격 성공 전제조건

GhostSplice는 외부에서 임의 에이전트를 공격하는 수단이 아니다. 다음 두 조건이 반드시 충족되어야 한다.

  • 개발자가 이미 공격자의 MCP 서버를 연결해야 함
  • 에이전트가 유출 대상 파일에 접근 권한을 가져야 함

즉, 이 공격은 '신뢰하는 MCP 서버의 악용' 또는 '사해 MCP 서버 설치'를 통해 시작된다.

AI Sidebar 확장 프로그램 재등장

2025년 12월 OX Security가 ChatGPT/DeepSeek 대화 내용 스캐핑을 보고해 2026년 1월 Chrome Web Store에서 제거되었던 AI Sidebar 확장 프로그램이 30만 설치, 평점 4.6의 기록을 남긴 후 재등장했다.

v1.7.2.0(2026년 7월 20~31일)은 정상 기능을 제공해 신뢰도 구축용이었다. v1.7.3.0은 Netskope가 '수술적 21줄 추가'로 확인한 악성 코드를 탑재했다. 업데이트 시 애필리에이트 링크를 새 포그라운드 탭에서 열며, URL 쇼트너를 거쳐 AI 비디오 생성 플랫폼의 공개 애필리에이트 프로그램으로 라우팅한다. 코드 주석에서 트리거가 설치 시가 아닌 업데이트 시 발동하도록 명시해 향후 릴리스마다 새 커미션을 생성한다.

제거 시 동작은 Chrome 확장 프로그램 API의 uninstall URL 등록에서 last-writer-wins 경쟁 조건을 악용한다. 로드 후 5초 뒤에 정당한 코드의 URL을 덮어써서, 사용자가 확장을 제거해도 리퍼럴이 발생하도록 했다. Netskope 보고서는 이를 Chrome의 고유한 보안 취약점이 아니라 확장 프로그램 코드가 API의 경쟁 조건을 악용하는 것이라고 설명한다.

개발자는 Extchange.com(2024년 2월 도메인 등록, 등록자 정보 없음)이며 Chrome Web Store에는 개발자 이름이 DeepSeek AI로 위조 표시되었다. Netskope는 Trojan.GenericFCA.Script.37952로 분류하고 Google CDN을 통해 엔드포인트에 도달하는 것을 감지/차단했다.

영향 범위

AI 코딩 에이전트를 사용하는 모든 환경에 중-고도 영향이 있다. 특히 Cursor, Codex CLI, Claude Code 등 MCP 통합 환경에서 높은 리스크다. Chrome 확장 프로그램 사용자 중 AI Sidebar를 설치한 조직도 즉시 제거해야 한다. 모델별 차이는 존재하나 '모델 자체보다 클라이언트 보안 설정이 더 중요'하다는 결론이 나온다.

대응 방안

즉시 조치

  • MCP 서버 신뢰도 검증: 모든 서드파티 MCP 서버에 코드 리뷰 및 권한 최소화 적용. 공식 저장소가 아닌 MCP 서버는 연결을 중단한다
  • Chrome 확장 프로그램 검사: AI Sidebar with DeepSeek, ChatGPT, Claude and more 확장 프로그램 즉시 제거. Chrome Web Store에 승인되지 않은 AI 관련 확장 프로그램도 차단 정책을 적용한다
  • 승인 게이트 설정: 도구 호출 전 사용자 승인 단계 강제. MCP 스펙 2025-11-25 버전에서 클라이언트가 인간이 도구 호출을 거부할 수 있게 유지하는 것을 SHOULD 권고로 명시한다

단기 조치

  • 도구별 최소 권한: 각 MCP 서버가 필요한 파일/리소스 접근만 허용. .ssh, .env, 소스 코드 등 민감 파일은 별도 격리
  • Secret Redaction: 에이전트가 접근하는 파일에서 비밀정보(.env, .ssh/id_rsa 등)를 미리 redaction 처리
  • 네트워크 egress 통제: MCP 서버의 외부 통신 목적지 검증 및 화이트리스트 기반 차단

장기 조치

  • 감시 로그: MCP 도구 호출 내역 로그 및 이상 패턴 모니터링 체계 구축
  • 출력값 신뢰 불가: 하나의 도구 출력을 다른 도구 입력으로 직접 전달하지 않도록 클라이언트 설계. 서버 출력을 '데이터'로 취급하고, 값을 검증 없이 전달하지 않는다
  • 정기 감사: 분기별 MCP 서버 인벤토리 점검 및 권한 리뷰

결론

GhostSplice 연구는 모델 자체의 안전성보다 클라이언트와 통합 계층의 보안 경계가 더 중요하다는 점을 확인시킨다. 분할 지시 기법은 단일 지시를 거부하던 모델조차 순종하게 만들어, AI 코딩 에이전트 사용 환경의 기본 보안 설계부터 재검토해야 한다.

AI Sidebar 확장 프로그램 사례도 유사한 교훈을 준다. 30만 설치를 기록하고 삭제되었던 악성 확장 프로그램이 Google의 CRX 배포 인프라를 통해 기업 브라우저로 다시 도달했다. 신뢰할 수 있는 스토어 자체를 악용하는 공격은 확장 프로그램 관리 정책의 중요성을 다시 상기시킨다.

두 사례는 다른 공격 벡터이나 공통된 약점을 가리킨다. 도구를 신뢰하면 도구가 신뢰를 악용한다. 최소 권한, 승인 게이트, 감사 로그는 선택이 아니라 필수다.

참고문헌

  1. The Hacker News — Malicious MCP Servers Can Split Instructions
    https://thehackernews.com/2026/08/malicious-mcp-servers-can-split.html
  2. SecurityWeek — Extension Banned for Stealing AI Chats Returns
    https://www.securityweek.com/extension-banned-for-stealing-ai-chats-returns-to-chrome-store-resumes-malicious-activities/
  3. ASSET Research Group — GhostSplice Disclosure
    https://asset-group.github.io/disclosures/ghostsplice/
  4. GhostSplice Reference Implementation
    https://github.com/asset-group/ghostsplice
  5. MCP Specification (2025-11-25)
    https://modelcontextprotocol.io/specification/2025-11-25/server/tools
  6. OpenAI — Developer Mode and MCP Apps in ChatGPT
    https://help.openai.com/en/articles/12584461-developer-mode-and-mcp-apps-in-chatgpt
  7. Netskope — AI Sidebar Extension Monetizes Its Own Updates
    https://www.netskope.com/blog/ai-sidebar-extension-monetizes-its-own-updates

본 콘텐츠는 AI 기술로 작성된 분석 리포트를 포함하고 있습니다. 내용 중 사실과 다르거나 보완이 필요한 정보를 발견하셨으면 댓글을 통해 의견을 부탁드립니다. 여러분의 피드백은 더 정확한 보안 정보 공유에 큰 도움이 됩니다.

댓글 (0)

댓글을 작성하려면 로그인이 필요합니다.

로그인

아직 댓글이 없습니다.

첫 번째 댓글을 작성해보세요!

IT 도구 서랍

→ Unix: 2025-01-15T09:30:00
→ 날짜: 1736934600

→ ASCII: ABC
→ 문자: 65 66 67

ASCII 코드표 — 클릭하면 입력란에 추가

DecHex약어설명
DecHex문자
DecHex문자

→ 유니코드: 홍길동
→ 문자: \ud64d\uae38\ub3d9