CoT forgery 탐지를 통한 MCP 게이트웨이 보안 탐지율 33%에서 100%로 향상
Prompt injection is role confusion, and your MCP gateway can't see it
AI 요약
Context
LLM이 텍스트의 구조적 역할보다 스타일 기반으로 권한을 부여하는 Role Confusion 취약점 존재. 특히 모델의 자체 추론 과정인 Chain-of-Thought(CoT) 스타일을 모방한 Tool Response가 유입될 경우, 기존 MCP 게이트웨이의 단순 접근 제어 방식으로는 이를 식별하지 못해 Jailbreak 성공률이 0%에서 60%로 급증하는 한계 발생.
Technical Solution
- Deterministic Runtime Scanner 도입을 통한 제3자 LLM 전송 없는 실시간 텍스트 검사 체계 구축
- CoT-forgery 식별을 위한
<think>태그 및 제어 토큰 기반의 구조적 시그니처 매칭 로직 설계 - Reasoning Opener와 Safety Override 문구가 동시에 포함된 Scratchpad Prose 탐지 규칙 적용으로 오탐 방지
- HTML Entity, URL-encoding, Zero-width splitting 등 우회 공격 대응을 위한 Bounded Normalization 전처리 레이어 구현
- Raw Text와 정규화 텍스트 양측에 규칙을 동시 적용하는 단일 패스 검사 구조로 성능 최적화 및 무한 루프 방지
Impact
- PyRIT 및 spikee 데이터셋 기반 벤치마크 결과, 기존 3/9건에서 9/9건으로 공격 탐지율 100% 달성
- Benign 데이터셋 대상 False Positive 0건 유지로 탐지 정확도 확보
- CoT 모방 기반 Jailbreak 성공률을 60%에서 10% 수준으로 억제
Key Takeaway
Prompt Injection은 개별 공격 패턴의 블랙리스트 관리가 아닌 권한 혼동(Authority Confusion) 문제로 접근해야 함. 모델 내부의 신뢰 채널(Reasoning Channel)을 모방한 데이터가 컨텍스트에 직접 유입되지 않도록 모델 외부 아키텍처 수준에서 강제적인 검증 레이어를 배치하는 설계 전략이 필수적임.
실천 포인트
- 외부 Tool Response가 모델의 CoT 스타일(예: <think>, 내부 추론 태그)을 모방하는지 확인하는 검증 로직 추가 - 정규식 기반 탐지 시 Unicode Normalization(NFKC) 및 Invisible Character 제거 전처리를 반드시 선행 - Semantic Classifier 도입 전, 성능과 프라이버시 확보를 위해 Deterministic Pattern Matching 레이어를 우선 배치 - 모델이 신뢰하는 특수 토큰이나 시스템 프롬프트 형식이 Tool 출력값에 포함되어 있는지 상시 모니터링