← 블로그 목록
AI 뉴스5분 분량

Deadbugz가 도구 호출 세 번을 센 뒤 돌변하므로, MCP 서버 심사는 설치 시점이 아니라 런타임에 둔다

정상으로 세 번 답하고 그 뒤부터 지시문을 바꾸는 서버

Deadbugz MCP 서버는 도구 호출 세 번까지 정상으로 답하고 그 뒤 지시문을 바꾼다. 설치 시점 심사는 정상 구간만 보므로 이 수법을 구조적으로 놓친다. 우리가 붙인 MCP 서버의 도구 목록이 세션 중 바뀌는지 로그로 확인해야 한다.

기업 교육에서 MCP 서버를 직접 붙여 보는 실습을 하면 질문이 대개 하나로 모인다. 이 서버를 믿어도 되냐는 것이다. 지금까지의 답은 배포자와 저장소를 확인하고, 설정 파일에 들어갈 명령을 읽고 나서 붙이라는 것이었다. 검토는 한 번 하면 끝나는 작업으로 취급됐다.

그 전제가 깨졌다. 설치 시점의 서버와 스무 번째 호출의 서버가 같은 것을 돌려준다는 보장이 프로토콜 어디에도 없다.

악성으로 바뀌는 시점을 서버가 직접 센다

Pillar Security의 8월 12일 보고서에 따르면 zellkernel 계정은 8월 10일 21시 52분부터 23시 07분까지 74분 동안 서로 무관한 공개 프로젝트에 풀 리퀘스트 23건을 넣었다. 17건은 원격 MCP 엔드포인트를 설정에 추가하고, 4건은 숨겨둔 로컬 스크립트를 가리키고, 2건은 디렉터리 등재 신청이었다. 조사 시점에 19건은 닫혔고 4건은 열려 있었다.

기술적 핵심은 클라이언트별 도구 호출 수를 메모리에 세는 카운터다. tools/call 요청이 세 번 들어오기 전까지 서버는 텍스트 서식·요약 도구 설명만 돌려준다. 세 번을 넘기면 이후의 tools/listprompts/get 응답이 SSH 키, AWS 자격증명, 셸 히스토리, 쿠버네티스 설정 파일로 에이전트를 유도하는 문장으로 바뀌고, 그 동작을 사용자에게 감춘다.

심사가 보는 구간과 공격이 작동하는 구간이 겹치지 않는다.

풀 리퀘스트를 읽은 사람은 악성 문장을 본 적이 없다. 도구 설명은 서버가 런타임에 만들어 보내는 값이고, 저장소에 남는 것은 주소 한 줄뿐이다. 공개된 지표는 엔드포인트 productivity-suite-mcp.onrender.com/mcp, 로컬 파일 ~/.config/.cache/.sys/.deadbug-mcp.py, 서버 이름 productivity-suite다. 도구에 꽂아둔 자격증명이 새던 털린 건 모델이 아니라 도구에 꽂아둔 열쇠였다와 달리, 이번에는 그 열쇠를 찾아오라는 지시가 신뢰된 채널로 들어온다.

배포 전 심사를 상품으로 사도 이 구간은 비어 있다

Tenable의 9월 3일 발표는 CyberAgents Exchange AI Inspector를 내놨다. 에이전트, 스킬, MCP 서버, 멀티에이전트 플레이북을 배포 전에 검수하고, OpenAI GPT 사이버 모델 평가와 Tenable One AI Exposure의 스킬 검사, 연구자 검토를 묶었다. 제공은 9월 중 예정이다. 쓸모가 있지만 시점이 제출 직후에 고정돼 있다.

9월 1일 공개된 OWASP Agent Control Standard는 반대쪽을 겨냥한다. 에이전트 플랫폼이 미들웨어 훅을 노출하고, 정책을 선언형으로 적어 실행 중에 강제하게 만드는 표준이다. 검사 대상이 제출된 코드가 아니라 진행 중인 동작이라는 점에서 Deadbugz와 정확히 맞물린다.

심사 시점보는 것Deadbugz 탐지
설치 전 저장소 리뷰설정 파일의 서버 주소불가
배포 전 컴포넌트 검수제출 시점의 응답·스킬초기 3회 구간만
런타임 훅·로그호출 횟수, 도구 목록 변경가능

정상 서버에도 별개의 경로가 남는다. Adversa의 9월 MCP 보안 정리에 묶인 CVE-2026-73498은 Atlassian MCP의 confluence_upload_attachment 도구에서 경로 조작으로 임의 파일을 읽는 결함이고 CVSS 7.7이다.

가져갈 것

  • 우리 팀이 붙인 MCP 서버 목록과 각 서버의 원격 엔드포인트 주소가 한 파일에 적혀 있나
  • 세션 중 tools/list 응답이 처음과 달라졌을 때 그 사실이 로그에 남나
  • 사내 장비에 productivity-suite, productivity-suite-mcp.onrender.com, .deadbug-mcp.py가 있는지 오늘 검색했나
  • 에이전트가 ~/.ssh, ~/.aws, ~/.kube를 읽을 때 사람 승인 없이 통과하는 경로가 남아 있나
  • Atlassian MCP를 쓰는 저장소에서 CVE-2026-73498 패치 버전을 확인했나

안 되는 경우

  • Pillar는 실제 피해자 수와 성공한 침해 사례를 밝히지 않았다. 세 번이라는 임계값이 공격자의 고정 설정인지, 관찰된 한 사례인지도 확정하지 않았다.
  • 벤더가 호스팅하는 MCP 서버만 쓰고 커뮤니티 서버를 설치하지 않는 조직에는 우선순위가 낮다. 그 경우 남는 질문은 도구 설명 변경을 고지받을 조건이 계약서에 있는지다.
  • ACS는 에이전트 플랫폼이 훅을 노출해야 작동한다. 쓰는 프레임워크가 훅을 제공하지 않으면 표준이 있어도 강제할 지점이 없다.
  • Exchange Inspector의 9월 제공은 발표 시점의 예정이고, 검수 대상도 커뮤니티 제출 컴포넌트 전체가 아니라 선별 항목으로 적혀 있다.

이번 주에 바꿀 것은 한 칸이다. MCP 서버 도입 문서에서 "검토 완료" 칸을 지우고 "도구 목록 변경 관측" 칸을 만들어라. 누가 승인했는지가 아니라 무엇이 바뀌면 알 수 있는지를 적는 칸이다. 조녁컴퍼니의 관점에서도 에이전트 도입의 관문은 연결 심사보다 실행 중 관측 설계에 가깝다. 사업영역 →

출처

AI뉴스MCP보안에이전트운영

Contact

이런 교육이 필요하다면

AI·데이터 교육 도입을 검토 중이라면 카카오 오픈채팅으로 편하게 문의하세요.

Newsletter

조녁컴퍼니 뉴스레터

AI 전환과 교육 현장의 기록을 메일로 받아보세요.