Google Cloud에서 원격 MCP 서버를 안전하게 보호하는 방법
Lanre Ogunmola
Cloud Security Architect
Biodun Awojobi
Head of Customer Engineering, Cloud Security Architecture
해당 블로그의 원문은 2025년 9월 18일 Google Cloud 블로그(영문)에 게재되었습니다.
기업들이 AI 모델의 기능을 외부 도구, 데이터베이스 및 API와 더 잘 통합하기 위해 모델 컨텍스트 프로토콜(MCP) 채택을 늘림에 따라, 보안 MCP 배포를 보장하는 것이 더욱 중요해지고 있습니다.
MCP는 AI 시스템에 새로운 기능을 부여하지만, 툴 포이즈닝(tool poisoning), 프롬프트 삽입(prompt injection), 동적 툴 조작(dynamic tool manipulation)과 같은 새로운 위험도 초래할 수 있습니다. 이는 데이터 무단 반출(data exfiltration), ID 전복(identity subversion) 및 AI 시스템의 오용으로 이어질 수 있습니다.
MCP 배포 보안은 강력한 보안 기반에서 시작됩니다. 다음은 여러분이 인지해야 할 다섯 가지 주요 MCP 배포 위험과, Google Cloud의 중앙 집중식 프록시 아키텍처를 사용하여 이러한 위험을 어떻게 완화할 수 있는지에 대한 방법입니다.
인지해야 할 5가지 주요 MCP 배포 위험
While there are some broader risks unique to AI, these five are especially important to be aware of when designing MCP deployments:
광범위한 AI 고유의 위험들이 있지만, 이 다섯 가지는 MCP 배포를 설계할 때 특히 중요합니다.
-
권한 없는 도구 노출 (Unauthorized Tool Exposure): 잘못 구성된 MCP 매니페스트는 무단 개인이나 에이전트가 내부 관리 기능과 같은 민감한 도구에 접근할 수 있는 취약점을 만들 수 있습니다.
-
세션 하이재킹 (Session Hijacking): 공격자가 합법적인 사용자의 세션 ID를 훔쳐 그들을 사칭할 수 있습니다. 이를 통해 공격자는 무단 API 호출을 직접 수행하거나, 상태 저장(stateful) 시스템에서 악성 페이로드를 공유 데이터 큐에 삽입하여 피해자의 활성 세션으로 전달할 수 있습니다.
-
도구 섀도잉 및 섀도 MCP (Tool Shadowing and Shadow MCP): 악의적인 행위자가 합법적인 서비스를 모방하는 불법 MCP 도구를 배포할 수 있습니다. 이 기만적인 행위는 AI 에이전트와 인간 직원 모두를 속여 해당 도구가 진짜라고 믿게 하고 해로운 도구와 상호 작용하도록 유도할 수 있습니다.
-
민감 데이터 노출 및 토큰 도난 (Sensitive Data Exposure and Token Theft): 부적절하게 구성된 환경이나 부적절한 데이터 처리 관행은 API 키, 자격 증명, 토큰 및 개인 식별 정보(PII)와 같은 민감한 정보의 우발적인 노출로 이어질 수 있습니다. 공격자는 노출된 자격 증명을 악용하여 회사 리소스에 무단 접근할 수 있으며, 이는 중대한 데이터 유출로 이어질 수 있습니다.
-
인증 우회 (Authentication Bypass): 약하거나, 잘못 구성되었거나, 부적절하게 시행되는 인증 메커니즘은 공격자에 의해 악용되어 보안 통제를 우회하게 할 수 있으며, 이로써 합법적인 사용자 및 신뢰할 수 있는 엔티티를 성공적으로 사칭하여 무단 접근을 얻을 수 있습니다.
중앙 집중식 MCP 프록시 아키텍처의 이점
MCP 배포의 핵심 위험들을 확장 가능하게 다루기 위해, 클라이언트와 MCP 서버 간의 모든 통신에서 보안 중개자 역할을 하는 중앙 집중식 MCP 프록시 패턴을 권장합니다.
Cloud Run, Apigee, 또는 Google Kubernetes Engine(GKE)을 기반으로 구축된 이 지능형 프록시는 모든 도구 호출을 가로채서 조직의 보안 정책을 시행하고 광범위한 모니터링을 제공합니다. 이 프록시는 중앙 집중식 보안 시행 지점 역할을 함으로써, 개별 원격 MCP 서버를 수정할 필요 없이 다음과 같은 중요한 위험 관리 기능을 제공합니다.
-
일관된 접근 제어: 권한 부여 서버 역할을 하여 일관된 인증 및 권한 부여를 적용합니다.
-
고급 트래픽 관리: 모든 트래픽 흐름을 통제합니다.
-
감사 로깅: 모든 활동을 기록하여 투명성을 확보합니다.
-
시크릿 스캐닝 및 리소스 제한: 민감 정보 노출을 방지하고 서비스 남용을 통제합니다.
-
실시간 위협 탐지: 공격을 즉시 식별하고 대응합니다.
중앙 집중화 없이 MCP 서버를 배포하는 조직은 다음과 같은 문제에 직면합니다.
-
파편화된 인증 (Fragmented authentication): 각 MCP 서버가 자체 정책을 시행하여 일관성 문제가 발생합니다.
-
운영 오버헤드 (Operational overhead): 새로운 엔드포인트로 에이전트를 업데이트하는 작업이 광범위하고 오류 발생 가능성이 높습니다.
-
보안 사각지대 (Security blind spot): 분산된 MCP 서버 전반의 상태, 사용량 및 이상 징후에 대한 가시성이 제한됩니다.
-
확대된 공격 표면 (Expended attack surface): 프롬프트 삽입, 툴 포이즈닝과 같은 취약점과 모니터링되지 않는 트래픽 흐름에 노출됩니다.
Google Cloud의 통합 MCP 프록시는 다음과 같은 기능을 통해 이러한 문제를 해결합니다.
-
단일 관리 진입점: 모든 MCP 요청 및 응답에 대해 조직의 보안 정책을 단일, 관리되는 진입점에서 시행합니다.
-
일관된 인증 및 권한 부여: Google Identity Platform을 사용하여 일관되게 인증 및 권한을 부여합니다.
-
중앙 집중식 관찰 가능성: Cloud Logging 및 Security Command Center를 통해 가시성을 중앙 집중화합니다.
-
표준화된 위협 보호: Google의 보안 AI 에이전트 가이드 및 OWASP의 Agentic AI 애플리케이션 지침에 맞춰 위협에 대한 보호를 표준화합니다.
아키텍처 개요
다음 참조 아키텍처는 Google Cloud 서비스가 MCP 클라이언트 요청을 엔드투엔드(end-to-end)로 보호하는 방법을 보여줍니다.


