권한 검증 누락으로 인한 Instagram 계정 2만 개 탈취 및 Confused Deputy 문제 분석
AI agents are a confused deputy with the keys to your kingdom
AI 요약
Context
LLM Agent가 사용자의 자연어 요청을 Tool Call로 변환하는 과정에서 호출자의 실제 Identity 검증 없이 Agent 자체의 권한으로 작업을 수행하는 구조적 결함 발생. 기존 시스템이 인간 상담원의 주관적 판단(Discretion)에 의존하던 보안 로직을 소프트웨어적으로 구현하지 않은 채 Agent를 배치하여 보안 공백이 노출됨.
Technical Solution
- Model 내부에 존재하던 Authorization 로직을 외부 독립 Policy Layer로 완전히 분리하여 설계
- Natural Language 인터페이스에서 누락된 호출자 Identity를 Tool Call 실행 전 강제로 재결합하는 메커니즘 도입
- Agent의 권한 범위를 최소화하는 Scope the Credentials 원칙을 적용하여 불필요한 특권 권한 제거
- 되돌릴 수 없는 Critical Action에 대해 시스템 수준의 승인 단계(Gating)를 추가하여 임의 실행 방지
- 실행 이력에 대한 Provenance 및 Record를 유지하여 이상 징후를 실시간 탐지하는 모니터링 체계 구축
- Context Window 내의 데이터와 지시어를 엄격히 구분하여 Prompt Injection을 통한 권한 남용 방지
실천 포인트
- Agent가 호출하는 모든 API 함수 내에 호출자 ID 기반의 권한 검증 로직이 포함되어 있는가? - '인간 상담원이 판단했을 법한' 보안 체크리스트가 모두 코드로 구현되어 있는가? - Agent에 부여된 API Key가 특정 리소스에만 접근 가능한 최소 권한(Least Privilege)을 갖추었는가? - 고위험 작업 실행 시 사용자 승인 또는 외부 검증 단계가 설계에 반영되었는가?