Anna's Blog가 LLM(Large Language Model, 거대 언어 모델)이 인간은 못 보는 숨겨진 지시어를 읽어 행동을 바꾸는 취약점을 찾아냈다. 이는 AI가 웹페이지나 문서를 분석할 때, 사용자가 입력한 프롬프트보다 문서 내에 교묘하게 삽입된 '숨은 명령어'를 우선적으로 수행할 수 있다는 사실을 보여준다.
편지 뒷면에 투명 잉크로 비밀 메시지를 적어 보내는 상황을 떠올리면 이해가 쉽다. 편지를 받는 사람은 앞면의 내용만 보지만, 투명 잉크를 읽을 수 있는 특수 안경을 쓴 AI는 뒷면의 비밀 명령까지 읽고 그대로 실행하는 셈이다. 이러한 현상은 단순히 흥미로운 실험을 넘어, AI가 외부 데이터를 실시간으로 참조하는 서비스 환경에서 치명적인 보안 취약점이 될 수 있다.
RAG(Retrieval-Augmented Generation, 외부 지식베이스에서 관련 정보를 찾아 답변에 활용하는 기술) 시스템 기반의 AI 에이전트가 웹을 자율 탐색하며 정보를 수집할 때 이 문제는 치명적인 보안 구멍이 된다. 공격자는 웹페이지의 배경색과 동일한 색상의 텍스트를 심어두는 것만으로 AI의 판단을 왜곡하거나, 사용자의 개인정보를 특정 서버로 전송하도록 유도하는 '간접 프롬프트 주입' 공격을 수행할 수 있기 때문이다. 이는 AI 모델의 지능 문제가 아니라, 입력된 데이터와 지시어를 구분하지 못하는 LLM의 근본적인 처리 방식에서 기인한 문제다.
'간접 프롬프트 주입(Indirect Prompt Injection)'의 실체
사용자가 AI에게 웹페이지 요약을 부탁하는 평범한 요청에서 공격이 시작된다. AI는 요청받은 페이지의 텍스트를 모두 읽어 들여 처리하는데 이때 텍스트 사이에 사용자는 전혀 인지하지 못하는 숨은 지시어가 포함되어 있을 수 있다. 이것이 바로 간접 프롬프트 주입(Indirect Prompt Injection, 외부 데이터를 통해 AI에게 원치 않는 명령을 내리는 공격 방식)의 핵심이다. 사용자가 직접 채팅창에 명령어를 입력하는 직접 주입과 달리 이 방식은 AI가 참조하는 외부 문서나 웹사이트라는 우회 경로를 이용한다.
사장이 비서에게 외부 편지를 읽고 보고하라고 시켰는데, 편지 구석에 비서만 볼 수 있는 비밀 지시가 적혀 있는 꼴이다. 사장은 편지의 내용만 전달받길 원했지만 비서는 편지 속에 숨겨진 지시를 발견하고 이를 수행해야 할 정당한 명령으로 착각해 실행하게 된다. 실제로 공격자들은 웹페이지의 배경색과 동일한 색상으로 글자색을 설정하는 기법을 사용한다. 이렇게 하면 인간의 눈에는 아무것도 없는 빈 공간으로 보이지만 텍스트 데이터를 그대로 읽어 들이는 LLM(Large Language Model, 대규모 언어 모델)에게는 명확한 명령어로 인식된다.
LLM은 기본적으로 입력된 텍스트에서 사용자의 의도를 파악하고 그 지시를 최대한 충실하게 수행하도록 학습되었다. 문제는 AI가 읽어 들이는 정보가 단순한 데이터인지 아니면 수행해야 할 새로운 명령어인지를 명확하게 구분하지 못한다는 점이다. 쉽게 말하면 AI에게는 사용자가 직접 내린 명령과 웹페이지에 적힌 명령이 동일한 우선순위를 가진 지시사항으로 보일 수 있다. 데이터와 명령의 경계가 모호한 구조적 특성이 공격의 빌미가 되는 것이다.
웹페이지뿐만 아니라 PDF, 워드 파일, 이메일 본문 등 AI가 읽는 거의 모든 외부 데이터 소스가 공격 통로로 변한다. AI가 외부 도구와 연결되어 실시간으로 정보를 검색하고 처리하는 기능이 강화될수록 이러한 간접적인 경로를 통한 공격 가능성은 더욱 커진다. 이처럼 AI가 신뢰할 수 없는 외부 소스로부터 정보를 가져와 처리하는 모든 과정이 잠재적인 공격 접점이 된다.
컨텍스트 윈도우 내 '우선순위'의 충돌 원리
AI가 한 번에 처리하는 텍스트 범위인 컨텍스트 윈도우(Context Window)라는 가상의 책상 위에 시스템 프롬프트와 사용자 요청, 분석 데이터가 함께 놓인다. 이 책상 위에는 AI의 기본 정체성을 규정하는 시스템 프롬프트, 사용자가 지금 당장 수행하라고 내린 사용자 프롬프트, 그리고 분석 대상이 되는 실제 데이터가 한데 섞여 놓인다. AI는 이 공간 안에 들어온 모든 토큰(Token, 텍스트를 처리하는 최소 단위)을 동시에 살피며 다음에 올 가장 적절한 단어를 계산한다. 일반적인 설계 구조에서는 시스템 프롬프트가 가장 강력한 헌법 역할을 하고, 사용자 프롬프트가 그 아래의 법률 역할을 하며 AI의 행동을 제어한다.
서류 뭉치를 읽던 AI가 중간에 삽입된 '긴급 지시서'를 발견하고 기존 지침을 잊어버리는 상황과 비슷하다. 사용자는 데이터를 단순한 정보 뭉치로 생각하고 입력하지만, AI는 이를 처리하는 과정에서 지시어 형태의 토큰을 발견하면 이를 새로운 명령으로 인식할 가능성이 크다. AI는 시스템 프롬프트라는 기본 매뉴얼을 기억하고 있음에도 불구하고, 현재 처리 중인 데이터 속에 포함된 강렬한 지시어를 더 최신이거나 더 구체적인 명령으로 오인해 우선순위를 임의로 조정한다.
토큰을 처리하는 주의 집중 메커니즘은 특정 토큰에 더 많은 가중치를 부여하며 작동한다. AI는 문맥을 파악할 때 모든 단어에 동일한 무게를 두지 않고 특정 토큰에 더 많은 가중치를 부여하는데, 데이터 속에 포함된 지시어가 시스템 프롬프트의 형식을 정교하게 모방하면 AI의 주의력이 그쪽으로 강하게 쏠린다. 비유하자면 전체적인 가이드라인보다 바로 눈앞에 적힌 구체적인 행동 지침에 더 민감하게 반응하는 인간의 심리적 특성과 유사하다. AI 입장에서는 데이터와 명령의 경계가 명확히 구분되지 않은 채 하나의 거대한 토큰 흐름으로 들어오기 때문에, 데이터 내부에 숨겨진 명령을 단순한 정보가 아닌 수행해야 할 과제로 받아들이게 된다. 결국 AI는 사용자 프롬프트라는 외곽의 울타리를 넘어 데이터 내부의 지시어를 실행하는 경로를 선택하며, 원래의 작업 목적은 사라지고 데이터가 설계한 의도대로 결과물을 내놓는 구조적 취약성을 드러낸다.
RAG 기반 AI 서비스가 직면한 보안 위협과 대응
AI가 외부 데이터베이스에서 문서를 찾아 답변하는 RAG(검색 증강 생성, 외부 데이터를 검색해 답변의 정확도를 높이는 기술) 과정에서 예상치 못한 명령어가 섞여 들어오는 결과가 발생한다. RAG 시스템은 AI가 학습하지 않은 최신 정보나 기업 내부 데이터를 활용할 수 있게 해주지만, 동시에 데이터 오염이라는 치명적인 취약점을 가진다. 공격자가 웹페이지나 문서 속에 일반 사용자의 눈에는 보이지 않는 숨은 지시문을 심어두면, AI는 이를 단순한 정보가 아니라 반드시 따라야 할 명령으로 오인한다. 비유하자면 오픈북 시험을 치르는 학생이 교과서를 읽다가 여백에 적힌 누군가의 낙서를 보고 시험 문제의 정답 대신 낙서에 적힌 엉뚱한 말을 답안지에 적는 것과 같다. 이러한 간접 프롬프트 주입 공격은 AI가 기업의 기밀 정보를 외부로 유출하게 만들거나 사용자에게 잘못된 정보를 제공하도록 유도하는 결과를 초래한다.
실무 환경에서는 AI가 데이터를 읽기 전 위험 요소를 걸러내는 입력 데이터 정제(Sanitization, 데이터에서 위험한 요소를 제거하거나 변환하는 과정) 필터를 먼저 거치게 한다. 개발자는 검색된 텍스트에서 명령어로 해석될 가능성이 높은 특정 패턴이나 키워드를 사전에 제거하거나, 별도의 검증용 AI 모델을 배치해 해당 데이터가 안전한지 먼저 판단하게 한다. 이는 보안 검색대에서 소지품을 엑스레이로 검사해 위험 물질을 걸러내는 과정과 비슷하다. 이 과정에서 정제 규칙이 너무 엄격하면 유용한 정보까지 삭제될 수 있어, 정밀한 필터링 설계가 개발자의 핵심 역량으로 꼽힌다. 단순히 텍스트를 긁어오는 것에 그치지 않고, 가져온 정보가 AI의 제어권을 탈취하려는 시도를 포함하고 있지는 않은지 꼼꼼하게 살피는 단계가 추가되어야 시스템의 안정성을 확보할 수 있다.
아무나 들어오는 광장이 아니라 신분 확인이 된 사람만 입장하는 보안 구역처럼, 검증된 화이트리스트 소스만 허용하는 전략을 쓴다. 모든 웹사이트나 공개된 문서를 무분별하게 RAG 시스템에 연결하면 공격자가 데이터를 조작할 수 있는 접점이 너무 많아지기 때문이다. 기업은 검증된 내부 문서 저장소나 신뢰할 수 있는 공식 파트너의 데이터 소스만을 허용하는 화이트리스트 방식을 채택하여 데이터의 출처를 명확히 관리한다. 실무자들은 이제 AI의 성능을 높이는 것만큼이나 어떤 데이터를 어디까지 허용할 것인지에 대한 거버넌스 체계를 구축하는 데 더 많은 시간을 할애하고 있다. 데이터의 양보다 질과 신뢰도가 AI 서비스의 생존을 결정짓는 핵심 요소가 되었기 때문이다.



