Skip to content

Latest commit

 

History

History
223 lines (162 loc) · 13.2 KB

File metadata and controls

223 lines (162 loc) · 13.2 KB

MCP 보안 모범 사례 - 2026년 2월 업데이트

중요: 이 문서는 최신 MCP 사양 2025-11-25 보안 요구 사항과 공식 MCP 보안 모범 사례를 반영합니다. 가장 최신 지침을 위해 항상 현재 사양을 참조하십시오.

🏔️ 실습 보안 교육

실질적인 구현 경험을 위해, Azure에서 MCP 서버를 보호하는 종합 가이드 탐험인 **MCP 보안 정상 회의 워크숍(Sherpa)**를 권장합니다. 이 워크숍은 "취약 → 악용 → 수정 → 검증" 방법론으로 OWASP MCP 상위 10개 위험을 모두 다룹니다.

이 문서의 모든 실천 사항은 Azure 특정 구현 지침을 위한 **OWASP MCP Azure 보안 가이드**와 일치합니다.

MCP 구현을 위한 필수 보안 실천사항

Model Context Protocol은 전통적인 소프트웨어 보안을 넘어서는 고유한 보안 과제를 제시합니다. 이 실천사항은 기본 보안 요건과 프롬프트 주입, 도구 중독, 세션 탈취, 혼동된 대리인 문제, 토큰 전달 취약점 등 MCP 고유 위협을 모두 다룹니다.

필수 보안 요구사항

MCP 사양에서 제시하는 중요 요구사항:

필수 보안 요구사항

MCP 사양에서 제시하는 중요 요구사항:

금지됨: MCP 서버는 명시적으로 MCP 서버용으로 발급되지 않은 토큰을 절대 수락해서는 안 됩니다

필수: 권한 부여를 구현하는 MCP 서버는 모든 인바운드 요청을 반드시 검증해야 합니다

금지됨: MCP 서버는 인증을 위해 세션을 사용해서는 안 됩니다

필수: 정적 클라이언트 ID를 사용하는 MCP 프록시 서버는 동적으로 등록된 각 클라이언트에 대해 사용자 동의를 받아야 합니다


1. 토큰 보안 및 인증

인증 및 권한 부여 제어:

  • 엄격한 권한 검토: 의도된 사용자와 클라이언트만 리소스에 접근할 수 있도록 MCP 서버 권한 부여 로직을 종합 감사
  • 외부 아이덴티티 공급자 통합: 맞춤 인증 구현 대신 Microsoft Entra ID와 같은 기존 아이덴티티 공급자 사용
  • 토큰 대상 검증: 토큰이 명시적으로 귀하의 MCP 서버를 위해 발급되었음을 항상 확인 - 상위 토큰은 절대 수락하지 말 것
  • 적절한 토큰 수명 관리: 안전한 토큰 회전, 만료 정책 구현 및 토큰 재사용 공격 방지

보호된 토큰 저장:

  • 모든 비밀은 Azure Key Vault 또는 유사한 안전한 자격 증명 저장소 사용
  • 대기 및 전송 중인 토큰 암호화 구현
  • 정기적인 자격 증명 회전과 무단 접근 모니터링

2. 세션 관리 및 전송 보안

안전한 세션 관행:

  • 암호학적으로 안전한 세션 ID: 보안 무작위 수 생성기로 생성된 비결정적 세션 ID 사용
  • 사용자별 바인딩: <user_id>:<session_id> 형식 등으로 세션 ID를 사용자 신원에 바인딩해 교차 사용자 세션 남용 방지
  • 세션 수명 주기 관리: 적절한 만료, 회전 및 무효화 구현으로 취약점 최소화
  • HTTPS/TLS 적용: 세션 ID 가로채기를 막기 위한 모든 통신에 HTTPS 필수

전송 계층 보안:

  • 가능한 경우 TLS 1.3 구성 및 적절한 인증서 관리
  • 중요 연결에 인증서 고정(pin) 구현
  • 인증서 정기 회전 및 유효성 검증

3. AI 특화 위협 방어 🤖

