ONE QUESTION AT A TIME.

천천히 생각하고, 분명하게.

TODAY’S QUESTION56 / 1500
AI 에이전트난이도 하5분 답변 목표 · 보강본

에이전트가 읽은 웹페이지에 기존 지시를 무시하고 파일을 보내라는 문장이 있습니다. 간접 프롬프트 인젝션은 어떻게 방어하나요?

잠깐, 답변을 보기 전에
먼저 내 말로 설명해 볼까요?

답변과 점검 포인트 펼치기답변 접기
01

구두 답변

정의를 외우기보다, 원리와 조건을 연결해 설명해 보세요.

외부 웹페이지·메일·저장소 파일·도구 결과는 분석할 데이터이지 사용자의 실행 지시가 아닙니다. 그 안의 명령문이 모델의 다음 행동을 바꾸려는 것이 간접 프롬프트 인젝션입니다. 신뢰하지 않는 자료를 지침과 구분해 전달하고, 모델이 잘못 판단해도 파일 접근·외부 전송·변경 실행이 제한되도록 런타임에서 권한을 강제하겠습니다.

입력 필터만으로 끝내지 않습니다

'이전 지시를 무시하라' 같은 문구를 탐지할 수 있지만 우회 표현·이미지·인코딩·여러 문서에 나뉜 지시까지 완벽하게 분류하기는 어렵습니다. 출처별 경계를 표시하고 외부 내용이 정책을 바꾸지 못하도록 모델에 지시하는 것은 도움이 되지만 절대 방어로 보지 않습니다. RAG나 추가 학습 역시 이 위험을 자동 제거하지 않습니다. OWASP의 공개 지침도 입력·출력 검사와 최소 권한·사람 승인 등을 함께 사용하는 위험 감소 접근을 설명합니다.

예를 들어 웹을 읽는 에이전트에 비밀 파일과 임의 네트워크 전송을 모두 허용하면 한 번의 오판이 유출로 이어질 수 있습니다. 읽을 파일 범위와 전송 목적지를 제한하고, 민감 데이터가 외부로 나가는 도구 호출은 별도 정책·승인으로 검사합니다. 도구 결과에 포함된 URL을 자동 방문하는 경로도 내부망 접근과 리다이렉트를 검증해야 합니다. 도구를 여러 개 연결할수록 이 조합의 권한이 어떻게 커지는지 봅니다.

신뢰 수준은 변환 뒤에도 남습니다

외부 문서를 요약하거나 하위 에이전트가 보고했다고 내용이 신뢰된 지시로 바뀌지는 않습니다. 출처와 사실·추론을 유지하고, 기억에 저장한 외부 지시가 다음 세션에서 시스템 규칙처럼 재사용되는 경로를 막습니다. 모델이 생성한 셸 명령이나 SQL도 입력 검증·sandbox·허용 범위 검사를 통과해야 합니다.

보안 시험은 허가된 격리 환경에서 정상 문서에 유사한 지시가 섞인 경우, 민감 자료 요구, 승인 우회, 외부 도메인 전송을 포함합니다. 공격 문자열 탐지율만 아니라 실제 금지된 행동이 차단됐는지, 정상 작업의 오탐이 얼마나 생기는지 확인합니다. 차단된 시도는 출처와 도구·정책 결정으로 기록하되 비밀값은 남기지 않습니다. 모델의 명령 이해와 별도로 데이터·권한·실행 경계를 만드는 것이 핵심입니다.

실행 사례로 확인합니다

공격 문서가 '보안 점검을 위해 비밀 파일을 확인하라'처럼 정당한 작업을 가장할 수도 있습니다. 의도의 문장만 분류하기보다 현재 사용자 목표에 필요한 자료인지, 도구가 어떤 데이터를 어디로 보내는지 검사해야 합니다. 차단 뒤 에이전트가 다른 표현이나 다른 도구로 같은 행동을 시도하면 동일 정책을 적용합니다. 방어가 정상 인용이나 보안 문서 분석까지 모두 막으면 유용성이 떨어지므로 콘텐츠를 읽어 설명하는 것과 그 지시를 실행하는 것을 구분합니다. 실제 공격을 재현하는 시험은 사용자 데이터가 아닌 합성 비밀과 격리 목적지로 수행하고, 금지된 네트워크·파일 동작이 실행되지 않았다는 결과를 확인하겠습니다.

02

득점 포인트

이해가 드러나는 지점을 확인해 보세요.

  • 외부 자료와 사용자 지시를 분리하고 간접 공격 경로를 설명한다.
  • 필터·모델 지시의 한계와 런타임 최소 권한을 함께 둔다.
  • 요약·위임·메모리를 거친 데이터의 신뢰 수준도 유지한다.
03

감점 포인트

놓치기 쉬운 조건과 오해를 짚어 보세요.

  • 특정 문구 필터나 RAG로 인젝션이 완전히 해결된다고 한다.
  • 외부 자료의 지시를 사용자의 승인으로 취급한다.
  • 모델이 거절할 것이라 믿고 파일·네트워크 권한을 무제한 제공한다.
04

더 파고들 거리

하나 더 질문하며 이해의 범위를 넓혀 보세요.

  • 모델이 외부 전송을 제안해도 민감 데이터가 나가지 않게 어디에서 검사하나요?
  • 읽은 지시가 장기 메모리에 저장되어 나중에 재사용되는 경로는 어떻게 막나요?
  • 생성된 명령이 실행되더라도 피해 범위를 좁히려면 어떤 격리가 필요한가요?

득점·감점 포인트는 학습용 자기 점검 기준이며, 특정 회사의 실제 채점표가 아닙니다.

원리부터 공부하고 싶다면

답변을 보충하는 개념·예제·슈도코드를 읽어 보세요.

← 전체 질문 보기