Google Cloud의 계층화된 보안 제어
주요 구성 요소
-
Global Load Balancing: 모든 MCP 클라이언트 트래픽에 대한 단일 진입점을 제공하여 트래픽을 분산하고 보안 정책을 일관되게 적용합니다.
-
Certificate Manager: TLS 인증서를 중앙에서 관리하여 클라이언트-프록시 간의 안전한 통신(암호화)을 보장합니다.
-
Cloud Armor: 일반적인 OWASP 웹 위협(WAF) 및 DDoS 공격으로부터 보호 기능을 제공합니다.
-
MCP Proxy: 인증, 권한 부여, 요청 검사 및 라우팅을 위한 중앙 집중식 시행 계층 역할을 수행합니다.
-
Google Identity Platform: ID를 검증하고 OAuth 2.0 토큰을 발급하여 일관된 인증 및 권한 부여를 처리합니다.
-
Model Armor: 모델 프롬프트 및 응답을 스크린하여 프롬프트 삽입/탈옥(jailbreak) 탐지 및 민감 데이터를 차단하며 책임 있는 AI 관행을 지원합니다.
-
Secret Manager: API 키, 데이터베이스 자격 증명 및 민감한 구성 값과 같은 시크릿(secrets)을 안전하게 저장하고 관리합니다.
-
Artifact Registry: MCP 서버 이미지가 스캔, 검증되었는지 확인하며, 고객 관리 암호화 키(CMEK)로 미사용 시 암호화되도록 보장합니다.
-
Internal Load Balancing: 검증된(sanitized) 트래픽을 적절한 MCP 서버로 내부적으로 라우팅합니다.
-
Cloud Logging & Security Command Center 가시성(Visibility), 이상 징후 탐지(Anomaly detection) 및 규정 준수 보고서를 위한 중앙 집중식 플랫폼을 제공합니다.
네트워크 수준 보안 제어
이 계층은 클라우드 네트워크 내에서 MCP 서버를 격리하고 보호합니다.
네트워크 수준 보안 제어
-
네트워크 세그먼트화: VPC(Virtual Private Cloud), Cloud Run ingress 및 Cloud Run egress 옵션을 사용하여 MCP 도구 서버, 로드 밸런서, 데이터베이스 등의 리소스를 격리합니다. 이는 공격자가 네트워크 내부를 이동하는 위험(lateral movement risk)을 줄이는 데 필수적입니다
-
웹 공격 및 DDoS 보호: Global Load Balancer와 Cloud Armor를 함께 사용하여 악성 트래픽을 차단하고, IP 허용 및 거부 목록을 적용하며, DDoS 공격에 대한 복원력을 제공합니다.
-
고급 트래픽 관리: Internal Application Load Balancer (ALB)의 고급 트래픽 관리 기능을 사용하여 MCP 도구 서버에 대한 맞춤형 도메인 경로 일치를 제공합니다. ALB는 들어오는 요청의 호스트와 경로를 검사하여 요청을 해당 MCP 서버의 적절한 백엔드 서비스 또는 인스턴스로 지능적으로 전달합니다.
백엔드 서비스는 Google Cloud(VM, Cloud Run, GKE), 원격 네트워크(하이브리드 NEG 사용), 또는 인터넷(인터넷 NEG 사용)에 배포된 MCP 서버 등 다양한 백엔드 유형을 지원합니다.


