본문 바로가기

IT & AI

암호화된 LLM 추론이 다른 모델에서 풀렸다

728x90

암호화된 LLM 추론이 다른 모델에서 풀렸다

AI 뉴스 썸네일
AI 뉴스 썸네일

OpenAI, Anthropic, Google의 추론 API가 돌려주는 암호화 블록에서 내부 추론을 복원한 연구가 나왔어요. 연구진은 강한 모델의 블록을 같은 업체의 방어가 약한 모델에게 넘긴 뒤 탈옥해 평문을 얻었어요. 공개된 에이전트 로그에는 API 키와 비밀번호 같은 정보도 남아 있었어요. 2

핵심 요약

구분핵심왜 볼 만한가요
공격 방식강한 모델의 암호화된 추론 블록을 같은 업체의 약한 모델이 읽게 했어요암호문 자체보다 블록을 다른 문맥에서 재사용할 수 있었던 설계가 공격 경로가 됐어요
확인 범위공개 로그 6,708개에서 추론 블록 315,320개를 복원했어요화면에 보이는 대화만 지워서는 민감정보가 남을 수 있어요
현재 상태공급자에게 사전 신고한 뒤 같은 공격은 재현되지 않았어요공개 로그에서 암호화 블록을 제거하는 운영 수칙은 여전히 필요해요

1. 암호화된 LLM 추론은 어떻게 노출됐나요

추론 모델 API는 내부 사고 과정을 서버에 계속 저장하는 대신 암호화된 블록으로 클라이언트에 돌려줄 수 있어요. 클라이언트는 다음 요청에 그 블록을 다시 보내 대화를 이어가요. 연구진이 확인한 당시 구조에서는 블록이 원래 사용자와 세션, 모델에 충분히 묶여 있지 않았어요. 같은 업체의 다른 세션이나 모델에서도 처리할 수 있었어요. 3

연구진은 이 호환성을 이용했어요. 프런티어 모델이 만든 블록을 같은 제품군의 더 작은 모델에 넣고, 작은 모델의 안전장치를 우회해 안쪽 내용을 출력하게 했어요. 강한 모델을 직접 탈옥하지 않고도 그 모델의 숨은 추론을 읽었어요. OpenAI, Anthropic, Google 모델을 대상으로 공격을 시연했어요. 2

이 결과를 암호 알고리즘이 수학적으로 깨졌다고 이해하면 정확하지 않아요. 연구가 겨냥한 곳은 암호화 블록의 재사용 범위와 모델 간 신뢰 경계였어요. 서로 다른 사용자와 세션에서 블록을 받아들이고, 방어 수준이 다른 모델도 같은 블록을 처리할 수 있었던 조건이 겹쳤어요.

728x90

공개 로그에서 실제 비밀 정보가 나왔어요

연구진은 GitHub와 Hugging Face에 공개된 에이전트 실행 기록 6,708개를 조사했어요. 그 안에서 암호화된 추론 블록 315,320개를 복원했어요. 실제 사용자 세션으로 범위를 좁히자, 서로 다른 민감정보 704개가 나왔어요. API 키 62개, 비밀번호 33개, 액세스 토큰 24개가 포함됐어요. 704개 가운데 64개는 화면에 보이는 대화에는 없고 숨은 추론 안에만 있었어요. 2

이 수치는 로그를 공개하기 전에 채팅 본문만 가리는 방식이 부족하다는 뜻이에요. 모델이 작업 중 읽은 환경변수, 인증 정보, 내부 URL이 최종 답변에서 빠졌더라도 추론 블록에는 남을 수 있어요. 에이전트 실행 기록을 버그 제보나 재현 자료로 공유할 때는 서명 값과 암호화된 추론 필드까지 제거해야 해요.

추론 탈취 외에도 공격 경로가 있었어요

논문은 네 가지 위험을 설명해요. 독점 모델의 추론을 가져와 증류에 쓰는 공격, 공개 로그에서 개인정보와 인증 정보를 찾는 공격, 최종 답변에서 숨겨진 유해 정보를 복원하는 공격, 암호화 블록 안에 악성 지시를 넣는 보이지 않는 프롬프트 인젝션이에요. 3

마지막 공격은 에이전트 운영에서 특히 까다로워요. 화면에 드러나지 않는 블록을 신뢰한 채 다음 작업으로 넘기면, 다른 에이전트가 공격자의 지시를 이전 추론처럼 받아들일 수 있어요. 로그를 데이터 세트로 재사용하거나 여러 모델이 같은 대화를 이어받는 시스템이라면 블록의 출처와 무결성을 별도로 확인해야 해요.

왜 중요한가요

AI 서비스 팀은 암호화 여부만 확인하고 안심하기 어려워졌어요. 블록을 누가 만들었는지, 어느 세션과 모델에서만 쓸 수 있는지까지 검증해야 해요. 연구진은 블록을 사용자·세션·대화 위치에 암호학적으로 결합하고, 다른 모델이 만든 블록의 재사용을 차단하라고 제안했어요. 서버가 추론을 보관하고 클라이언트에는 식별자만 주는 방식도 대안으로 제시했어요. 3

연구진은 논문 공개 전에 업체들에 취약점을 알렸어요. 2026년 8월 기준으로 논문에 나온 공격은 같은 방식으로 재현되지 않는다고 밝혔어요. 이미 대응한 공격을 현재도 그대로 통한다고 받아들이면 안 돼요. 다만 과거에 생성해 공개한 로그는 별개예요. 저장소와 데이터 세트에 암호화된 reasoning block, signature, 인증 정보가 남아 있는지 다시 확인할 필요가 있어요. 1

개발자는 에이전트 로그를 공개하거나 외부 분석 도구로 보낼 때 평문 메시지만 검사하지 말아야 해요. 암호화된 필드도 민감정보를 품은 데이터로 취급해야 해요. 여러 모델이 대화를 이어받는 기능을 만들 때는 편의성보다 사용자·세션·모델 경계를 먼저 고정해야 해요.

참고 자료

  1. 독점 LLM API에서 추론 트레이스 훔치기 — GeekNews
  2. Stolen Thoughts — 연구 프로젝트 공식 페이지
  3. Stealing Reasoning Traces from Proprietary LLM APIs — arXiv 논문
728x90