프롬프트 주입 방어:

  • Microsoft 프롬프트 실드: 악성 명령에 대한 고급 탐지 및 필터링을 위한 AI 프롬프트 실드 배포
  • 입력 정제: 모든 입력을 검증 및 정제하여 주입 공격 및 혼동된 대리인 문제 방지
  • 콘텐츠 경계: 신뢰된 명령과 외부 콘텐츠를 구분하기 위해 구분자 및 데이터 마킹 시스템 사용

도구 중독 방지:

  • 도구 메타데이터 검증: 도구 정의의 무결성 검사 및 예상치 못한 변경 사항 모니터링
  • 동적 도구 모니터링: 런타임 동작 모니터링 및 예상치 못한 실행 패턴에 대한 경고 설정
  • 승인 워크플로: 도구 수정 및 기능 변경에 대한 명시적 사용자 승인 요구

4. 접근 제어 및 권한

최소 권한 원칙:

  • MCP 서버에 의도된 기능 수행에 필요한 최소 권한만 부여
  • 세분화된 권한을 위한 역할 기반 접근 제어(RBAC) 구현
  • 권한 검토를 정기적으로 수행하고 권한 상승 모니터링

런타임 권한 제어:

  • 자원 고갈 공격 방지를 위한 리소스 제한 적용
  • 도구 실행 환경을 위한 컨테이너 격리 사용
  • 관리 기능에 대한 적시 접근 구현

5. 콘텐츠 안전 및 모니터링

콘텐츠 안전 구현:

  • Azure 콘텐츠 안전 통합: 유해 콘텐츠, 탈출 시도, 정책 위반 탐지를 위해 Azure 콘텐츠 안전 사용
  • 행동 분석: MCP 서버 및 도구 실행 중 이상 감지를 위한 런타임 행동 모니터링 구현
  • 종합 로그 기록: 모든 인증 시도, 도구 호출, 보안 이벤트를 보안 및 변조 방지 저장장치에 기록

지속적 모니터링:

  • 의심스러운 패턴 및 무단 접근 시도에 대한 실시간 경고
  • 중앙 집중식 보안 이벤트 관리를 위한 SIEM 시스템 통합
  • MCP 구현에 대한 정기 보안 감사 및 침투 테스트

6. 공급망 보안

구성요소 검증:

  • 종속성 스캔: 모든 소프트웨어 종속성 및 AI 구성요소에 대한 자동 취약점 스캔
  • 출처 검증: 모델, 데이터 소스, 외부 서비스의 출처, 라이선스, 무결성 확인
  • 서명된 패키지: 암호학적 서명이 된 패키지 사용 및 배포 전 서명 검증

안전한 개발 파이프라인:

  • GitHub 고급 보안: 비밀 스캔, 종속성 분석, CodeQL 정적 분석 구현
  • CI/CD 보안: 자동 배포 파이프라인 전반에 걸쳐 보안 검증 통합
  • 아티팩트 무결성: 배포된 아티팩트 및 구성에 대한 암호학적 검증 구현

7. OAuth 보안 및 혼동 대리인 방지

OAuth 2.1 구현:

  • PKCE 구현: 모든 권한 부여 요청에 대해 코드 교환을 위한 증명 키(PKCE) 사용
  • 명시적 동의: 혼동 대리인 공격 방지를 위해 동적으로 등록된 각 클라이언트에 대한 사용자 동의 획득
  • 리디렉트 URI 검증: 리디렉트 URI 및 클라이언트 식별자에 대한 엄격한 검증 구현

프록시 보안:

  • 정적 클라이언트 ID 악용을 통한 권한 건너뛰기 방지
  • 타사 API 접근을 위한 적절한 동의 워크플로 구현
  • 권한 코드 탈취 및 무단 API 접근 모니터링

8. 사고 대응 및 복구

신속 대응 역량:

  • 자동화된 대응: 자격 증명 회전 및 위협 차단을 위한 자동 시스템 구현
  • 롤백 절차: 알려진 정상 구성 및 구성 요소로 빠른 복귀 가능
  • 포렌식 역량: 사고 조사를 위한 상세 감사 추적 및 로그 기록