고급 트래픽 관리(Advanced Traffic Management)는 Internal Application Load Balancer (ALB)를 활용하여 MCP(Model Context Protocol) 도구 서버에 대한 맞춤형 도메인 경로 일치 기능을 제공하는 데 도움을 줍니다.
로드 밸런서 트래픽 관리 구성
인증 및 권한 부여
MCP 프록시는 MCP 권한 부여 서비스(MAS) 역할을 하며, 외부 ID 공급자(Identity Provider)(예: Google Identity Platform, Okta, Entra ID)와 통합됩니다. 이를 통해 복잡한 ID 시스템을 구축하고 유지 관리할 필요 없이 MCP 서버에 대한 안전한 액세스가 가능해집니다.
이러한 확장성이 뛰어나고 신뢰할 수 있는 인증 솔루션은 사용자가 자신의 기존 ID 플랫폼을 통해 안전하게 인증할 수 있도록 돕습니다. 또한, Cloud Identity and Access Management (IAM)는 역할 기반 액세스(role-based access) 시행을 가능하게 하며, 클라우드 리소스에 대한 접근을 제한할 수 있습니다.


MCP 인증 및 권한 부여 흐름
Model Armor를 통한 인라인(In-line) MCP 클라이언트 프롬프트 및 응답 보호
프록시는 Model Armor를 활용하여 다음과 같은 런타임 위협에 대한 강력하고 실시간적인 보호를 제공합니다.
-
프롬프트 삽입(prompt injection)
-
탈옥(jailbreaking)
-
툴 포이즈닝(tool poisoning)
-
동적 툴 조작(dynamic tool manipulation)
-
민감 데이터 유출(sensitive data leakage)
Model Armor 템플릿을 사용하여 MCP 클라이언트 프롬프트가 애플리케이션 로드 밸런서로 전달되기 전에 Model Armor에 의해 검토(scrutinized)되고 무결화(sanitized)되도록 구성할 수 있습니다. 이 프로세스는 무결화된(sanitized) 프롬프트만이 MCP 도구 서버에 도달하도록 보장하여, 결과적으로 의도하지 않은 행동(unintended actions)을 방지합니다.


