MCP · 2026년 8월 6일 ★★★

테라폼 MCP 서버 취약점 3건 중 하나는 CVSS 10.0이에요 — 앞사람 토큰으로 뒷사람 요청이 나갔어요

해시코프가 7월 28일 테라폼 MCP 서버 취약점 3건을 공개했어요 — 무상태 HTTP로 띄우면 앞사람이 건넨 테라폼 토큰이 뒷사람 요청에 그대로 쓰였고(CVSS 10.0), 기본인 상태 유지 모드에서도 남의 세션 ID만 손에 넣으면 그 사람 자격으로 도구를 부를 수 있었어요(8.9). 고친 1.1.0은 2주 앞선 7월 14일에 이미 나왔지만 깃허브 릴리스 본문이 비어 있어 CHANGELOG를 열어야 보안 수정인 걸 알 수 있어요. 게다가 깃허브 보안 공지 3건에는 패키지 생태계가 안 붙어 있어서 Dependabot 경보가 아예 뜨지 않아요.

용어 풀이
MCP
AI 모델을 외부 도구·데이터에 붙이는 연결 규약
CVSS
취약점 심각도를 0~10으로 매기는 표준 점수
stdio
표준 입출력으로 주고받는 방식. MCP에서는 내 컴퓨터에서 서버를 직접 띄워 붙는 모드
세션 ID
접속 하나를 구분하려고 서버가 발급하는 식별자
Dependabot
깃허브가 의존성의 알려진 취약점을 찾아 알려 주는 기능
운영자 인사이트

내 컴퓨터에서 stdio로 붙여 쓴다면 이번 3건은 해당 없고, 위험한 쪽은 팀이 같이 쓰라고 원격 HTTP로 올려 둔 서버예요. 원인도 테라폼만의 실수가 아니라 '세션 ID로 사용자를 가른다'는 설계인데, MCP 보안 권고는 세션을 인증에 쓰지 말고 세션 ID를 사용자 ID와 묶으라고 이미 못 박아 뒀어요 — 사내 MCP 서버를 직접 만들어 붙였다면 같은 자리부터 열어 보세요.

여러 관점으로 보기
  • 고친 시점 수정본 1.1.0은 공지보다 2주 이른 7월 14일에 나왔고, 변경 기록에 '다른 고객 토큰 재사용 수정'과 '무상태 HTTP에서 클라이언트가 준 주소 사용 금지'가 적혀 있어요. GitHub
  • 심각도·원인 분류 가장 높은 CVE-2026-16498은 CVSS 10.0에 '데이터가 엉뚱한 세션으로 새는' 유형(CWE-488)으로 분류됐고, 0.3.0부터 1.1.0 이전까지가 영향 범위예요. NVD
  • 경보가 안 뜨는 이유 깃허브 보안 공지 3건은 모두 '미검토' 상태에 패키지 생태계가 안 붙어 있어서, 깃허브가 '이 공지는 Dependabot 경보를 지원하지 않는다'고 직접 적어 놨어요. GitHub Advisory Database
  • 다른 MCP 서버에도 해당하는 함정 MCP 보안 권고는 '서버는 세션을 인증에 쓰면 안 된다'고 못 박고, 세션 ID를 사용자 ID와 묶어 <user_id>:<session_id> 형태로 쓰라고 권해요. Model Context Protocol
  • 악용 여부 8월 5일 기준 실제 악용 보고는 없고 미국 사이버안보국의 '악용 확인' 목록에도 안 올라 있어요. 밑에 깔린 MCP 라이브러리가 무상태 모드에서 고유 세션 식별자를 안 주는 게 10.0짜리의 뿌리예요. The Hacker News

원본 보기 (hn:mcp-server)