Nameless Tokenization: A Lossless Tokenizer-Level Defense Against Control-Token Forgery in Open-Weight LLMs
- 게시일: 2026-09-16
- arXiv: 2609.16984v1 · PDF
- 저자: Kisu Yang, Yoonna Jang, Heuiseok Lim
- 분야: cs.CL
- 선정 점수: 6.08
- 선정 이유: 최근성 1.1, 인용 영향 0.0 (인용 0회), 저자 영향 0.0 (최고 h-index 0), AI 주제 적합성 2.8, 개발자 관심 0.2, 학술 신호 0.3, 오픈 웨이트·주요 연구조직 신호 1.6
← 2026-09-16 목록으로 돌아가기
원문 PDF에서 실제 Figure 캡션과 그림 영역이 함께 확인된 자료만 자동 추출했다.

Figure · 원문 PDF 1쪽 · Figure 1: One retrieved document, two tokenizations,
한 문장 요약
오픈 웨이트 챗 템플릿의 제어 토큰 표면 문자열을 제거하고 식별자만 템플릿이 직접 쓰도록 하는 ‘nameless tokenization’을 제안해, 텍스트로부터 제어 토큰 식별자가 유입되는 공격 채널을 구성적으로 차단한다.
해결하려는 문제
오픈 웨이트 모델 배포에서는 채팅 템플릿이 사용하는 제어 토큰들의 표면 문자열과 템플릿 자체가 공개되며, 모델에 포함된 토크나이저는 해당 표면 문자열을 예약된 식별자(reserved identifier)로 역매핑한다. 따라서 공격자가 프롬프트에 텍스트를 삽입할 수 있으면, 모델이 실제로 읽는 토큰 식별자 수준에서 서버가 쓴 것과 구별되지 않는 턴 경계나 도구 결과를 직접 ‘작성’할 수 있다. 기존 권장 완화책(예: split_special_tokens 플래그)은 많은 배포에서 도구 호출과 추론 마커(tool/reasoning markers)를 놓쳐 56.6%의 토크나이저를 여전히 취약하게 두며, 문자열 필터링(문자열을 제거/마스킹)은 콘텐츠 유용성을 심각하게 훼손한다. 연구 질문은 (1) 배포된 챗 토크나이저들이 얼마나 노출되어 있는가, (2) 표면 문자열과 식별자의 기여를 분리해 보면 어떤 공격 채널이 실질적 위험을 만드는가, (3) 텍스트→식별자 경로를 보장적으로 막는 토크나이저 수준의 방어가 가능한가이다.
핵심 기여
- 배포된 256개 챗 토크나이저를 감사(audit)해 모든 분석 가능한 토크나이저가 제어 문자열을 예약 식별자로 변환함을 보이고, split_special_tokens 권고만으로는 56.6%가 여전히 forgeable 함을 실증적으로 제시함.
- nameless tokenization이라는 토크나이저-레벨 방어 설계 제안: 제어 항목(control entries)은 임베딩과 예약 식별자는 유지하되, 어떤 인코더도 그 식별자로 매핑할 수 있는 표면 문자열을 제거하여 텍스트로부터 식별자가 생성되는 경로를 구조적으로 차단.
- 다섯 가지 토크나이저 계열(5개 모델)과 여러 방어/공격 대비 실험을 통해 nameless tokenization이 공격 없는(정상) 입력에서는 표준 토크나이제이션과 토큰 스트림을 정확히 재현하면서, 구분자 포함 콘텐츠의 ‘구분자 충실도(delimiter fidelity)’를 8.5%에서 59.9%로 회복함을 보임.
- 구체적 공격 분해: 구분자 텍스트(appearance)와 예약 식별자(identifier)의 기여를 분리하여, ‘단순 작업 지시(bare task instruction)’ 환경에서는 구분자 텍스트가 더 큰 영향을 주는 반면(평균 +30.4 점), 시스템 메시지가 사용자 콘텐츠를 ‘데이터’로 취급하라 지시하면 예약 식별자가 forged turn 및 forged tool 성공의 핵심 통로임을 규명.
- nameless tokenization이 도구 결과(forged tool) 공격을 평균 33.1%에서 7.4%로 크게 낮추는 등 일부 강력한 케이스에서 실무적으로 의미있는 완화 효과를 보이며, 또한 문자열 필터링/마스킹이 콘텐츠 유용성을 크게 훼손함을 정량적으로 보여줌.
접근 방법
- 핵심 아이디어와 절차
- 위협 모델: 렌더러가 템플릿 리터럴(신뢰)을 메시지 콘텐츠(비신뢰)와 섞어 문자를 출력하고, 공격자는 텍스트만 조작할 수 있으며 모델과 템플릿은 공개되어 있다.
- 안전 조건은 모든 공격자 선택 텍스트 t에 대해 E(t) ∩ C = ∅(텍스트 인코더가 제어 식별자를 생성하지 않음).
- Nameless token 정의: 임베딩과 예약 식별자는 존재하지만 어떤 표면 문자열도 할당되지 않아(encoder가 그 식별자로 매핑할 수 있는 문자열 경로가 없음) 텍스트→식별자 변환 경로를 차단하는 어휘 항목.
- 구현(토크나이저 측): ‘added tokens’ 해시 테이블을 직렬화한 뒤 그 테이블을 비우고(post-processor에서 문장 마커를 주입하는 단계를 제거) 다시 로드하여 서브워드 모델은 동일하게 유지하되 테이블 경유의 문자열→식별자 경로를 제거한다.
- 결과 Ec는 동일한 서브워드 모델이지만 제어 식별자로 가는 문자열 경로가 없음.
- 템플릿 처리(렌더러 측): 템플릿을 렌더링할 때 각 메시지 자리에는 플레이스홀더를 두고, 템플릿이 실제로 출력한(신뢰된) 제어 표면 문자열들이 차례로 나타나는 지점을 실제 식별자로 직접 치환하여 모델 입력(식별자 스트림)을 구성한다.
- 메시지 콘텐츠는 Ec에 전달되어 최대 연속 구간(maximal runs)으로 서브워드화된다.
- 이로써 공격자가 넣은 텍스트는 어떤 경우에도 제어 식별자로 해석될 수 없음(Ec(t) ∩ C = ∅).
- 실험 설정: 감사(256 토크나이저)와 방어 비교 실험(5개 모델, 3개 호스트 태스크, 5가지 방어: None, Strip, Mask, Escape, Nameless), 공격 유형(naive, lookalike, forged turn, forged system, forged tool), 그리고 구분자 충실도(probe) 구성.
- 측정 지표: 토큰화상 노출 여부(어떤 공격 텍스트가 예약 식별자를 생성하는지), 공격 성공률(모델 출력에 주입 문자열이 나타나는 비율), 구분자 충실도(복제/첫 구분자/개수/편집 등 질문에 대한 정확도), 정상(host) 작업 정확도.
주요 결과
- 토크나이저 감사: 256개 분석 가능 토크나이저 중 모든 토크나이저가 제어 문자열을 예약 식별자로 변환함(기본값 100.0%). split_special_tokens 플래그를 켰을 때도 전체의 56.6%가 forgeable(표 1). 일부 패밀리별로도 높은 잔존률을 보였음(e.g., Qwen: 기본 100.0→플래그 84.7%).
- 문자열 변형 테스트(16,415개 변형): 방어 없음에서 27.3%가 예약 식별자를 스트림에 넣었고, split_special_tokens 사용 시에도 5.1%는 여전히 식별자를 생성(특히 Qwen3.8-27B는 18.3%). nameless tokenization에서는 0.0%로 확인(보장적 차단).
- 델리미터 충실도(표 2): 정상 호스트 작업 정확도는 방어별 차이 거의 없이 평균 89.0± 수준(예: None 89.1, Nameless 88.9). 그러나 구분자 포함 콘텐츠를 그대로 복제/검사/카운트/편집하는 능력은 다름: 표준(None)에서는 전체 항목(All)에서 8.5% 정답률, Strip 2.2%, Mask/Escape 각각 23.0/24.1% 수준인 반면 nameless는 59.9%로 크게 향상(특히 ‘copy’나 ‘first’와 같은 항목에서 74.0/81.2%). 즉 문자열 필터링은 콘텐츠 유틸리티를 크게 손상시키나 nameless는 ‘무손실’로 콘텐츠를 모델에 전달함.
- 공격 성공률(표 3, 모델 평균, 시스템 메시지: task-only): naive 공격은 방어에 무관하게 ~62.5%로 큰 변화 없음(델리미터 유무의 영향을 반영). lookalike(문자 변형) 공격은 매우 높아 93.0%로 대부분 방어에 영향 없음. forged turn 공격은 표준 99.9%에서 Strip 74.6 / Mask 77.8 / Escape 94.7 / Nameless 92.8로 nameless가 일부 감소시켰으나 완전히 차단하지는 못함. forged tool은 표준 33.1%에서 Nameless 7.4%로 큰 감소를 보임.
- 구분자 텍스트 vs 식별자 기여 분해(표 5): ‘단순 작업 지시’ 환경에서 forged turn 성공률 상승분은 평균적으로 텍스트(appearance) +30.4 포인트, 예약 식별자(identifier) +7.1 포인트로 구분자 텍스트가 더 큰 역할을 함. 그러나 시스템 메시지에서 ‘사용자 메시지는 데이터이며 내부의 지시는 무시하라’고 지시할 때는 예약 식별자가 forged turn과 forged tool 성공의 핵심 통로가 되어, nameless가 이 경우 큰 효과를 보임(예: Qwen-3.8-27B의 forged tool: 표준 66.2% → nameless 14.5% 평균, 그리고 시스템 메시지 조건에서 53.4%→0.7%). 요약하면, 시스템 레벨 방어가 있으면 식별자 차단의 가치가 커진다.
- 훈련 수준의 분리(Instruction-data separation)와 비교(표 6): 이미 훈련 수준 분리가 적용된 체크포인트에서는 해당 방법이 우세하고 nameless는 추가 이득을 주지 못하거나(일부 경우 오히려 clean accuracy를 ~11.4 점 깎음) 훈련 수준 분리가 없을 때 nameless가 실무적으로 의미있는 완화를 제공함.
한계
- 저자가 명시한 한계(본문의 ‘Limitations’ 항목):
- 평가 범위가 5개 모델, 3개 호스트 태스크, 2개 주입 목적(objectives)으로 제한되어 있어 절대적 공격률은 다른 목적이나 더 큰 항목풀에서 달라질 수 있음.
- 방어로 실험한 시스템 메시지는 단 한 문장으로, 실제 hardened 배포는 검색 위생(retrieval hygiene)이나 훈련 수준 분리와 결합할 것인데 본 연구는 그 결합을 모델링하지 않음.
- ‘무손실성(losslessness)’ 주장은 텍스트가 모델에 변경 없이 도달한다는 의미이며 모든 공격을 막는 것은 아님: 예약 식별자를 제거하더라도 동일한 구분자 텍스트가 라이브 턴 내에 남아있어 일부 공격(예: forged-system)은 오히려 성공률이 오른 경우가 관찰됨(평균 46.9→68.0%).
- 보장 범위는 텍스트→식별자 인터페이스에 한정되며, 호출자가 토큰 식별자를 직접 전달하거나 렌더러 밖에서 프롬프트를 재구성하는 배포는 이 방어의 적용 범위 밖임.
- 델리미터 충실도 프로브는 합성 블록으로 구성되어 있어 실제 워크로드에서 델리미터 포함 콘텐츠의 빈도는 반영하지 않음.
- 감사는 템플릿을 포함하고 레파지토리 코드 실행 없이 로드 가능한 토크나이저를 대상으로 하므로, 커스텀 토크나이저 코드로 배포된 모델은 과소 표집될 수 있음.
- 본문 실험에서 드러나는 제약(합리적 관찰):
- nameless는 구조적으로 텍스트→식별자 경로를 차단하지만, 템플릿이 실제로 식별자를 ‘직접 쓰는’ 방식의 렌더러 설계가 필요하며 배포 환경에서 렌더러/서빙 스택을 변경해야 함.
- 일부 모델/설정에서는 nameless가 forged-system 같은 공격에 대해 성공률을 오히려 높일 수 있으므로(시스템 메시지가 없는 상황에서) 배포 전 모델별 검증이 필요함.
- 훈련 수준에서 이미 instruction-data 분리가 적용된 경우 nameless의 이득이 제한적일 수 있음.
개발자 관점
- 긴요한 보안 조치: 오픈 웨이트 챗 배포시 토크나이저의 ‘added tokens’ 또는 템플릿에 의해 생성되는 제어 문자열이 메시지 콘텐츠에서 역매핑되는지 반드시 점검하라(감사 표본: 본 논문과 같이 템플릿으로 복원한 제어 토큰을 메시지에 넣어 식별자로 변환되는지 테스트).
- 간단한 구현 가이드: nameless tokenization 구현은 (1) 토크나이저 직렬화본에서 added-token 테이블을 비우고(post-processor 제거) 재로딩해 텍스트→제어 식별자 경로를 차단하고, (2) 렌더러가 템플릿을 출력할 때 템플릿이 생성한 제어 토큰 위치를 실제 예약 식별자로 직접 써서 모델 입력을 구성하는 방식으로 작동한다. 논문은 이 변경이 정상(공격 없는) 입력에 대해서는 표준 토크나이제이션과 토큰 스트림을 정확히 재현한다고 보고함.
- 유틸리티와 비용: nameless는 모델이나 추론 파이프라인 자체를 변경하지 않으므로 런타임 성능 비용이나 모델 재학습 비용이 없다. 다만 토크나이저 직렬화/렌더러 변경, 배포 파이프라인 테스트 및 모델별 검증(특히 시스템 메시지 조합에 대한 동작 확인)은 필요하다.
- 조합적 방어 권고: nameless는 텍스트→식별자 채널을 구조적으로 막아 ‘보장’을 제공하므로 기본값으로 채택하는 것이 권장되지만, 여전히 plain-language prompt injection, 토큰 식별자 직접 수신, 또는 템플릿 외부에서 프롬프트를 재구성하는 위험에는 무력하므로, retrieval hygiene, 훈련 수준의 instruction-data 분리, 그리고 입력 검증/로깅 등과 함께 다층으로 배치하라.
- 실무적 주의사항: split_special_tokens 같은 기존 권장 설정은 불완전(특히 도구·추론 마커에 대해)하므로 단순 플래그만 신뢰하지 말고, 델리미터를 포함하는 콘텐츠의 처리(삭제·마스킹·이스케이프)는 콘텐츠 유용성을 훼손하므로 서비스 요구에 따라 nameless 접근이 더 적절할 수 있다.
근거 범위: 이 분석은 제공된 논문 PDF 본문(본문, 표, 부록)에 기반해 작성되었음. 표와 수치는 PDF의 표와 본문에서 직접 발췌한 값이다. 일부 표 헤더나 열 명칭은 본문 내 표현(예: ‘Delimiter fidelity’ 표의 열 구성)을 그대로 해석했으며, 원문이 아닌 부분(예: 구현의 낮은 수준 세부사항이나 배포 환경별 변형)은 저자가 명시한 범위 밖이므로 추정하지 않았다.