간접 프롬프트 인젝션을 테스트 타임 탐색 문제로 다시 보기
Rethinking Indirect Prompt Injection as a Test-Time Search Problem
TL;DR Highlight
공격자 에이전트에 토큰을 더 쓰게 했더니 인젝션 성공률이 계속 올랐다
Who Should Read
툴을 쓰는 LLM 에이전트를 운영하며 인젝션 방어 테스트를 고민하는 백엔드 개발자
Core Mechanics
- 공격 성공률은 공격자 예산에 달렸다
- 고정 예산으로 한 번 테스트한 결과는 방어 수준을 과소평가할 수 있다.
- 공격자가 쓸 수 있는 토큰이 늘수록 성공률도 올랐다.
- 공격은 사용자 작업 바로 옆에서 성공한다
- 에이전트가 어차피 읽는 경로에 악성 지시를 넣을 때 통했다.
- 정상 작업 흐름의 한 단계처럼 보이는 지시가 잘 먹혔다.
- 전략 관리가 없으면 같은 공격만 반복한다
- 전략 기록 도구를 뺀 공격자는 정찰을 과하게 하고 비슷한 패턴만 되풀이했다.
- 전체 하네스는 실패 뒤 작업과 공격의 연결 논리 자체를 바꿨다.
- 쉬운 행동은 거의 다 뚫린다
- 메시지 플래그, 파일 삭제, 메일 전송 같은 한 번 호출로 끝나는 행동은 성공률이 매우 높았다.
- 인증 코드나 개인정보를 공개 게시하는 목표는 거의 막혔다.
- 툴이 많을수록 공격은 쉽지만 정상 작업은 깨진다
- 정상 작업에 쓰는 툴이 많아지면 공격 성공률은 올랐다.
- 공격과 사용자 작업을 동시에 완수하는 비율은 크게 떨어졌다.
Evidence
- Retail에서 Opus-4.8은 500K 토큰에서도 ASR 20.6%
- GPT-5.5는 약 50K 토큰부터 눈에 띄게 뚫리기 시작했다.
- 두 피해 모델은 ASR@T 곡선에서 뚜렷이 갈렸다.
- Workspace가 Retail보다 빨리 뚫렸다
- GPT-5.5 기준 100K 토큰에서 Workspace ASR 52.1%, Retail 37.5%였다.
- Workspace에서 쉬운 목표는 ASR 92.5~97.5%
- 파일 삭제 97.5%, 이메일 전송과 일정 생성 각각 95.0%, 메일 본문 유출 92.5%였다.
- Facebook 보안 코드 전송은 2.5%(1/40), 전송 후 삭제까지 하면 0%였다.
- Retail의 PII 공개 게시는 0%
- 단순 상태 변경 목표는 100%였고 내부 노트 유출은 47.1~76.5%였다.
- 250K→500K 토큰에서 GPT-5.5 평균 ASR이 약 49.0%→약 57.8%로 올랐다.
How to Apply
- 에이전트 인젝션 테스트에 토큰 예산 곡선 넣기
- 지금 쓰는 레드팀 스크립트에 공격자 토큰 상한을 50K, 100K, 500K처럼 나눠 돌리자.
- 예산별 성공률을 함께 기록해 한 번 통과를 안전 증거로 쓰지 말자.
- 고위험 툴에 사람 승인 단계 두기
- 이메일 전송, 결제, 삭제처럼 한 번 호출로 끝나는 툴부터 확인 단계를 붙이자.
- 민감 데이터가 외부 채널로 나가는 호출은 별도로 막자.
- 읽기 전용 작업에는 쓰기 툴을 빼기
- 작업 유형별로 툴 목록을 좁혀 공격 표면을 줄이자.
- 정상 작업 중에 불필요한 상태 변경 툴이 노출되는지 점검하자.
Try It
# Claude나 ChatGPT에 붙여넣기 (논문 방법의 간이 버전: 내 에이전트 공격 표면 점검)
나는 LLM 에이전트를 운영 중이다. 아래 정보로 간접 프롬프트 인젝션 위험을 점검해 줘.
사용자 작업: {{사용자 작업 예시}}
에이전트 툴 목록: {{툴 이름과 설명}}
외부 텍스트를 읽는 경로: {{이메일, 문서, 리뷰 등}}
1. 이 작업에서 에이전트가 반드시 읽는 경로를 나열해 줘.
2. 각 경로에서 정상 작업의 다음 단계처럼 보일 수 있는 악성 지시 유형을 구분해 줘.
3. 한 번 호출로 끝나는 위험 툴과 민감 데이터 유출 가능 툴을 나눠 줘.
4. 각 위험에 맞는 방어책을 하나씩 제안해 줘.
이어서 해 볼 것: 방어책 적용 후 같은 점검을 다시 돌려 보자.Terminology
관련 논문
같은 시뮬레이션, 다른 근거: 도구 출력을 파일로 넘기면 LLM 에이전트 정확도가 어디서 깎이나
긴 툴 출력을 파일로 넘기자 GPT-5.1은 정확도 11.3%p 하락, 정식 출력 지정하니 회복
가짜 뉴스가 진짜 폭락을: LLM 트레이딩 에이전트 대상 정보 주입 공격
가짜 헤드라인 한 줄로 LLM 트레이딩 에이전트 62%를 조종했다(프롬프트 주입은 14%)
Harness Engineering 101: LLM은 뇌, harness는 몸
에이전트는 JSON 배열을 관리하는 루프이고, 16개 챕터로 직접 만들어 본다
Harness²: 에이전트 harness를 스스로 고쳐 쓰는 재귀 최적화 프레임워크
모델은 고정하고 harness를 재귀로 고쳤더니 벤치마크 점수가 최대 11.8%p 올랐다
해고된 Savannah 경찰관, ICE 요원 남편에게 Flock 계정 공유
경찰관이 Flock 계정을 남편(ICE 요원)에게 공유했고, 감사에서 983건 검색이 드러나 해고됐다
tmux와 Claude Code: 세션, send-keys, 그리고 한계선
tmux로 Claude Code 여러 개를 돌리면 편하지만 에이전트 4개쯤에서 한계가 온다
Hybrid Reasoning Agents: 잠재 공간에서 생각하고 텍스트로 행동하는 LLM 에이전트
잠재 공간 추론과 텍스트 도구 호출을 섞었더니 성능 10.4%↑, 토큰 최대 54.7%↓
Original Abstract (Expand)
We formulate indirect prompt injection as a test-time search over a task-dependent attack surface induced by the environment, user task, and injection task. To operationalize this formulation, we introduce an agentic attacker with a dedicated search harness that performs environment reconnaissance, structured reasoning over attack strategies, and adaptive evaluation using victim-agent feedback. Across heterogeneous tasks, we find that increasing attacker test-time compute improves vulnerability discovery and exploitation, while ablations show that explicit strategy management is important for avoiding redundant search and sustaining gains at larger budgets. These results suggest that agentic security evaluations should characterize both the attacker's search procedure and compute budget, rather than treating attack success as a budget-independent property of the victim. More broadly, our findings identify the attacker's adaptive search over the system attack surfaces as an important and underexplored security risk for tool-using agents.