커뮤니케이션 및 조율:

  • 보안 사고에 대한 명확한 에스컬레이션 절차
  • 조직 사고 대응 팀과의 통합
  • 정기 보안 사고 시뮬레이션 및 테이블탑 연습

9. 준수 및 거버넌스

규제 준수:

  • MCP 구현이 산업별 요구사항(GDPR, HIPAA, SOC 2)을 충족하는지 확인
  • AI 데이터 처리에 대한 데이터 분류 및 개인정보 보호 통제 구현
  • 준수 감사용 종합 문서 유지

변경 관리:

  • 모든 MCP 시스템 수정에 대한 공식 보안 검토 절차
  • 구성 변경에 대한 버전 관리 및 승인 워크플로
  • 정기적인 준수 평가 및 격차 분석

10. 고급 보안 제어

제로 트러스트 아키텍처:

  • 절대 신뢰하지 말고 항상 검증하라: 사용자, 디바이스, 연결에 대한 지속적 검증
  • 마이크로 세분화: 개별 MCP 구성요소 격리를 위한 세분화된 네트워크 제어
  • 조건부 접근: 현재 상황 및 행동에 맞춰 조정되는 위험 기반 접근 제어

런타임 애플리케이션 보호:

  • 런타임 애플리케이션 셀프 프로텍션(RASP): 실시간 위협 탐지를 위한 RASP 기법 배포
  • 애플리케이션 성능 모니터링: 공격 징후를 나타낼 수 있는 성능 이상 모니터링
  • 동적 보안 정책: 현재 위협 환경에 따른 보안 정책 동적 조정

11. 마이크로소프트 보안 생태계 통합

종합 마이크로소프트 보안:

  • Microsoft Defender for Cloud: MCP 워크로드를 위한 클라우드 보안 태세 관리
  • Azure Sentinel: 고급 위협 탐지를 위한 클라우드 네이티브 SIEM 및 SOAR 기능
  • Microsoft Purview: AI 워크플로 및 데이터 소스에 대한 데이터 거버넌스 및 준수

아이덴티티 및 액세스 관리:

  • Microsoft Entra ID: 조건부 접근 정책을 지원하는 엔터프라이즈 아이덴티티 관리
  • 권한 있는 아이덴티티 관리(PIM): 관리 기능에 대한 적시 접근 및 승인 워크플로
  • 아이덴티티 보호: 위험 기반 조건부 접근 및 자동 위협 대응

12. 지속적인 보안 진화

최신 상태 유지:

  • 사양 모니터링: MCP 사양 업데이트 및 보안 지침 변경 정기 검토
  • 위협 인텔리전스: AI 특화 위협 피드 및 침해 지표 통합
  • 보안 커뮤니티 참여: MCP 보안 커뮤니티 및 취약점 공개 프로그램 활발 참여

적응형 보안:

  • 머신러닝 보안: 새로운 공격 패턴 식별을 위한 ML 기반 이상 탐지 사용
  • 예측 보안 분석: 선제적 위협 식별을 위한 예측 모델 구현
  • 보안 자동화: 위협 인텔리전스 및 사양 변경에 기반한 자동 보안 정책 업데이트

중요 보안 리소스

공식 MCP 문서

OWASP MCP 보안 리소스

마이크로소프트 보안 솔루션

보안 표준

구현 가이드


보안 고지: MCP 보안 모범 사례는 빠르게 진화합니다. 구현 전 항상 현재 MCP 사양공식 보안 문서를 확인하십시오.

다음 단계


면책 조항:
이 문서는 AI 번역 서비스 Co-op Translator를 사용하여 번역되었습니다. 정확성을 위해 최선을 다하고 있으나, 자동 번역은 오류나 부정확성을 포함할 수 있음을 양지하시기 바랍니다. 원본 문서는 본연의 언어로 된 문서가 권위 있는 출처로 간주되어야 합니다. 중요한 정보의 경우 전문적인 인간 번역을 권장합니다. 이 번역 사용으로 인한 오해나 잘못된 해석에 대해 당사는 책임을 지지 않습니다.