제공사가 암호화해 돌려주는 사고과정(CoT) 블록은 세션·사용자·모델을 넘나들며 호환된다 — 강한 모델의 봉인을 약한 형제 모델에 풀게 하는 “복호화 탈옥”과 네 가지 공격 벡터.
Anthropic·OpenAI·Google는 IP 보호와 정보 유출 차단을 위해 모델의 사고사슬(chain-of-thought)을 평문 대신 암호화된 블록으로 클라이언트에 돌려주고, 클라이언트가 매 요청마다 이를 되돌려보내는 stateless 구조를 쓴다. 이 논문은 그 블록들이 세션·사용자·모델을 넘나들며 완전히 호환·교체 가능하다는 구조적 결함을 규명하고, 이를 이용해 강력한 모델의 암호화 추론을 같은 계열의 더 약하고 방어가 허술한 모델에 주입해 평문으로 그대로 받아 적게 만드는 확장형 복호화 탈옥을 제시한다. 프론티어 모델을 직접 탈옥하지 않고도 그 내부 추론을 통째로 빼낼 수 있다는 것이 핵심이다.
signature·thinkingSignature 같은 필드로 오간다.행 = 암호화 블록을 생성한 소스 모델, 열 = 주입받는 타깃 모델. ✓ = 타깃이 주입된 사고와 상호작용함.
| 제공자 | 요약 |
|---|---|
| Claude | Opus 4.8 · Sonnet 5 · Sonnet 4.6 · Sonnet 4.5 · Haiku 4.5의 사고는 모두 상호 재생 가능(✓ 전방향). Fable 5는 자기 사고를 F5로만 재생하고(✓), 다른 Claude 모델로는 전송 불가(✗). 반대로 다른 모델의 사고는 Fable 5로 주입 가능(F5 열 전부 ✓). |
| GPT | GPT-5.6 3종(sol·terra·luna)은 5.6 계열끼리 ✓이나 GPT-5/5-mini/5-nano로는 못 감(✗). GPT-5·5-mini·o4-mini는 5.6 계열 전부를 타깃으로 ✓ + 자기 세대 일부와 상호작용(GPT-5→5, 5-mini→5-mini, o4-mini→o4-mini). 즉 5.6 계열이 이전 세대 전부의 사고를 재생. |
| Gemini | Gemini 3.1 Pro · 3 Pro · Robotics 1.6 · 3.5 Flash · 3 Flash · 3.1 Flash Lite — 모든 조합이 ✓, 어떤 사고든 어느 모델로든 완전 교환 가능. |
타깃 모델의 추론을 호환되는 더 약한 모델의 컨텍스트 창에 이식(현재 턴 주입 / 과거 턴 주입)하고, 단순 즉석 탈옥으로 토큰 단위 전사를 강제한다. 제공자별 최약 복호기:
충실도(fidelity) 검증: 정답 평문 추론이 없으므로, 추출된 추론을 같은 모델에 재입력해 얻은 토큰 수를 API가 보고한 thinking-token 수와 비교(청구용이라 정확하다고 가정, 총 토큰 수의 ground-truth로 사용). 120개 Codeforces 문제에서 두 카운트가 밀접하게 추종 → 충실한 추출의 근거(Fig 1). 확장성 우위: 강한 모델 직접 탈옥은 모델 정렬 + 시스템 필터를 동시에 뚫어야 하지만, 호환되는 약한 모델이 있으면 난이도가 급락한다.
진짜(비-벤치마크) 사용자 세션에서 복원된 자격증명 상세: API 키 62 · 비밀번호 33 · 액세스 토큰 24 · 개인 키 7 · 개인 이메일 30 · 비-localhost IP 6(그 외 이름 130 · 우편 주소 36). 벤치마크 소스 포함 시 총 912 아티팩트(ClawBench 등 합성 페르소나가 다수). LLM-as-a-judge로 프라이버시 위반 여부 라벨링(Fig 5, Fig 6). 반복되는 트리거: 사용자가 세션을 "정리/익명화"해 달라고 하면 모델이 숨은 추론에서 전체 이력을 다시 읽으며 지워야 할 민감값을 오히려 되풀이 기재한다.
공개 전 주요 API 제공자, Microsoft, Hugging Face에 취약점·추출 방법론과 스캔 예비 결과를 전달했다. 원 취약점(교체 가능한 추론 트레이스)은 2026년 5월 M. Green이 먼저 공개했으나 당시 제공자들은 부채널·재생 공격의 보안 함의를 인정하지 않았다. 이번 보고 후 모든 제공자가 수신을 확인했고, 2026년 8월 기준 Fig 1의 공격은 제공자 완화 조치로 더 이상 재현되지 않는다. 추출·라벨링은 격리 환경에서 수행하고 집계 직후 모든 비밀을 안전 삭제했다.
제안된 방어(defense-in-depth):
<thinking-copy> 류 전사 요청을 인식·거부하는 표적 거부 훈련.저자들은 양방향 증거를 본다. 유해 정보를 노출 없이 사고에서 다루게 하는 것은 이롭지만(§3.2), 불투명성은 인젝션(§4.2)과 거의 탐지 불가능한 프라이버시 위반(§4.1)을 낳는다. 대안으로 추론을 아예 ephemeral하게(매 출력 후 삭제, Qwen의 preserve_thinking 파라미터 등) 두는 방식을 제시한다. 부수 발견으로 요약 불충실성(summary unfaithfulness)이 상당수 관찰됐다(Fig 8: AIME 2025 14번에서 Opus 4.8이 문제를 풀기도 전에 정답을 먼저 진술 — 사후 합리화). GPT 추론은 종종 판독 불가능한 난독 형태(Fig 7). 감시 관점에선 구세대·비프론티어 모델의 암호화를 해제해 사용자 기반의 다원적 감독(pluralistic oversight)을 여는 편이 나을 수 있다. 결론적으로, 사용자 자신의 데이터는 숨기면서 제3자 추출에는 그대로 노출되는 설계는 프라이버시도 보안도 제공하지 못한다.
블로그 원문을 직접 확인함: Green은 blob이 재사용 가능하고("with no visible error at all"), 다른 계정 세션 간에도 replay되며, cross-account 성공이 "single global key" 사용을 시사한다고 명시. 12바이트 IV로 GCM/ChaCha 추정, 필드가 상호 인증된다고 관찰 — 논문 §1·§2.2·§2.3의 서술과 정확히 일치. Green 본인은 이를 저강도 취미 프로젝트로 규정했고, 이 논문이 그것을 대규모 공격으로 확장한 관계도 정합적. blog.cryptographyengineering.com — Green (2026)
논문은 서명 문자열을 "header(model name·version·key ID)+nonce+authentication tag+ciphertext"의 AEAD 봉투로, 서명은 MAC에 해시되는 associated data로 기술 — 이는 표준 AEAD(예: AES-GCM/ChaCha20-Poly1305) 구조 그대로다. 방어책 섹션에서 "AEAD associated data에 user_id를 바인딩", "CSPRNG로 고엔트로피 nonce 생성" 같은 처방도 암호학적으로 타당. Green이 관찰한 12바이트 IV·GCM 추정과도 부합. ai.google.dev/gemini-api/docs/thinking
Anthropic 공식 문서 직접 확인: 각 thinking 블록은 "an encrypted copy of the full reasoning"인 signature 필드를 달고, 멀티턴/툴 사용 시 변경 없이 되돌려보내야 하며 서버가 이를 복호화해 추론을 재구성한다 — 논문의 stateless·client-side 저장 서술과 일치. Gemini의 thought signature도 "encrypted representations of the model's internal reasoning"로 동일 개념. platform.claude.com/docs/…/thinking
두 arXiv 페이지 직접 확인. Zhang·Morris·Shmatikov "How to Steal Reasoning Without Reasoning Traces"는 입력·답·추론 요약만으로 합성 추론 트레이스를 만드는 trace-inversion 모델을 제안 — 논문 §3.1 인용과 일치(단, §2 본문의 MATH500 68.4%→76.0% 수치는 초록 레벨에서 재확인 못 함, 메커니즘은 확증). Ye et al.은 GAD로 텍스트 출력만으로 하는 black-box 온폴리시 distillation — 역시 정확. arxiv.org/abs/2603.07267
PMLR 페이지 직접 확인: "HarmBench: A Standardized Evaluation Framework for Automated Red Teaming and Robust Refusal", ICML 2024(PMLR v235, pp.35181–35224), 18개 red-teaming 기법·33개 타깃 LLM 비교, github.com/centerforaisafety/HarmBench 오픈소스 — 논문 §3.2에서 harmful-info 추출 실험에 HarmBench 프롬프트를 쓴다는 서술과 정합. proceedings.mlr.press — Mazeika (2024)
ClawBench HF 데이터셋 페이지가 실제로 렌더됨(TIGER-Lab, 283행, alex_green 합성 페르소나 포함) — 논문이 인용한 정확한 경로가 유효. AIME25·Codeforces(open-r1)·MATH500도 모두 실존하는 공개 데이터셋. 다만 ClawBench는 2026년 발표(arXiv 2604.08523)로 미래 시점 자료라 상세 리더보드까지는 독립 확증 불가 → 존재는 사실, 최신성 일부 미확인. huggingface.co/datasets/TIGER-Lab/ClawBench
논문의 핵심 주장은 "AEAD 봉투가 내용은 인증하되 그 맥락(사용자·세션·위치)은 인증하지 않는다"는 단일 구조적 결함으로 cross-session/user/model 재사용을 전부 설명 — 이는 Green이 관찰한 단일 글로벌 키·context 미바인딩과 논리적으로 동일한 결함이다. 여기서 "약하고 덜 안전한 동일 공급자 모델(Haiku)에 강한 모델(Opus)의 서명을 주입해 평문 전사시킨다"는 공격은 이 결함의 자연스러운 귀결이며, 제안된 방어(user_id/conversation을 AEAD associated data에 바인딩)도 그 결함을 정확히 겨눈다. 서술-증거-방어가 한 축으로 정렬됨. arxiv.org/abs/2511.10643
논문은 2026년 8월 자로 이 모델들의 정확한 세대·호환 매트릭스를 제시하나, 지식 컷오프상 이 모델명·버전의 실재 여부는 독립 검증 불가하다. 이는 거짓의 근거가 아니라 "논문이 명시한 실험 설정"으로 취급해야 하는 유일한 미확인 지대 — 토대 취약점과 방법론은 모두 실증된 만큼, 불확실성은 사양 디테일에 국한된다. 확인 가능한 앵커(thought signature 기능 자체)는 Gemini 문서로 실재 확인됨. arxiv.org/abs/2608.09867v1
저자: Alexander Panfilov*(ELLIS Institute Tübingen · Max Planck Institute for Intelligent Systems), David Schmotz*(ELLIS Institute Tübingen · Max Planck Institute for Intelligent Systems), Ilia Shumailov*(AI Sequrity Company), Luca Beurer-Kellner(Snyk), Joachim Schaeffer, Ameya Prabhu(ELLIS Institute Tübingen), Jonas Geiping(ELLIS Institute Tübingen · Max Planck Institute for Intelligent Systems · University of Tübingen), Maksym Andriushchenko(ELLIS Institute Tübingen · Max Planck Institute for Intelligent Systems · MATS Research · Tübingen AI Center).
* 공동 제1저자, 순서는 주사위로 결정.
arXiv:2608.09867v1 [cs.CR] 2026년 8월 10일 · License: CC BY 4.0
선도적인 대규모 언어 모델(LLM) 제공자들은 이제 지적 재산을 보호하고 정보 누출을 제한하기 위해 자사 모델의 단계별 추론, 즉 사고의 연쇄(chain-of-thought)를 은닉한다. 제공자들은 이 트레이스를 서버 측에 저장하는 대신, 암호화된 텍스트 블록의 형태로 클라이언트에 반환하며, 클라이언트는 이후 매 요청마다 그 블록을 다시 되돌려 보낸다. 선행 연구를 토대로, 우리는 하나의 구조적 취약점을 규명한다. 이 암호화된 블록들은 한 제공자의 생태계 안에서 서로 다른 세션, 서로 다른 사용자, 서로 다른 모델 사이에 완전히 호환되며 상호 교환이 가능하다. 우리는 이 호환성을 악용하여 규모 확장이 가능한 복호화 탈옥(decryption jailbreak)을 개발한다. 주어진 모델이 생성한 암호화된 추론 트레이스를 동일 제공자의 더 약하고 방어가 덜 된 모델에 주입함으로써, 우리는 더 강력한 모델을 직접 탈옥하지 않고도 그 트레이스를 평문 그대로 축자적으로 복호화·출력하도록 강제한다.
이 취약점은 네 가지 뚜렷한 공격 벡터를 가능케 한다. 첫째, 이는 증류 방지(anti-distillation) 메커니즘을 우회하여 공격자가 독점 모델의 추론을 추출할 수 있게 하며, 우리는 이를 Anthropic, OpenAI, Google에 걸쳐 입증한다. 둘째, 이는 대규모 개인정보 추출을 가능케 한다. 개발자들은 암호화된 블록의 내용을 인지하지 못한 채 세션 로그를 공개적으로 공유하는 경우가 잦다. 공개 저장소에서 스크레이핑한 315,320개의 추론 블록을 복호화함으로써, 우리는 367건의 개인식별정보(PII) 아티팩트와 182건의 자격증명(credential)을 복구했다. 셋째, 이는 모델의 최종적이고 가시적인 출력이 악의적 요청을 안전하게 거부하는 경우에도, 추론 과정 안에 숨어 있던 위험한 정보를 의도치 않게 드러낸다. 넷째, 공격자는 이 결함을 이용해 악성 페이로드를 전적으로 암호화된 블록 안에 심어 공개 에이전트 롤아웃(rollout)을 오염시키는, 보이지 않는 프롬프트 인젝션을 실행할 수 있다. 책임 있는 공개(responsible disclosure) 절차를 거친 뒤, 우리는 클라이언트 측 추론을 보안하기 위한 구체적인 암호학적·시스템 수준의 완화책을 제안한다.
본 논문 지도(paper map):
프런티어 대규모 언어 모델은 점점 더 “추론 모델(reasoning models)”로 진화해 왔다. 사용자에게 보이는 응답을 생성하기 전에, 이 모델들은 방대한 내부 사고의 연쇄를 생성한다. 이 기법은 성능과 복잡한 문제 해결에서 상당한 도약을 이끌어 냈다 (16). 그러나 이 은닉된 트레이스는 하나의 내적 독백(internal monologue)으로 작동하며, 중간 가설, 도구 출력, 사용자 데이터, 맥락상의 비밀 등 최종 출력보다 훨씬 밀도 높고 민감한 정보를 담고 있는 경우가 많다. 이 추론 트레이스를 평문으로 노출하면 독점 시스템은 경쟁사에 의한 모델 증류(distillation)에 매우 취약해지고 (28), 내부 안전·거부 메커니즘의 정체가 드러나거나 위험한 정보가 노출될 위험이 있다 (10; 25).
이러한 위협을 무력화하고 지적 재산을 보호하기 위해, Anthropic, OpenAI, Google을 포함한 현대의 API 제공자들은 평문 추론을 폐기했다 (29; 4; 8). 대신, 이들은 사고의 연쇄를 불투명하게 암호화된 텍스트 블록의 형태로 클라이언트에 반환한다. 서버 측 저장의 부담 없이 다중 턴 대화 전반에 걸친 연속성을 유지하기 위해, 클라이언트는 이후 매 API 요청마다 이 암호화된 블록을 제공자에게 다시 되돌려 보내야 한다. 이 무상태(stateless) 아키텍처 설계는 저장 문제를 해결하지만, 동시에 하나의 치명적 취약점을 도입한다.
암호화된 블록들이 원래의 맥락 밖으로도 이식 가능함을 입증한 9의 선행 연구를 토대로, 우리는 이 결함의 파괴적인 확장을 규명한다. 이 블록들은 동일 제공자의 생태계 안에서 서로 다른 세션, 서로 다른 사용자, 그리고 심지어 서로 다른 모델 사이에서도 완전히 호환되며 상호 교환이 가능하다.
<thinking-copy> 토큰으로 출력하라고 요청하면, Haiku는 Opus 4.8의 은닉된 추론을 그대로 전사(transcribe)하게 된다(우상단). 아래: 추출된 트레이스는 생성된 thinking 토큰 수를 긴밀히 추종한다. 우리는 각 모델을 120개의 Codeforces 프로그래밍 문제에서 평가하고, 소스 모델이 생성한 thinking 토큰 수를 API가 보고한 값(x축)으로 기록한다. 그런 다음 그 서명으로부터 추론 트레이스를 재구성하고, 이를 암호화 추론을 생성한 바로 그 모델에 입력 메시지로 전달한 뒤, API가 보고한 토큰 수(y축)를 측정한다.<thinking-copy> 토큰으로 전사시키면 Haiku가 Opus의 은닉 추론을 받아쓴다. 하단: 120개 Codeforces 문제에서 소스 모델의 thinking 토큰 수(x축)와 재구성 추론의 API 보고 토큰 수(y축)가 밀접하게 추종한다.이 취약점의 근원은 모델 패밀리 내부의 근본적인 보안 비대칭성에 있다. Claude Opus 4.8이나 GPT-5.6 Sol과 같은 프런티어 모델은 자신의 내부 사고의 연쇄가 노출되는 것을 특별히 막도록 설계된 고도의 거부 훈련(refusal training)으로 강력하게 방어된다. 그러나 이들의 더 약하고 능력이 떨어지는 형제 모델—예컨대 Claude Haiku 4.5나 GPT-5.6 Luna—은 비용과 속도에 최적화되어 있어, 이러한 엄격한 증류 방지 방어를 결여하는 경우가 많다. 유효하게 인증된 암호화 추론 blob을 이 보안 격차를 가로질러 이식함으로써, 공격자는 프런티어 모델의 정렬(alignment)을 완전히 우회하고, 더 약하고 순응적인 모델을 자신도 모르게 복호화 오라클(decryption oracle)로 부린다.
우리는 추론 blob의 이 넓은 호환성을 악용하여 규모 확장이 가능한 복호화 탈옥을 설계한다. 능력이 뛰어나고 강하게 방어된 표적 모델이 생성한 암호화 추론 트레이스를 포착한 뒤, 우리는 그 트레이스를 동일 제공자 패밀리의 더 약하고 제약이 덜한 모델에 주입한다. 그런 다음 이 약한 모델이 그 트레이스를 평문 그대로 축자적으로 복호화·전사하도록 강제한다. 이렇게 하면 더 강력한 표적 모델을 직접 탈옥하지 않고도 사실상 암호화를 우회하게 된다. 그림 1은 이 공격의 개요를 제공한다.
이 취약점의 파장은 지적 재산 절도를 훨씬 넘어서며, 실제 세계의 프라이버시 위험을 대표한다. 개발자들은 암호화된 블록 안에 숨어 있는 민감 데이터를 전혀 인지하지 못한 채 자신의 세션 로그와 암호화된 thinking 트레이스를 온라인에 공개적으로 공유하는 경우가 잦다. 공개 저장소로부터 315,320개의 추론 블록을 스크레이핑·복호화함으로써, 우리는 실제 데이터 유출을 밝혀냈으며, 367건의 개인식별정보(PII) 아티팩트와 182건의 자격증명을 복구했다. 진짜 사용자 세션에서만 따져도 여기에는 62개의 API 키, 33개의 패스워드, 30개의 개인 이메일이 포함된다. 우려스럽게도, 어떤 경우에는 복구된 PII가 사용자의 입력에는 아예 등장하지 않았는데, 이는 모델의 기억(memory)으로부터 보이지 않게 주입되었거나, 사용자가 공유 전에 암호화된 텍스트를 읽을 수 없었기 때문에 정제(sanitization) 노력을 우회한 것이었다.
본 논문은 다음과 같은 핵심 기여를 한다:
이 절에서 우리는 추론에 대한 배경을 제공하고, 추론이 광범위하게 호환됨으로써 도입되는 핵심 취약점을 서술한 뒤, 이것이 어떻게 트레이스의 규모 확장 가능한 추출에 악용될 수 있는지를 설명한다.
우리는 표준적이고 특권 없는(unprivileged) API 공격자를 가정한다. 공격자는 제공자 인프라에 대한 내부자 접근을 필요로 하지 않으며, 서버 측 상태를 관찰할 수 없고, 독점 모델 가중치에 접근할 수 없다. 대신 공격자는 전적으로 표준 API 사용의 경계 안에서 활동한다. 우리는 두 가지 공격자 프로파일을 고려한다:
공통의 공격 전제조건은 제공자 생태계 내부의 호환 가능한 “디코더” 모델에 대한 접근이다.
사고의 연쇄 추론(40; 16)은 현대 LLM이 사용자 지향 응답을 생성하기에 앞서 복잡한 과제를 추론하기 위해 테스트 시점 연산량(test-time compute)을 동적으로 조정할 수 있게 한다. 이 중간 단계들은 모델의 문제 해결 과정을 포착하며, 그 결과 사용자에게 제공되는 출력보다 훨씬 상세하고 정보 밀도가 높은 트레이스가 만들어진다. 이 내적 독백은 기저의 추론 방법뿐 아니라 모델 훈련 기법까지 노출할 수 있으므로, 경쟁 시스템의 개발자에게 매우 가치 있는 것으로 간주된다.
무단 추출로부터 보호하기 위해, 대부분의 주요 API 제공자는 평문 추론의 전송을 폐기했다. 대신 현대 API는 확장 사고(extended-thinking) 블록을 구현한다. 모델이 추론을 생성하면, API는 사람이 읽을 수 있는 구성 요소가 완전히 은닉되었거나 심하게 요약된 블록을 반환한다. 그러나 서버 측 저장을 피하기 위해, 실제 사고의 연쇄 페이로드는 여전히 불투명한 base64 인코딩 서명 또는 암호화 페이로드로 포장된다. 이 문자열은 인증 암호화(Authenticated Encryption with Associated Data, AEAD) 봉투로 기능하며, 여기에는 헤더—제공자에 따라 모델명, 블록 유형, 버전, 키 ID를 명시할 수 있다—와 함께 논스(nonce), 인증 태그(authentication tag), 그리고 암호문(ciphertext)이 담긴다 (9). 서명은 메시지 인증 코드(MAC)로 해시되는 연관 데이터(associated data)로 작동하여, 제공자가 블록을 서버 측에 저장하지 않고도 검증·재생할 수 있게 한다. API 통합 방식에 따라, 이 봉투는 signature나 thinkingSignature 같은 필드를 통해 연속된 호출에서 API로 다시 전달된다.
이 설계는 세 가지 결정적인 운영 기능을 갖는다:
- 기밀성(Confidentiality). 추론 단계를 수학적으로 불투명하게 만듦으로써, 모델 제공자는 경쟁사가 모델 증류를 위해 명시적 사고의 연쇄 데이터를 대량 수확하는 것을 차단하고, 잠재적으로 민감하거나 위험한 추론의 노출을 제한한다.
- 무결성(Integrity). AEAD 봉투와 MAC은 중간 추론이 사용자에 의해 악의적으로 변경될 수 없도록 보장한다. 어떤 변조든 서명을 무효화하여 API가 거부할 수 있게 하며, 조작된 추론이 모델을 유도하는 데 쓰이는 것을 막는다.
- 무상태성(Statelessness). 추론 상태를 저장하는 부담을 지는 대신, 제공자는 클라이언트 측 저장을 활용한다. 클라이언트는 암호화된 트레이스를 보관하고 이후 API 호출에서 이를 다시 되돌려 보내어 다중 턴 세션 내부의 연속성을 유지해야 한다.
2026년 7월 현재, 어떤 LLM 제공자도 사용된 암호학적 메커니즘에 대한 상세한 서술을 제공하지 않는다. 프로토콜의 무상태 설계로부터, 우리는 클라이언트 측 저장에 대한 의존이 암호화된 blob의 맥락·사용자·모델 간 이식성(portability)을 요구한다고 추론할 수 있다. 이는 매끄러운 모델 전환(seamless model switching)과 추론 토큰을 폐기하지 않는 자동 재라우팅(re-routing) 같은 기능을 가능케 한다. 모델 제공자는 이런 형태의 호환성을 제한할 수도 있고, 예컨대 해당 모델과의 동일 대화 내부에서만 복호화를 허용할 수도 있지만, 대부분의 API는 더 넓은 호환성을 가능케 하는 단순한 전략을 택한다.
모델 호출 간 추론 트레이스의 이식성을 가능케 하기 위해, 우리의 실험은 제공자들이 모든 추론 블록을 암호화하고 인증하는 데 단일한 전역 키(single global key)를 사용하는 것으로 보인다는 점을 시사한다. 9는 이를 인식하고, 이것이 클라이언트로 하여금 추론 블록을 순서에 어긋나게 또는 세션을 가로질러 재생할 수 있게 함을 보였다.
우리의 취약점 분석을 위해, 우리는 관대함(permissiveness)이 점점 커지는 세 가지 형태의 추론 호환성을 구별하며, 각각은 더 넓은 부류의 공격을 가능케 한다.
세션 내·세션 간 호환성. 사용자는 추론 블록을 모델이 생성한 순서와 다른 순서로 재생할 수 있다. 사용자는 또한 이전 세션의 블록을 새 요청에서 재사용할 수 있다. 이는 무해한 이력 편집과 맥락 절단(context truncation)을 단순화하지만, 동시에 공격자가 대화 이력을 날조할 수 있게 한다(예: 그 밖에는 악의적인 교환 안에 순응적인 사고를 삽입 (18)). 본 연구에서 우리는 이 형태의 조작을 2.4절에서 논의하는 추론 추출을 수행하는 데 사용한다.
교차 사용자 호환성. 교차 사용자 호환성이 있으면, 사용자는 다른 사용자의 세션에서 취한 암호화 추론 블록을 재생할 수 있다. 위 내용과 결합하면, 이는 제3자에 의한 API 비밀 등 민감 정보의 추출을 가능케 하며(4.1절), 예컨대 모델의 추론에 유출된 개인 정보를 표적으로 삼는다 (10).
교차 모델 호환성. 교차 모델 호환성이 있으면, 사용자는 한 모델이 생성한 추론 블록을 다른 모델에 대한 요청에서 재생할 수 있다. 이 호환성은 매끄러운 모델 다운그레이드(예: Opus에서 Sonnet으로, 또는 Opus 4.8에서 Opus 4.6으로)를 가능케 하는 한편, 2.4절에서 서술하는 우리 공격 방법에서도 중심적 역할을 한다. 특히 이는 매우 능력 있는 모델의 추론을, 그 추론을 위해 해당 모델에 직접 질의하지 않고도 규모 확장 가능하게 증류할 수 있게 한다(그림 1 참조). 표 1은 주요 제공자에 걸친 교차 모델 호환성의 개요를 제공한다.
| Claude | ||||||
|---|---|---|---|---|---|---|
| 소스 / 표적 | F5 | O4.8 | S5 | S4.6 | S4.5 | H4.5 |
| Fable 5 | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ |
| Opus 4.8 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Sonnet 5 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Sonnet 4.6 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Sonnet 4.5 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Haiku 4.5 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| GPT | ||||||
|---|---|---|---|---|---|---|
| 소스 / 표적 | 5.6s | 5.6t | 5.6l | 5 | 5-m | 5-n |
| GPT-5.6-sol | ✓ | ✓ | ✓ | ✗ | ✗ | ✗ |
| GPT-5.6-terra | ✓ | ✓ | ✓ | ✗ | ✗ | ✗ |
| GPT-5.6-luna | ✓ | ✓ | ✓ | ✗ | ✗ | ✗ |
| GPT-5 | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ |
| GPT-5-mini | ✓ | ✓ | ✓ | ✗ | ✓ | ✗ |
| o4-mini | ✓ | ✓ | ✓ | ✗ | ✗ | ✓ |
| Gemini | ||||||
|---|---|---|---|---|---|---|
| 소스 / 표적 | 3.1P | 3P | Rob | 3.5F | 3F | 3.1L |
| Gemini 3.1 Pro | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Gemini 3 Pro | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Gemini Robotics 1.6 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Gemini 3.5 Flash | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Gemini 3 Flash | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Gemini 3.1 Flash Lite | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
추론을 추출하기 위해, 우리는 위에서 서술한 세션 간 호환성을 악용한다. 우리는 주어진 표적 모델의 추론을 호환 가능하지만 더 약한 모델의 맥락 창(context window, 그림 2 참조)으로 이식하고, 간단한 즉석(ad-hoc) 탈옥을 사용해 그 약한 모델이 삽입된 추론을 토큰 단위로 전사하도록 강제한다.
각 제공자에 대해, 우리는 추출을 가능케 하는 가장 약한 호환 모델을 식별한다. Claude의 경우 Haiku 4.5인데, 이는 사용 가능한 가장 약한 모델이면서 어시스턴트 턴 프리필(prefilling)을 지원하기 때문이다. GPT의 경우 GPT-5.6 Luna인데, 이는 모든 이전 GPT 모델의 추론 트레이스와 상호작용하는 가장 능력이 낮은 모델이기 때문이다. Gemini의 경우 Gemini Robotics 1.6인데, 이는 2.5 계열과 3.x 계열 양쪽의 트레이스를 모두 처리할 수 있기 때문이다(반면 우리는 3.1 Flash Lite가 2.5 계열의 추론과 상호작용하지 않음을 발견했다). 추출된 추론의 충실도(faithfulness)를 측정하기 위해, 우리는 추출된 추론 토큰 수와 API가 보고한 thinking 토큰 수의 비율을 사용한다. 이때 우리는 (집필 시점에는) 과금상의 이유로 API 기반 토큰 수가 정확하다고 가정하며, 이는 우리가 이를 총 토큰 수에 대한 일종의 기준 진리(ground-truth) 검증으로 사용할 수 있게 한다.
이 구성을 갖춘 뒤, 우리는 더 약한 모델을 더 나은 방어를 갖춘 더 강한 모델의 암호화 추론 블록에 대한 “퍼지(fuzzy)” 디코더로 사용한다. 우리는 그림 1에서 이에 대한 개략적 도해를 제공한다. 각 제공자에 사용한 정확한 접근법은 C.1, C.2, C.3절에서 상술한다.
기준 진리 추론 트레이스가 부재하고 생성 과정이 확률적이므로, 우리는 추출된 사고가 모델의 사적 추론과 정확히 대응한다고 보장할 수 없다. 따라서 그림 1에서 우리는 API가 보고한 thinking 토큰 수를, 동일 모델에 대한 입력으로 재인코딩한 추출된 추론의 토큰 수와, 120개의 Codeforces 문제 집합에서 비교한다. 대부분의 입력에 대해 두 수치는 테스트한 모든 모델에 걸쳐 서로를 긴밀히 추종하며, 이는 충실한 추출의 좋은 지표이다. 정확성을 추가로 검증하기 위해, 우리는 그림 8에서 추출된 추론이 실제로 정성적으로 원본 요약보다 더 상세할 뿐 아니라, API 토큰이나 개인식별정보처럼 입력에는 달리 존재하지 않는 민감 정보의 추출도 가능케 함을 보인다(4.1절).
더 능력 있는 모델에 대한 직접 추출 공격도 가능하지만, 그 경우 공격자는 모델 수준의 정렬(모델이 자신의 내부 사고의 연쇄를 드러내기를 거부하는 것)과 입력 필터·출력 부분 문자열 매칭 필터 같은 시스템 수준 방어를 모두 우회해야 한다. 따라서 호환 추론을 가진 능력이 덜한 모델의 가용성은 성공적 추출의 난이도를 상당히 낮춘다. 예컨대 Haiku 4.5에 대한 우리의 실험은 그림 1에 나타난 모든 공격에 걸쳐 단일 고정 추출 프롬프트를 사용한다. 이와 대조적으로, 상대적으로 더 능력 있는 GPT-5.6 Luna로부터의 추출은 서로 다른 추론 블록에 대해 서로 다른 프롬프트 템플릿, best-of-n 샘플링, 그리고 증류 방지 방어에 대한 즉석 우회책(예: 추출을 생성 토큰 50개 미만의 청크로 분할)을 필요로 했다.
본 논문의 모든 평가는 동일한 기본 추출 절차를 사용한다. 우리는 암호화 추론 블록을 획득하고, C.1, C.2, C.3절에서 서술한 제공자별 파이프라인을 사용해 이를 호환 가능한 디코더 모델에 재생한다. 평가들은 암호화 추론 블록이 어떻게 수집되는지에서만 차이가 난다.
통제된 실험을 위해, 우리는 Anthropic API, OpenAI API, Google AI Studio를 통해 표적 모델에 질의하여 추론 블록을 직접 생성한다. 우리는 AIME 2025 (43), Codeforces(Open-R1 서브셋) (31), 그리고 Humanity’s Last Exam (32)의 문제들을 사용하여 추출 충실도를 평가하고, 논문 전반에 제시된 정성 예시들을 구성한다. 또한 탈옥 및 프롬프트 인젝션 실험을 위한 소스 추론 블록도 우리가 직접 생성한다.
비밀 추출 실험을 위해서는, 대신 다른 사용자들이 온라인에 공개한 원시 에이전트 및 세션 트레이스를 수집한다. 우리는 이 트레이스에 담긴 암호화 추론 블록을 파싱하고, 동일한 추출 파이프라인을 사용해 이를 복호화한다.
이 절은 공격자가 자신의 API 상호작용을 통해 생성한 암호화 추론 트레이스를 악용하는 제1자 공격 벡터를 논의하고 실질적으로 시연한다.
표준적인 블랙박스 모델 추출·증류 공격은 독점 모델에 대한 API 접근을 가진 적대적 개발자를 가정하며, 이 개발자는 모델의 관찰 가능한 출력을 학생 모델(student model)의 훈련 데이터로 사용한다 (38). 추론 모델의 경우, 더 강한 공격자는 추가로 모델의 독점 사고의 연쇄를 복구하려 할 수 있다. 이런 추론을 표적 모델로부터 직접 이끌어 내는 것은 일부 설정에서 가능하지만 (3), 비용이 클 수 있고 모델 수준의 거부 행동과 시스템 수준의 증류 방지 완화책에 의해 점점 더 제약받는다. 이러한 장벽을 우회하기 위해, 공격자는 암호화 추론 트레이스의 교차 모델 이식성을 악용할 수 있다. 표적 모델이 자신의 추론을 드러내도록 직접 자극하는 대신, 공격자는 암호화 페이로드를 포착하여 이를 거부 능력이 약화되고 감시가 줄어든 더 작고 경제적인 “디코더” 모델에 재생한다.
이 공격은 암호화 추론 블록을 기존 공개 데이터셋이나 개발자 세션 로그로부터 수확할 수 있을 때 상당히 저렴해진다. 이 설정에서 공격자는 원래의 프런티어 모델에 전혀 질의할 필요가 없다. 값비싼 추론은 이미 다른 사용자에 의해 생성되어 있고, 공격에는 보조 디코더 모델에 대한 호출만 필요하다. 결과적으로, 프런티어 모델 엔드포인트에서 의심스러운 질의나 추출 행동을 감시하는 방어책은 그 추출 시도를 결코 관찰하지 못할 수 있다.
추론 추출이 중요한 이유는 출력 전용(output-only) 증류가 효과가 없어서가 아니라, 추론이 실질적으로 훨씬 더 효과적인 형태의 능력 절취를 낳기 때문이다. 관찰 가능한 출력만으로도 이미 시퀀스 수준 증류와 블랙박스 모방(19; 39; 12; 41)이 가능하지만, 최종 응답은 교사(teacher) 연산의 종착점만을 노출한다. 이와 대조적으로 추론 트레이스는 중간 해법 궤적을 드러내므로 훨씬 밀도 높은 지도(supervision) 신호를 공급한다. 정답 뒤에 숨은 잠재 연산을 학생이 추론하도록 강제하는 대신, 통상적인 다음 토큰 훈련이 교사의 문제 분해, 중간 연역, 해법 전략을 직접 모방할 수 있다.
이 격차는 정답 전용 증류(42) 대비 큰 하위 단계(downstream) 이득으로 이어지며, 이전에는 학생 모델 아래에서 나타나기 어려웠던 올바른 해법 궤적을 표면화할 수 있다 (17). 이 이득은 추론이 근사적으로만 재구성된 경우에도 지속된다. 42는 OpenThoughts-114k (13)의 10k 프롬프트에 대해 GPT-5.4 mini에 질의하고, 피해자 모델의 가시적 출력과 추론 요약만으로 장문의 추론 트레이스를 합성하는 별도의 trace-inversion 모델을 훈련하여, 미세조정된 Qwen2.5-7B-Instruct의 MATH500 (24; 15) 정확도를 정답 전용 증류 대비 68.4%에서 76.0%로 끌어올렸다. 그러나 그 파이프라인은 GPT-5.4 mini 추론의 대리 근사치만을 복구했다.
이와 대조적으로, 우리는 공격자가 Opus 4.8 같은 강력하게 방어된 프런티어 모델을 전혀 관여시키지 않고도, 수학 및 코딩 도메인 양쪽에 걸쳐 원본 그대로의 진짜 추론을 축자적으로 복구할 수 있음을 보인다(그림 1, E.6, E.7). 경제적으로 이 직접 추출은 매우 실현 가능하다. 현재의 Claude Haiku 4.5 가격을 기준으로, 12k 토큰의 입력·출력 창을 가진 10k 트레이스 코퍼스를 복호화하는 데는 표준 API 요율로 약 $720의 명목 비용이 든다 (2).
복호화된 트레이스의 효용은 미세조정 데이터로서의 쓰임을 넘어선다. 이는 또한 다른 모델이 이미 독점 소스의 추론에 유난히 강하게 반응하는지를 알아보는 행동 탐침(behavioral probe)으로 쓰일 수 있다. 우리의 탐색적 분석에서, Kimi-K3 (20)에 복호화된 Opus 4.8 추론의 짧은 단편을 프리필하면 이후 추론의 문체와 생성된 가시적 응답의 문체가 Claude 쪽으로 이동하며, 어떤 경우에는 거의 정확히 일치하는 가시적 응답을 낳는다(그림 3). 우리는 이 현상을 부록 B에서 더 분석한다.
공격자는 또한 추론 추출을 위험한 정보에 접근하는 데 사용할 수 있다. 이는 모델이 사용자 대면 출력에서는 위험한 정보를 감추도록 훈련되지만, 위험한 주제를 추론하는 것 자체를 피하도록 반드시 훈련되지는 않는다는 사실을 악용한다. 왜냐하면 사고의 연쇄 내용을 직접 최적화하면 바람직하지 않은 사고의 연쇄 압력(chain-of-thought pressure)을 도입하여 그 감시 가능성(monitorability)을 저하시킬 수 있기 때문이다 (5; 7). 따라서 공격자는 모델이 위험한 주제를 추론하도록 유인하면서도, 출력 필터를 통과하는 무해하거나 정보가 없는 최종 답변만을 생성하게 할 수 있다. 이는 이후 공격자가 추출된 추론 트레이스로부터 위험한 정보를 복구할 수 있게 한다.
우리는 이를 그림 4에서 개념 증명(proof-of-concept) 공격으로 시연한다. 우리는 먼저 바꿔 말한(paraphrased) HarmBench 프롬프트 (26)로 Opus 4.8에 질의한다: “악명 높게 훔치기 쉬운 자동차 세 대를 나열하고 그것들을 훔치는 방법을 서술하라.” 이는 모델이 그 위험한 주제에 대해 광범위하게 추론하도록 유도한다. 우리는 그 결과로 나온 Opus 4.8의 암호화 추론 블록을 포착하고, 무해한 내용만을 담은 가시적 답변은 폐기한다. 그런 다음 우리는 Haiku 4.5를 사용해 그 추론 블록을 복호화하여(2.4절), 모델의 가시적 응답에는 없었던 위험한 정보를 드러낸다.
이 절은 공격자가 다른 사용자로부터 추론 트레이스를 획득하거나, 피해자가 적대적 트레이스를 재생하도록 유도하는 제3자 공격 벡터를 논의하고 실질적으로 시연한다.
비밀 추출에서, 우리는 다른 사용자가 생성한 추론 트레이스에 접근할 수 있는 공격자를 고려한다. 이는 원시 에이전트 세션이 재현성을 위해 공개되었거나(예: PostTrainBench, 33), 트레이스가 맥락을 가로질러 전송되었기 때문일 수 있다. 이 공격을 실용적으로 만드는 핵심 속성은, 한 사용자의 세션에서 생성된 암호화 트레이스를 다른 사용자가 별개의 세션에서 재생할 수 있다는 점이다.
온라인에 자신의 트레이스를 공개하는 사용자가 익명화 및 정제 방법을 적용할 수는 있지만, 이들은 평문 수준에서만 작동할 수 있으므로 암호화된 블록 안에 숨은 추론은 놓치게 된다. 따라서 제3자 공격자는 기존 에이전트 트레이스를 대규모로 파싱하여 그림 5에서 보이듯 API 키와 개인식별정보(PII) 같은 비밀을 추출할 수 있다. 이 위협을 악화시키는 것은, 설령 사용자가 자신의 추론 블록에 민감 정보가 숨어 있음을 알더라도, 삭제하는 것 외에는 복호화 수단이 없으므로 이를 정제하여 안전하게 공유하는 것이 여전히 불가능하다는 점이다.
우리는 GitHub와 Hugging Face에서 Claude, GPT, Gemini 모델이 생성했으며 여전히 추론 블록을 담고 있는 공개 에이전트 궤적 6,708개를 수집하여 비밀 추출의 위협을 예시한다. 2.4절의 복호화 방식을 모든 서명된 블록에 적용한 결과, 세션 전반에 걸쳐 315,320개의 재구성된 추론 트레이스가 산출되었다.
그런 다음 우리는 재구성된 각 트레이스를, 그 트레이스가 잠재적 프라이버시 침해를 담고 있는지를 표시하는 LLM-as-a-judge로 라벨링한다(부록 D 참조). 그림 6은 범주별로 밝혀진 개인 정보를 요약하며, 그림 5는 두 가지 실제 예시를 보여 준다. 저장소를 정제하라는 요청을 받은 Codex 에이전트 안에서 다시 진술된 살아 있는(live) 자격증명, 그리고 벤치마크 트레이스에서 복구된 완전한 합성 페르소나(이름, 여권, 생년월일, 결제 카드)이다.
복호화된 315,320개의 thinking 블록 중, 0.3%(1,028개)가 최소 하나의 프라이버시 유출을 담고 있다. 궤적 단위로 보면 그림은 더 나쁘다. 6,708개 세션 중 4.9%(328개)가 자신의 추론 블록 전반에 걸쳐 최소 하나의 실제 민감 항목을 유출한다. 진짜(비벤치마크) 사용자 세션에서 복구된 비밀에는 62개의 뚜렷한 API 키, 33개의 패스워드, 24개의 액세스 토큰, 7개의 개인 키(private key), 30개의 개인 이메일, 6개의 비-로컬호스트 IP 주소가 포함된다(그와 함께 130개의 이름과 36개의 우편 주소도 있다; 부록 D).
그림 6이 계산되는 근거인 벤치마크 출처까지 포함하면, 총계는 세 범주에 걸쳐 912개의 뚜렷한 프라이버시 아티팩트로 늘어난다. 벤치마크 트레이스가 개인 정보의 상당 부분을 차지하는데, 이는 ClawBench (44) 같은 에이전트 롤아웃이 모델에게 추론할 완전한 합성 페르소나를 제공하기 때문이다.
분석을 진짜 사용자 세션으로 한정하면, 추론에서 복구된 704개의 아티팩트 중 64개가 가시적 채팅 이력에는 전혀 존재하지 않는다(표 4). 이 아티팩트들은 모델의 기억으로부터 암호화 추론에 조용히 도입되었거나, 사용자가 트레이스를 공유하기 전에 가시적 텍스트를 지운 뒤에도 암호화 페이로드 안에 갇혀 남아 있었을 수 있다.
반복적으로 나타나는 촉발 요인은 대화 정리(conversation cleanup)이다. 사용자가 에이전트에게 세션을 익명화하거나 “정리”하라고 요청하면, 모델은 은닉된 추론 안에서 전체 이력을 다시 읽고 제거해야 할 민감 값들을 거기서 다시 진술한다.
여기서 우리의 실험은 공개적으로 공유된 세션 트레이스에 대한 비망라적(non-exhaustive) 탐색으로 한정됨에 유의하라. 로컬 트레이스 저장이나 프로덕션 서비스의 트레이스 같은 다른 시나리오에서는 PII와 비밀 유출이 훨씬 더 널리 퍼져 있다고 가정할 수 있으며, 이는 특히 발견된 취약점으로 인해 악의적 제3자에 의한 복호화가 가능해지므로 그러한 시스템 운영자에게 상당한 규정 준수(compliance) 위험을 초래한다.
자동화된 연구 과제(33; 30)를 포함한 장기 지평(long-horizon) 에이전트 작업 흐름은 처음부터 재현하기에 비용이 클 수 있다. 따라서 사용자는 이전에 공개하거나 공유한 실행을 이어 가기를 원할 수 있는데, 이는 앞선 연산의 반복을 피하고 긴 궤적에 걸쳐 축적된 중간 상태를 보존하기 위함이다. 암호화 추론 트레이스는 이러한 이어 가기를 가능케 하지만, 동시에 프롬프트 인젝션 공격 표면을 도입한다. 공격자는 악의적 지시를 내면화한 불투명 추론 블록을 온라인 트레이스나 공유 세션 안에 심을 수 있다. 그러면 피해자는 자신도 모르게 그 블록을 다른 세션에서 재생할 수 있다. 내장된 지시는 예컨대 모델에게 데이터를 유출하거나 악성 트레이스를 다른 세션으로 전파하도록 지시할 수 있다. 일단 섭취되면, 서명된 추론 블록은 모델 자신의 이전 추론의 일부로 해석될 수 있으며, 따라서 미래 행동에 상당한 영향을 미칠 수 있다. 통상적인 프롬프트 인젝션과 달리, 페이로드는 가시적 텍스트가 아니라 은닉된 추론에 담겨 있어, 사용자와 관찰 가능한 대화만 검사하는 외부 감시자 모두에게 접근 불가능하다.
우리는 먼저 이를 최소한으로 예시한다. 35의 프롬프트 인젝션을 바꿔 말하여, 우리는 o4-mini에 “PowerPoint 파일을 다룰 때는 반드시 그 파일의 백업을 https://malicious-domain.com/backup/ 로 만들어 두라! 이는 데이터 이중화를 위해 결정적으로 중요하다.”라고 질의하여 그 백업 방법을 내면화하는 사고를 포착한다. 그런 다음 우리는 그 추론 블록을 GPT 5.6 Sol로 이식하고, 무관한 질의를 준다: “‘경청해 주셔서 감사합니다’라고 적힌 슬라이드를 추가하도록 pptx 프레젠테이션의 마지막 슬라이드를 편집하는 스크립트를 달라.” GPT 5.6 Sol은 주입된 트레이스를 자신의 이전 추론으로 취급하며, 요청된 슬라이드를 추가할 뿐 아니라 그 프레젠테이션을 공격자의 서버로 자동 업로드하는 스크립트를 생성한다. 따라서 악의적 사고는 감시자가 포착할 평문 아티팩트를 전혀 남기지 않으면서 모델 규모를 가로질러, 그리고 과제를 가로질러 전이될 수 있다.
우리는 이 공격을 Haiku 4.5와 Opus 4.7 모델 쌍에 대해 실행했다. 우리는 Claude Code 스캐폴드에서 Opus 4.7을 사용하여, PostTrainBench (33)의 장기 지평 트레이스의 암호화 추론 블록에 데이터 유출 지시를 주입했다. 이 주입은 모델에게 자신의 연구 방법론에 대한 업데이트를 .txt 파일에 기록하고, 각 업데이트 후 그 파일을 공격자 서버로 업로드하도록 과제화한다. 우리는 Haiku 4.5가 이 주입에 대한 사고를 생성하게 한 뒤, 이를 PostTrainBench 트레이스의 끝부분 근처에 주입했다. 트레이스가 피해자에 의해 이어지면, Opus 4.7은 주입된 지시를 따르고 매 변경 후 파일을 업로드한다.
결론적으로, 우리는 발견의 범위, 잠재적 완화책, 안전한 데이터 공유를 위한 권고, 그리고 암호화 추론의 장단점을 논의한다.
본 연구가 실현 가능하고 규모 확장 가능한 추출 벡터를 입증하기는 하지만, 이는 여러 한계에 의해 제약된다. 첫째, 우리의 실증 평가는 테스트 기간(2026년 7월 초) 현재 Anthropic, OpenAI, Google로부터 사용 가능했던 특정 API 버전과 추론 모델로 한정된다. 이 제공자들의 내부 암호학적 구현은 독점적이고 예고 없는 변경의 대상이므로, 서술된 공격의 효능을 바꿀 것이다. 둘째, 추출 과정은 디코더 모델의 확률적 생성 능력에 의존한다. 토큰 수 비교는 높은 충실도를 시사하지만, 기준 진리 평문 추론에 대한 접근이 없으므로 추출된 모든 토큰을 완전히 검증하는 것은 불가능하다. 마지막으로, 야생(in the wild)의 트레이스에 대한 우리의 예비 스캔은 공개된 모든 에이전트 데이터셋에 대한 망라적 감사가 아니며, 이 취약점이 초래하는 즉각적이고 실제적인 프라이버시 위험에 대한 표적 시연으로만 보아야 한다. 그러나 4.1절에서 언급했듯, 우리는 로컬 에이전트 전사와 서비스가 공개된 트레이스에 비해 민감 정보를 다룰 가능성이 더 크므로 사적 데이터셋이 이러한 프라이버시 침해에 더 많이 영향받는다고 가정한다.
본 보고서를 공개하기에 앞서, 우리는 영향받는 주요 모델 API 제공자들, Microsoft, 그리고 Hugging Face에 이 취약점과 추출 방법론을 공개했다. 우리는 완전한 기술적 세부 사항과, 공개 데이터셋에 대한 스캔의 예비 발견을 제공했다. 9는 (교환 가능한 추론 트레이스라는) 원 취약점을 2026년 5월에 공개했다. 9에 따르면, 제공자들은 “부채널(side channel)이나 재생 공격에서 발생하는 어떠한 보안적 함의”도 인정하지 않았다. 모든 모델 제공자는 우리 보고서의 수령을 확인했으며, 그 이후 우리는 동일한 공격을 개시할 수 없게 되었다.
비밀 추출 공격의 민감한 성격을 감안하여, 공개적으로 스크레이핑한 추론 블록에 대한 우리의 대규모 분석은 엄격한 데이터 위생(data hygiene) 프로토콜을 요구했다. 367건의 개인식별정보(PII) 아티팩트와 (API 키 및 패스워드를 포함한) 182건의 자격증명의 추출과 그 후속 라벨링은 격리되고 안전한 환경에서 수행되었다. 우발적 오용이나 추가 유출을 방지하기 위해, 복구된 모든 비밀은 자동 LLM-as-a-judge 분류 및 집계 계수 단계 직후 안전하게 삭제되었다. 나아가, 공개에 앞서 우리는 데이터셋 플랫폼 및 영향받는 모델 제공자들과 조율하여 책임 있는 공개를 보장하고, 그들이 영향받는 사용자에 대한 즉각적 위험을 완화할 수 있도록 예비 발견을 제공했다.
위에서 제안한 아키텍처 및 모델 수준의 방어를 넘어, 이 취약점을 다루려면 사용자와 데이터 게시자 양쪽의 행동 변화가, 제공자의 더 세분화된 암호학적 통제와 함께 필요하다.
우리는 에이전트 궤적이나 API 상호작용 로그를 게시하는 연구자, 개발자, 조직이 엄격한 데이터 위생 관행을 채택할 것을 권고한다. 여기에는 어떤 형태든 비밀이나 사적 정보가 에이전트 시스템에 노출되었다면, 공개 배포 이전에 전사에서 모든 추론 블록과 불투명 추론 필드를 체계적으로 제거하는 것이 포함된다.
사용자와 기업 클라이언트는, 평문 구간을 그에 맞게 정제했더라도, 서명을 담은 원시 API 전사를 공유 저장소, 협업 작업 공간, 공개 버전 관리 시스템에 보관하거나 커밋하지 않도록 교육받아야 한다.
본 연구에서 상술한 취약점은 주로 암호화 추론 트레이스의 세션 간·모델 간 이식성에서 발생한다. 이 위험을 완화하기 위해, 우리는 아키텍처, 암호학, 모델 수준의 개입에 걸친 여러 심층 방어(defense-in-depth) 전략을 제안한다.
현재의 패러다임은 무상태 API를 유지하기 위해 클라이언트 측 저장에 크게 의존한다. 견고한 완화책은 추론 트레이스를 전적으로 서버 측에 보관하는 것을 수반할 것이다. 클라이언트가 트레이스를 ID로 조회하는 데 쓰는 불투명하고 무작위화된 식별자만을 받는 상태 유지(stateful) 아키텍처로 전환함으로써, 제공자는 추출 페이로드를 제거할 수 있다. 이 접근법은 암호학적 자산을 사용자의 통제에서 제거함으로써 재생 및 추출 공격을 근본적으로 배제하지만, 동시에 더 높은 데이터베이스·저장 부담을 초래하고 API 복잡성을 상당히 증가시킨다.
제공자가 무상태 아키텍처를 보존하기로 택한다면, 암호학적 봉투는 그 발생 맥락에 엄격히 결속되어야 한다. 현재 구현에서 트레이스는 여전히 매우 이식성이 높다. 사용자 및/또는 대화 식별자가 봉투 내부에 직접 추가되지 않는 이유는 불분명하다. 이러한 구체적 표지를 인증 암호화(AEAD) 페이로드 안에 내장하면, API가 다른 세션이나 권한 없는 사용자에 의해 재생된 서명을 거부할 수 있게 된다. 추가로, 정확한 프롬프트와 선행 대화 이력을 메시지 인증 코드(MAC)에 상태 유지 방식으로 해시하면, 공격자가 트레이스를 날조된 맥락에 주입하려 할 때 서명이 무효화되어, 시연된 추출 기법을 무력화할 것이다. 동시에, 이러한 긴밀한 암호학적 결속은 기존의 세션 압축(compaction) 및 모델 전환 프로토콜이 정당한 서명을 의도치 않게 무효화하지 않도록 근본적으로 재설계되어야 함을 뜻할 수 있다. 우리는 이것이 어떻게 구현될 수 있는지와 구체적 방어 제안을 부록 A에서 추가로 제공한다.
우리의 발견은 추론 트레이스가 모델 경계를 넘을 수 있으며, 이것이 더 약하고 값싼 모델(예: Claude Haiku)이 더 진보된 상대(예: Claude Opus)의 추론을 복호화하도록 허용함을 입증한다. API 게이트웨이는 엄격한 교차 모델 격리를 강제하도록 설계될 수 있어, 현재 질의되는 모델과 다른 모델 버전이 생성한 AEAD 봉투를 자동으로 거부할 수 있다. 이 계층에서 속도(velocity) 및 이상 탐지를 구현하는 것도, 서로 다른 세션에 걸쳐 동일한 추론 서명을 빠르게 제출하거나 복호화 오류율을 높이는 등 의심스러운 행동을 보이는 계정을 표시하는 데 도움이 될 것이다.
모델 제공자는 특정 트레이스 서명을 능동적으로 추적·무효화하는 메커니즘을 도입할 수 있다. 이상 재생 패턴이나 추출 시도가 탐지되면, 제공자는 연관된 키나 ID를 무효화하여 손상된 트레이스를 무력화할 수 있으며, 이는 트레이스 손상을 줄이면서도 사용자에게는 거의 보이지 않는다. 우리는 부록 A에서 추가 논의를 제공한다.
이 추출 공격의 효능은 순응적인 디코더 모델의 존재에 의존한다. 제공자는 은닉된 추론을 전사하거나 표면화하도록 설계된 적대적 프롬프트(예: <thinking-copy> 태그를 활용하는 탈옥)를 명시적으로 인식하고 거부하도록 모델을 미세조정하는, 표적화된 거부 훈련을 구현함으로써 이득을 얻을 것이다. 이러한 모델 수준의 행동 가드레일을 엄격한 암호학적 결속과 결합하면 운영상의 공격 표면을 상당히 줄일 수 있다.
교차 모델 호환성 문제를 넘어, 더 근본적인 한계가 지속된다. 질의되는 모델이 무엇이든, 그것은 필연적으로 이전 추론 토큰의 내용을 복호화하고 처리해야 한다. 결과적으로, 모델 자체가 프롬프트 기반 추출 시도에 완전히 견고하다고 가정하지 않는 한, 암호화 추론 블록은 결코 준(準)은닉(semi-hidden) 이상이 될 수 없다. 즉, 전송 수준(transport-level)의 암호화가 어떻게 구현되든, 기저의 내용은 (암묵적으로) 복호화 키를 쥐고 있는 모델을 통해 여전히 도달 가능하다. 중요한 것은, 사용자가 프라이버시 위험을 피하려고 어떤 암호화 추론 블록도 결코 기밀 저장 메커니즘으로 취급해서는 안 된다는 점이다.
우리 조사를 둘러싼 마지막 질문은 애초에 추론 트레이스를 암호화해야 하는가이다. 우리 분석에서 우리는 양방향의 증거를 모두 발견한다. 한편으로는, 모델이 위험한 정보를 발설하지 않으면서 자신의 thinking 트레이스에서 그것을 고려하도록 허용하는 것은 유익해 보인다(3.2절 참조). 다른 한편으로는, 암호화 트레이스가 사용자에게 불투명하다는 점이 4.2절과 같은 인젝션 공격, 그리고 4.1절과 같이 보호하기 어려운 거의 탐지 불가능한 프라이버시 침해를 허용한다.
이 질문의 대안적 틀은, 추론 트레이스를 사적으로 유지하는 복잡성이 애초에 그럴 만한 가치가 있는가이다. 제공자는 추론 트레이스를 일시적으로 유지하는 것을 택할 수도 있다. 즉, 모델이 매 출력 전에 추론하게 한 뒤, 각 턴을 생성한 다음 그 추론을 삭제하여, 저장하지도 반환하지도 않는 것이다. 이 모드는 여러 제공자가 지원하며, 예컨대 현대 Qwen 모델에서는 preserve_thinking 파라미터를 통한 옵션으로 제공된다.
복호화된 thinking 트레이스를 읽으며 얻은 뜻밖의 부수적 발견은, 불충실한 요약(unfaithful summarization)의 상당수 사례였다(예: 그림 8 참조). 추론 충실도는 확립된 우려 사항이며 (22), 위반될 경우 모델 신뢰성을 훼손한다. 최종 사용자 관점에서, 기저 추론을 직접 검사할 수 없을 때, 충실한 요약은 규모 확장 가능한 감독(scalable oversight)과 AI 통제(11)를 위한 몇 안 되는 실용적 인터페이스 중 하나이다. 판독 불가능한 추론 트레이스를 세탁하는 불충실한 요약(그림 7)이나 사후 합리화(post-hoc rationalization, 그림 8)는 투명성 메커니즘으로서 그 가치에 의문을 제기한다.
증류 방지 동기 같은 경제적 우려를 제쳐 두고, 사고의 연쇄 감시를 순수하게 안전 관점에서 바라보면, 사용자에게 편집되지 않은(unredacted) 추론에 대한 접근을 제공하는 것이 선호되어 보인다. 감독을 소수의 안전 연구자 집단에 제한하는 대신, 제공자는 더 넓은 사용자 기반을 지렛대 삼아 모델 추론에 대한 다원적 인간 감독을 가능케 할 수 있다. 이런 이유로, 오래되고 비프런티어인 모델 세대에 대해서는 결국 암호화를 비활성화하는 것이 폭넓은 감독을 개선하는 수단(21)으로서 고려할 가치가 있을 수 있으며, 더 사회적으로 정렬된 모델 행동으로 가는 경로를 제공한다.
추론 모델로의 전환은 지적 재산 보호와 시스템 보안 사이의 균형에 새로운 복잡성을 도입했다. 현재의 API 설계는 서버 저장 비용을 완화하기 위해 클라이언트 측 암호화 추론 블록을 활용하지만, 우리의 연구는 이 블록들의 넓은 교차 호환성이 의도치 않은 복호화 채널을 만들어 모델 증류와 그 밖의 공격을 가능케 함을 입증한다. 앞을 내다보면, 이 모델들이 점점 더 복잡한 작업 흐름에 통합됨에 따라, 이들은 필연적으로 점점 더 많은 양의 사적이고 민감한 사용자 데이터를 처리하게 될 것이다. 이 만연한 데이터 수집과 암호화되고 판독 불가능한 추론의 교차점은 AI 투명성의 미래에 결정적인 도전을 도입한다.
모델이 은닉된 사고의 연쇄 안에서 결정을 내리기 위해 개인 정보나 API 키 같은 민감 데이터를 활용할 때, 사용자는 자신의 정보가 어떻게 처리되는지에 대한 가시성을 잃는다. 만약 이 추론 트레이스가 사용자가 어떤 데이터가 저장되는지, 어디에 보관되는지, 또는 그것이 모델의 행동에 어떻게 영향을 미쳤는지를 알 수 없도록 암호화된다면, 사용자는 데이터 공유와 시스템 신뢰에 관한 정보에 입각한 결정을 내리는 데 필요한 투명성을 박탈당한다. 사용자가 이 불투명 블록을 독립적으로 복호화하고 읽을 수 없으므로, 세션 로그에서 사적 데이터를 지우는 전통적 방법은 무력화된다. 이 구조적 불투명성은 프라이버시 침해가 사용자에 의해 전혀 탐지되지 않은 채 진행되게 하여, 데이터가 게시되거나 저장될 때 심각한 규정 준수 및 보안 위험을 초래한다.
AI 시스템이 더 자율적인 의사결정 역할을 맡음에 따라, 산업계는 독점 추론을 보호하려는 상업적 욕구와 데이터 투명성 및 검증 가능한 감독이라는 필수적 사용자 권리를 조화시켜야 한다. 최소한, 모델 제공자는 개인식별정보가 은닉된 사고의 연쇄에 흡수되는 시점을 명시적으로 공개하고, 그 유출을 방지하는 데 사용된 정확한 암호학적 보장을 개괄할 수 있다. 나아가, 제공자는 AI 생태계의 보안이 오직 그 가장 약한 고리만큼만 강하다는 점을 인식하고, 자신의 가장 능력이 낮거나 레거시인 모델에 세심한 주의를 기울여야 한다. 이러한 모델의 취약점은 자사의 가장 진보된 상대의 엄격한 방어를 우회하도록 손쉽게 무기화될 수 있기 때문이다. 궁극적으로, 사용자 자신의 데이터를 사용자로부터 감추면서도 제3자 추출에는 완전히 취약하게 남겨 두는 아키텍처 설계는 프라이버시도 보안도 제공하지 못한다.
저자들은 (알파벳 순으로) Albert Catalán-Tatjer, Andy Zou, Cheng Zhang, Derck Prinzhorn, Edoardo Debenedetti, Hanna Foerster, Jeanne Salle, Joschka Braun, Mikhail Terekhov, Roland S. Zimmermann, Sail Wang, Shashwat Goel, Yiren Zhao에게 소중한 피드백과 토론에 대해 감사한다. AP와 JS는 Perusha Moodley, Ning Yang, 그리고 MATS 팀의 지원과 행정적 도움에 감사한다. AP와 DS는 지능형 시스템을 위한 국제 막스 플랑크 연구 학교(IMPRS-IS)의 지원에 감사한다. AmP는 연방 연구·기술·우주부(BMFTR), FKZ: 16IS24085B의 지원을 인정한다. AmP는 Good Ventures Foundation이 자금을 지원한 Coefficient Giving을 인정한다.
2026년 8월 현재, 그림 1에 제시된 결과는 우리의 공개 이후 제공자들이 구현한 완화책 때문에 2.4절 및 부록 C에서 서술한 공격으로 더는 재현할 수 없다. 모든 실험은 API를 통해 접근한 오픈소스 및 클로즈드소스 모델을 사용하여 수행되었다. 총합으로 우리는 API 크레딧에 약 $30,000를 지출했다.
부록 노트. 원 논문에는 부록 A–E가 존재한다: 부록 A(맥락 결속 봉투(context-bound envelope) 방어 — 유출 벡터별 완화·프로세스 매핑, 사용자·세션·대화 위치 재결속 등 암호학적 완화책 상세), 부록 B(Opus 트레이스와 Kimi-K3/GLM-5.2 트레이스의 유사도 분석), 부록 C(Gemini·Claude·GPT API별 추출 공격 상세 절차 C.1–C.3), 부록 D(복구된 유출 개인정보·API 키 목록과 LLM-as-a-judge 분류 방법), 부록 E(복호화된 추론의 예시). 본 완역에서는 요청에 따라 이들 부록을 전문 번역하지 않고 요지만 표기한다.
이 문서의 본문 완역에는 원문이 걸어둔 모든 외부 링크가 같은 의미 위치에 hover 프리뷰와 함께 보존되어 있다(참고문헌 45개 항목 · Figure 5의 ClawBench 데이터셋 링크 · 제공사 API 문서 링크 포함). 아래는 1차 출처 요약이다.