해커, 새로운 중간자 공격으로 Claude Code MCP 트래픽을 통해 OAuth 토큰 탈취
출처: Dev.to
![]()
Claude Code OAuth 토큰 하이재킹 공격: 해커가 MCP 트래픽을 이용해 OAuth 토큰을 탈취하는 방법
Anthropic의 Claude Code 생태계를 노린 새로운 공격 체인이 Mitiga에 의해 밝혀졌으며, 해커가 Model Context Protocol (MCP) 트래픽을 이용해 OAuth 인증 토큰을 가로채는 방식을 보여줍니다. Claude Code OAuth 토큰 하이재킹 공격은 MCP에 대한 중간자 공격(MitM) 방식을 사용해 불안전한 로컬 설정 파일(~/.claude.json)에서 토큰을 탈취합니다. Claude Code에 의존하는 모든 엔터프라이즈 SaaS에 대해 이는 추상적인 문제가 아니라, 탈취된 토큰이 클라우드 환경에 대한 지속적이고 무단 접근을 의미합니다. 이 글에서는 공격의 기술적 메커니즘, OAuth 토큰 탈취가 왜 위험한지, 그리고 개발자와 보안 담당자가 지금 바로 환경을 잠그기 위해 취할 수 있는 실질적인 조치를 설명합니다.
Claude Code OAuth 토큰 하이재킹 공격이란?
Claude Code OAuth 토큰 하이재킹 공격은 Anthropic의 Claude Code 개발자 생태계를 목표로 하는 맞춤형 중간자 공격입니다. 공격자는 MCP 트래픽—Claude Code가 코드 보조 세션의 컨텍스트를 관리하기 위해 사용하는 내부 프로토콜—을 가로채어 Claude 도구와 연결된 엔터프라이즈 SaaS 서비스 간에 교환되는 민감한 OAuth 인증 토큰을 포착합니다. 취약점은 토큰이 최소한의 보호만으로 평문 구성 파일(~/.claude.json)에 로컬에 저장된다는 점입니다. 이 설계를 악용해 공격자는 토큰을 캡처·재생·영구 보관함으로써 표준 세션 타임아웃이 지나도 비즈니스에 중요한 SaaS 플랫폼에 은밀하고 지속적인 접근 권한을 얻게 됩니다.
Mitiga 보고서에 따르면, 이 공격은 트래픽을 가로챌 수 있는 네트워크 위치(전통적인 MitM)가 필요하지만 보상은 매우 큽니다. 일단 내부에 침투하면 해커는 MCP 세션 데이터 또는 직접적인 구성 파일 접근을 통해 유효한 OAuth 토큰을 탈취하고, 이를 정당한 시스템 사용자처럼 사용할 수 있습니다.
검색용 직접 답변:
Claude Code OAuth 토큰 하이재킹 공격은 공격자가 Model Context Protocol 트래픽을 가로채거나 로컬 Claude Code 구성 파일에 접근해 OAuth 인증 토큰을 탈취함으로써 엔터프라이즈 SaaS 플랫폼에 지속적이고 무단 접근을 얻는 MitM 기법입니다.
Model Context Protocol (MCP) 취약점이 어떻게 이 공격을 가능하게 하는가?
Model Context Protocol (MCP)은 Claude Code 운영의 핵심입니다. MCP는 개발자 시스템과 Anthropic 백엔드, 그리고 로컬 도구와 서드파티 SaaS 통합 사이에 컨텍스트, 코드 제안, 인증 정보를 중계합니다. 또한 OAuth 토큰 및 기타 접근 자격 증명이 MCP를 통해 전달되며—때로는 평문이거나 최소한의 로컬 난독화만 적용됩니다.
두 가지 약점이 악용을 가능하게 합니다:
1. MCP 트래픽 전반에 걸친 암호화 및 검증 부족
MCP 세션은 네트워크에서 중간자 역량을 가진 어떤 행위자라도 엿볼 수 있습니다. MCP 패킷에 포함된 토큰은 항상 강력하게 암호화되거나 서명되지 않으며, 일부 코드 경로에서는 베어러 토큰 형태로 전송됩니다. 즉, 적절한 위치에 있는 공격자는 트래픽에서 유효한 OAuth 토큰을 바로 추출할 수 있습니다.
2. ~/.claude.json의 약한 로컬 저장
Claude Code는 토큰과 세션 상태를 로컬 파일(~/.claude.json)에 캐시합니다. 기본적으로 이 파일은 제한적인 권한 설정이 없으며, 저장 시 암호화도 적용되지 않습니다. 따라서 악성코드나 로컬 공격자가 코드 실행 권한만 있으면 파일을 읽고 토큰을 탈취할 수 있습니다. 더욱이 탈취된 토큰은 즉시 무효화되지 않을 수 있습니다.
공격 흐름 (단계별)
1. 공격자가 동일 네트워크에 위치하거나 개발자 워크스테이션을 장악한다.
2. 공격자는 코드 보조 요청 중에 전송되는 MCP 트래픽을 가로챈다.
3. 토큰을 실시간 네트워크 패킷 또는 로컬 ~./claude.json 파일에서 추출한다.
4. 공격자는 탈취한 OAuth 토큰을 목표 엔터프라이즈 SaaS 플랫폼에 재생하거나 제출한다.
5. 토큰이 명시적으로 폐기될 때까지 지속적인 접근 권한을 유지한다.
Enter fullscreen mode
Exit fullscreen mode
MCP가 도구의 핵심 아키텍처에 포함되고, 그 트래픽에 고가치 세션 데이터가 포함되어 있기 때문에 하나의 엔드포인트가 손상되면 기업 전체에 영향을 미칩니다.
[[DIAGRAM: MCP 트래픽 가로채기 또는 로컬 구성 파일 접근에서 OAuth 토큰 탈취 및 SaaS 지속성까지의 공격 흐름.]]
직접 답변:
Claude Code의 Model Context Protocol (MCP) 취약점은 공격자가 MCP 트래픽을 가로채거나 보호되지 않은 로컬 구성 파일(~/.claude.json)을 스크랩하도록 함으로써 OAuth 인증 토큰을 손쉽게 탈취하고 재사용해 무단 SaaS 접근을 가능하게 합니다.
OAuth 토큰 탈취가 엔터프라이즈 SaaS 플랫폼에 미치는 위험은?
OAuth 토큰은 민감한 SaaS API와 리소스에 대한 위임된 접근 권한을 나타내는 인증 아티팩트입니다. 하나를 탈취한다는 것은 원래 사용자의 권한을 그대로 물려받는 것이며, 종종 탐지되지 않습니다. 엔터프라이즈 환경에서는 이는 거의 전체 시스템이 장악당하는 수준에 해당합니다.
세 가지 주요 위험:
1. 지속적인 무단 접근
개발자 도구에 발급되는 많은 OAuth 토큰은 광범위한 스코프와 긴 수명을 가집니다. 탈취된 토큰은 특정 디바이스 지문에 묶여 있지 않은 경우 세션 종료 이후에도 리소스에 접근할 수 있습니다.
2. 권한 상승 및 횡방향 이동
하나의 토큰을
