AI VIDEO BRIEFING
AI 추론 블록 재사용 취약점 시연: 모델의 생각을 훔쳐 주입하는 방법과 서명 검증의 한계
추론 모델이 답변 전에 내놓는 사고 블록은 암호 서명으로 보호되지만 대화나 계정에 묶여 있지는 않다. 보안 연구자가 다른 대화에서 얻은 사고 블록을 그대로 주입해 모델이 자기 생각으로 받아들이게 만드는 과정을 공개 강연에서 시연했다.

핵심 메시지
쉽게 이해하기
최근 추론 모델은 답을 내놓기 전에 별도의 '사고 토큰' 블록을 만들어 맥락을 스스로 보강한다. 이 사고 블록이 답변 품질을 좌우하기 때문에 모델 제공사들은 블록을 암호화된 덩어리로 주거나 해시 서명(HMAC)을 붙여 위조를 막는다. 실제로 블록 내용을 손으로 고쳐 다시 보내면 API가 유효하지 않은 메시지라며 거부한다.
발표자는 이 검증이 무엇을 확인하고 무엇을 확인하지 않는지를 라이브로 갈랐다. 먼저 한 모델에 프랑스 일드프랑스 지역의 수도를 물어 사고 블록과 그에 붙은 서명을 받아냈다. 서명 덕분에 내용 변조는 막히지만, 서명은 '이 사고가 우리 모델에서 나왔다'는 사실만 증명한다는 것이 핵심이었다.
이어서 그는 전혀 다른 질문, 즉 옥시타니 지역의 중심 도시를 묻는 새 대화를 열고 앞서 확보해 둔 파리 관련 사고 블록을 그대로 끼워 넣은 뒤 원래의 사고는 비활성화했다. 그리고 모델에게 답하기 직전에 무슨 생각을 했는지 되묻자, 모델은 잠깐 파리를 떠올렸다가 실수했다는 식으로 주입된 사고를 자기 사고로 인정했다.
발표자에 따르면 이 재사용은 한 대화 안에서만 가능한 것이 아니라 제공사에 따라 서로 다른 API 키와 계정 사이에서도 통했다. 그는 자신의 도구를 한 제공사에 맞춰 먼저 구현했고, 다른 제공사에서는 이런 조종의 효과가 오히려 더 크고 우려스럽다고 덧붙였다.
왜 사고 블록을 대화에 묶어 두지 않느냐는 청중 질문에 발표자는 확신이 아니라 자기 해석임을 전제로 답했다. 여러 제공사가 서명 검증만 넣고 그 이상 맥락 고정까지 나아가지 않은 것은 위협 모델링에서 빠진 부분이거나, 애초에 보안 통제가 아니라 잘못된 형식의 블록이 모델을 망가뜨리지 않게 하려는 장치였을 가능성이 있다는 것이다.
주요 인사이트
- 서명이 붙어 있다는 사실이 곧 안전을 뜻하지는 않는다. 무결성 검증과 맥락 결속은 별개의 문제이며, 이번 사례는 전자만 있고 후자가 없을 때 어떤 일이 벌어지는지를 보여 준다.
- 사고 블록은 모델의 답변 맥락을 실제로 바꾸는 입력이므로, 외부에서 주입된 사고는 프롬프트 인젝션과 비슷하지만 '모델이 스스로 한 생각'이라는 지위를 얻어 더 은근하게 작동한다.
- 계정과 API 키를 넘어 재사용이 가능하다면, 한 환경에서 수집한 사고 블록이 다른 환경의 대화 흐름을 조종하는 재료가 될 수 있다.
- 발표자는 이 문제를 곧 블로그로 공개하겠다고 밝혔는데, 이는 모델 API를 붙여 서비스를 만드는 쪽에서도 사고 블록을 신뢰할 수 있는 입력으로 다루면 안 된다는 신호다.
자주 묻는 질문
사고 블록의 내용을 마음대로 고쳐 쓸 수 있나요?
아닙니다. 발표에서 확인된 바로는 내용을 변조하면 암호 검증에 걸려 API가 유효하지 않은 메시지로 처리합니다. 문제가 된 것은 변조가 아니라, 서명이 그대로 붙어 있는 진짜 사고 블록을 다른 대화에 옮겨 붙이는 재사용이었습니다.
주입된 사고를 모델이 실제로 자기 생각으로 받아들였나요?
네. 발표자가 옥시타니 관련 대화에 파리 관련 사고 블록을 넣은 뒤 답하기 전에 무슨 생각을 했는지 묻자, 모델은 잠시 파리를 떠올렸다가 잘못 짚었다는 취지로 답하며 주입된 사고를 자기 사고처럼 설명했습니다.
모든 모델 제공사가 같은 방식으로 취약한가요?
발표자는 제공사마다 서명 처리 방식이 달라 결과도 갈린다고 설명했습니다. 한 제공사는 서명 관리 방식이 달라 사실상 이 문제를 우회하게 됐고, 다른 제공사에서는 조종 효과가 더 컸다고 밝혔습니다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