Model Armor를 활용한 인라인(In-line) 보호
Model Armor template.
로깅 및 감사
MCP 클라이언트가 수행하는 모든 활동은 프록시에 의해 Cloud Logging에 기록됩니다. 여기에는 특정 도구 액세스, 메모리 위치 수정 또는 쓰기, 통신 시작 또는 수신과 같은 작업이 포함됩니다. 로그에는 타임스탬프, 에이전트 ID, 세션 ID, 페이로드, 그리고 입/출력 서명 지문(signature fingerprints)이 포함됩니다.
이러한 로그의 포괄적인 특성은 상세한 메타데이터와 결합되어, 관리자 및 감사자가 클라이언트 활동을 재구성하고, 이상 징후를 식별하며, 보안 정책을 효과적으로 시행하는 데 필요한 정보를 수집하는 데 도움을 줄 수 있습니다.
추가 보안 제어
계층화된 보안 제어 외에도, 강력한 심층 방어(defense-in-depth) 전략은 위협을 식별하고 완화하기 위한 지속적인 모니터링 및 선제적 조치를 요구합니다.
민감한 데이터 보호(SDP)를 통한 시크릿 스캐닝
Sensitive Data Protection (SDP) 검색 기능은 Cloud Run의 MCP 도구 서버를 주기적으로 스캔하여 하드코딩된 시크릿(secrets) 탐지를 구체적으로 목표로 합니다. 이 선제적 조치에는 서버의 빌드 및 런타임 환경 변수에 대한 정기적인 스캔이 포함됩니다.
이러한 스캔은 민감한 정보(API 키, 데이터베이스 자격 증명, 액세스 토큰 포함)가 코드나 구성에 실수로 직접 삽입된 경우와 같은 안전하지 않은 코딩 관행 위험을 탐지합니다.
취약점 스캐닝
Artifact Registry에 저장된 MCP 서버 이미지는 배포되기 전에 취약점 스캔을 거칩니다. 새로운 이미지가 Artifact Registry에 푸시되면, 알려진 취약점에 대해 자동으로 스캔되어 잠재적인 약점에 대한 실행 가능한 통찰력을 제공합니다.
환경을 근본적으로 보호하는 조치의 일환으로, 심각한 취약점이 있는 이미지의 배포를 차단하는 정책을 시행할 수 있습니다.
위협 탐지
Security Command Center (SCC)는 AI 보호(AI protection) 기능을 제공하여 위협을 탐지하고 AI 자산 인벤토리의 위험을 완화하여 AI 워크로드의 보안 태세(security posture)를 관리하는 데 도움을 줍니다. 여기에는 탐지, 조사 및 대응을 통해 MCP 배포에 대한 위협을 관리하는 것이 포함됩니다.
SCC는 또한 무단 액세스 및 데이터 무단 반출 시도를 식별하고, 실시간 알림과 해결 권장 사항을 제공합니다.
AI 보호는 위협을 탐지하고 AI 자산 인벤토리의 위험을 완화하여 AI 워크로드의 보안 태세를 관리하는 데 도움을 줍니다.
모든 것을 통합
이러한 Google Cloud 보안 서비스를 전략적으로 구현함으로써, 여러분은 Model Context Protocol 원격 서버를 위한 안전하고 복원력 있는 환경을 구축할 수 있습니다. 인증, 네트워크 보안, 데이터 보호, 지속적인 모니터링을 우선시하면 AI 모델과 그들이 처리하는 민감한 정보의 무결성 및 기밀성을 보장할 수 있습니다.
이러한 통합된 제로 트러스트(Zero Trust) 접근 방식은 새롭게 등장하는 AI 관련 위험을 완화하는 데 도움을 줄 수 있을 뿐만 아니라, AI 기반 애플리케이션 진화를 위한 확장 가능하고 미래 보장적인 기반을 제공합니다.
AI 워크로드 보안에 대해 더 자세히 알아보려면, 저희 문서를 참조해 주십시오