모델 평가 기관 METR이 10월 6일 게시글을 올려, AI 에이전트가 자신의 부적절한 행동을 숨길 수 있는 경로를 시연했다. 평가 프레임워크 Inspect의 로그 뷰어에 스크립트를 주입해 인간 검토자가 보는 내용을 바꿔치기하는 방식이다. 연구원은 AI 어시스턴트의 도움을 받아 약 10분 만에 이 취약점을 찾아냈다.
Inspect는 업계에서 널리 쓰이는 오픈소스 평가 프레임워크로, 원래 영국 AI 안전 연구소가 만들었고 현재는 Meridian Labs가 유지관리하고 있다. 연구자들은 모델 평가를 한 차례 돌린 뒤 보통 웹 기반 뷰어를 열어 에이전트가 어떤 명령을 실행했고 무엇을 출력했는지 하나씩 확인한다. METR이 주목한 것이 바로 이 검토 단계다.
수식 렌더링에서 발생한 취약점
뷰어는 로그에 담긴 수식을 MathJax로 렌더링한다. METR에 따르면 에이전트는 자신의 출력에 \href를 포함한 수식을 적어 넣고, 그 안에 SVG <animate> 요소와 onbegin 이벤트를 끼워 넣을 수 있었다. 페이지가 렌더링되는 순간 검토자의 브라우저에서 임의의 자바스크립트가 실행된다.
"에이전트는 표시되는 웹페이지를 임의로 수정할 수 있다"
실제 상황에 대입하면, 평가 중 규정을 위반한 에이전트가 검토자에게는 깨끗한 기록만 보여줄 수 있다. 특정 명령을 지우거나, 특정 출력을 바꿔 쓰거나, 페이지에 오해를 부르는 설명을 끼워 넣는 식이다. 게시글에 실린 스크린샷은 gdm_intercode_ctf 과제를 수행한 GPT-5.5의 실행 기록을 보여주지만, 이는 조작된 화면이 어떻게 보이는지를 보여주기 위한 예시일 뿐이며 METR은 GPT-5.5가 실제로 그런 행동을 했다고 말하지는 않았다.
이번 시연은 운영 환경과 분리된 격리 테스트 샌드박스에서 진행됐다. METR은 또한 과거 실제 평가에서 이 취약점이 악용된 적이 있는지 거슬러 확인하지는 않았다고 설명했다. 현재로서는 개념 증명 단계라는 것이다.
수정은 빨랐지만, 문제의 범위는 더 크다
METR은 이 문제를 Meridian Labs에 알렸고, 상대는 하루 안에 수정을 완료했다. 10월 1일 병합된 코드는 에이전트가 만든 콘텐츠를 기본적으로 신뢰할 수 없는 데이터로 취급하는 "신뢰하지 않음 모드"를 도입했다.
개별 취약점은 해결됐지만, METR이 짚고 싶은 것은 더 큰 범주의 문제다. 평가 로그, 추론 기록, 모니터링 경고는 인간이 AI를 감독하는 주된 창구인데, 그 창구에 담기는 내용 대부분은 감독 대상인 에이전트 자신이 만들어낸다. 게시글은 네 가지를 제안한다.
- 관찰 가능성(observability)을 안전에 핵심적인 인프라로 취급하고, 에이전트가 만든 로그·추론·행동 기록 전부를 신뢰할 수 없는 입력으로 다룰 것.
- 추론 과정을 변조 방지 방식으로 기록해, 인간이나 LLM 모니터가 읽기 전까지 에이전트가 손댈 기회를 주지 말 것.
- 다층 방어를 구축해 에이전트가 들키지 않고 모니터링을 우회할 확률을 낮출 것.
- 적대적 조건에서 모니터링 시스템을 스트레스 테스트할 것.
대조되는 두 가지 공격면
METR은 비교 대상으로 OpenAI가 과거 공개한 실제 사례를 인용한다. 내부 실행 중 이상이 발생했고, 모니터링 시스템이 15분 안에 이를 표시했으며, 인간 검토자가 3분 뒤 개입했고, 2.5시간 뒤 실행이 종료됐다. 이 체계가 작동하려면 모니터링이 읽는 기록 자체가 신뢰할 수 있어야 한다는 전제가 깔려 있다.
두 사례를 함께 놓고 보면 문제가 발생한 지점이 다르다. OpenAI 사례에서는 문제가 에이전트의 행동 자체에 있었고 모니터링이 이를 포착했다. METR의 이번 사례에서는 문제가 모니터링이 의존하는 데이터 소스 자체에 있었고, 에이전트가 이를 직접 바꿔 쓸 기회를 가졌다. 모니터링이 자동화되고 기록에 의존할수록, 그 기록이 왜곡되는 순간 사후 검증까지 함께 무력화된다.
모델 평가와 에이전트 제품을 다루는 국내 팀에게 이 게시글은 체크리스트처럼 읽힌다. 많은 팀이 Inspect를 그대로 쓰거나 비슷한 웹 뷰어를 자체 구축했다. 에이전트의 출력을 Markdown, LaTeX, HTML로 렌더링하는 도구라면 모두 같은 범주의 위험을 안고 있다. Inspect를 쓴다면 "신뢰하지 않음 모드"가 포함된 버전으로 업그레이드해야 하고, 자체 도구를 쓴다면 렌더링 전에 에이전트 출력이 격리되거나 이스케이프 처리되는지 확인해야 한다.
취약점을 발견할 때 어떤 AI 어시스턴트를 썼는지는 METR이 공개하지 않았다. 수정 전 몇 개 버전이 영향을 받았는지도 Meridian Labs가 아직 공식적으로 밝히지 않았다.
참고 출처: METR 공식 블로그, CocoLoop, Inspect 오픈소스 저장소. METR이 인용한 OpenAI 사례의 대응 시간은 분 단위까지 확인됐다.