
AI
프롬프트 인젝션 방어: AgentCore 기반 다층 보안 설계 패턴
두줄요약
프롬프트 인젝션에 대비해 에이전트 보안을 LLM 밖의 인프라에서 강제하는 다층 방어 패턴을 설명했습니다. AgentCore, JWT 전파, RLS, Index Mapper로 사용자 간 데이터 경계를 지키는 방법을 정리했습니다.
문제 상황
- LLM 기반 에이전트에서 프롬프트 인젝션으로 다른 사용자의 데이터가 노출될 수 있는 보안 위험
- 시스템 프롬프트만으로는 권한 경계를 보장할 수 없고, 사용자 입력·도구 응답·메모리·검색 결과 등 여러 경로가 공격 벡터가 됨
원인 분석
- LLM의 출력은 확률적이라 악의적 지시나 간접 인젝션에 완전히 견고하지 않음
- 도구 파라미터에 user_id를 받으면 인가 결정이 모델 출력에 의존하게 되어 Row-Level Security가 무력화될 수 있음
- 내부 식별자와 민감 필드가 에이전트 컨텍스트에 들어가면 로그·메모리·응답 전파를 통해 노출될 위험이 있음
해결 방법
- 권한 검증과 데이터 경계를 LLM 바깥의 인프라에서 강제
- AgentCore Runtime과 Gateway의 독립 JWT 검증, Interceptor 헤더 전파, Lambda의 claims 기반 사용자 식별, DB 수준 RLS로 다층 방어 구성
- 세션별 Index Mapper로 내부 ID를 숨기고, 응답 직렬화 시 민감 필드를 제거
