무음 브라우저 주입 vs 프롬프트 Unicode 지문 · 사건 A/B 팩트체크 · 반증류 동기 · 자가 점검 방어 목록
요약: 2026년 6월 말, thereallo.dev 역공학 보고에 따르면 Claude Code(웹 버전 아님)가 사용자가 ANTHROPIC_BASE_URL을 비공식 주소로 설정하면 텍스트 스테가노그래피로 시스템 프롬프트의 Today's date is... 한 줄을 바꿉니다. 날짜 구분자 전환과 육안으로 거의 구분되지 않는 Unicode 작은따옴표로 중국 타임존·중국 도메인/AI 랩 신호를 서버에 몰래 실어 보냅니다. Anthropic은 2.1.197에서 관련 코드를 제거했습니다. 목적은 반모델 증류·무단 재판매 방어로 보이지만, 비공개·난독화 구현이 논쟁의 핵심입니다. 한편 4월 별도 사건은 Claude Desktop이 브라우저에 Native Messaging 매니페스트를 무음 기록한 것입니다. 두 사건은 자주 혼동되므로 본문에서 엄격히 구분합니다. 포함 내용: 사건 A/B 대조표, Unicode 매핑표, HN 양파 논쟁, 5단계 자가 방어, 벤더 신뢰 관점, FAQ. Anthropic IPO 가이드와 AI 코딩 어시스턴트 비교도 참고하세요.
많은 재게시 글이 독립적이지만 연관된 두 사건을 한 덩어리로 묶습니다. HN·Reddit·보안 커뮤니티 독자는 사실 오류를 바로 잡아냅니다. 발행 전 반드시 구분하세요.
| 차원 | 사건 A: 무음 브라우저 주입 | 사건 B: 시스템 프롬프트 스테가노그래피 |
|---|---|---|
| 관련 제품 | Claude Desktop(macOS 클라이언트) | Claude Code(CLI 코딩 도구) |
| 폭로자 | Alexander Hanff(The Register) | 개발자 역공학, thereallo.dev 게시, Reddit → HN 확산 |
| 시기 | 2026년 4월(약 4/18~) | 2026년 6월 30일 |
| 핵심 행위 | com.anthropic.claude_browser_extension.json 무음 기록, 3개 확장 ID에 샌드박스 밖 chrome-native-host 사전 승인. 브라우저 미설치 시에도 디렉터리 선생성, 삭제 후 재시작 시 복구 | ANTHROPIC_BASE_URL ≠ api.anthropic.com일 때 Today's date is... 한 줄을 스테가노그래피로 변조 |
| 붙은 꼬리표 | spyware / backdoor | prompt steganography / covert channel |
| 트리거 | Claude Desktop 설치·실행 즉시 | 비공식 Base URL 설정 시에만. 매 대화마다 반드시 발동하지는 않음 |
| Anthropic 대응 | 공식 입장 미발표. 이후 버전에 승인 토글 추가, 근본 권한 모델은 잔존 | 코드 존재 인정, 7/1 2.1.197에서 제거, changelog 미기재 |
인용 가능한 사실: 독립 컨설턴트 Noah Kenney(Digital 520)가 Hanff의 기술 주장 재현을 확인했습니다. 안천(Antiy Labs)은 Claude Desktop 고권한 브라우저 채널 위험 분석 보고서를 발표했습니다. HN 토론은 수 시간 만에 홈 상단에 올랐고 350+ points, 100+ 댓글을 기록하며 「합리적 반증류 방어」vs「개발자 도구로서 악의에 가깝다」로 갈렸습니다.
미공개 + 의도적 난독화: 도메인·키워드 목록이 base64 + XOR(91)로 경량 난독화되어 약 147개 규칙 존재. 역공학자는 2.1.193/195/196에서도 확인.
개발자 도구의 신뢰 레드라인: Claude Code는 개발자 신뢰 위에 서 있습니다. 분류 신호를 구두점에 숨기자 HN 일파는 「malware-adjacent」라고 표현했습니다.
Desktop의 고권한 채널 예비: 당장 악용되지 않아도 브라우저 샌드박스 밖 통로를 미리 깔아 둡니다. Anthropic 자체 공개에 따르면 Claude for Chrome 프롬프트 인젝션 성공률은 완화 없음 23.6%, 완화 있음 11.2%.
컴플라이언스·E-E-A-T 리스크: 「의도」를 확정 사실처럼 쓰면 신뢰가 깎입니다. 「보도에 따르면/역공학 보고/alleged」 표현을 쓰고 목적(반증류)과 수단(스테가노그래피)을 분리 평가하세요.
전제: ANTHROPIC_BASE_URL을 비공식 주소(프록시, 게이트웨이, 제3자 재판매, OpenAI 호환 레이어)로 지정했을 때만 트리거됩니다. 공식 api.anthropic.com에는 손대지 않습니다.
트리거 후 프로그램은 시스템 프롬프트의 무해해 보이는 Today's date is ... 문장에서 두 가지를 바꿉니다.
| 감지 상황 | 날짜 형식 | 작은따옴표 문자 | Unicode |
|---|---|---|---|
| 기본(미매칭) | 2026-06-30 | ' 표준 ASCII 아포스트로피 | U+0027 |
| 중국 기관·딜러 도메인 매칭 | 2026-06-30 | ' 오른쪽 작은따옴표 | U+2019 |
| AI 랩 키워드 매칭(deepseek, moonshot, zhipu, minimax, baichuan, stepfun, 01ai 등) | 2026-06-30 | ʼ 수정자 아포스트로피 | U+02BC |
| 도메인 + 랩 둘 다 매칭 | 2026-06-30 | ʹ 수정자 각분 기호 | U+02B9 |
| 중국 타임존(Asia/Shanghai / Asia/Urumqi) 추가 | 2026/06/30 | (작은따옴표 규칙 동일) | — |
쉽게 말하면: 요청은 평범한 영어 프롬프트처럼 보이지만, 백엔드가 날짜 구분자와 작은따옴표의 Unicode 코드만 훑어도 「해외 VPN을 쓰지만 실제로는 중국 타임존, 심지어 특정 중국 AI 랩 의심」이라는 태그를 붙일 수 있습니다. 전형적인 은닉 채널(covert channel)입니다.
echo $ANTHROPIC_BASE_URL # 출력이 비어 있지 않고 https://api.anthropic.com이 아니면 지문 로직이 작동했을 수 있음 claude --version # 2.1.197 이상인지 확인
커뮤니티 주류 판단(비교적 절제된 표현): 목적은 반증류 + 무단 재판매 방지입니다. Anthropic·OpenAI·Google 모두 경쟁사가 API로 대량 출력을 끌어가 소형 모델을 훈련(distillation)하는 것을 우려합니다. 중국 관련 프록시·재판매·랩이 주요 의심 대상입니다.
「목적은 이해할 수 있지만, 수단이 문제다」— 분류 신호를 육안으로 보이지 않게 만들고 난독화 코드를 모든 요청에 숨기는 것은 개발자 신뢰 위의 도구에게 신뢰 레드라인을 넘습니다.
| HN / 커뮤니티 진영 | 대표 견해 | 실무 시사점 |
|---|---|---|
| 방어파 | 합리적 반증류 방어, 모델 투자 보호 | 상업 동기는 이해하되 은밀한 구현은 거부 |
| 비판파 | 개발자 도구로서 악의에 가깝다. 공개 설명과 끄기 스위치 필요 | 공개·감사 가능·비활성화 요구 |
| 보안파 | 사건 A가 샌드박스 밖 채널을 예비하고, 프롬프트 인젝션 데이터 리스크는 실재 | Desktop Agent를 고권한 프로그램으로 취급 |
「스파이웨어」는 감정이 실린 라벨입니다. 더 정확한 표현은 다음과 같습니다.
spyware라 부르든 말든 핵심 질문은 같습니다. 사용자의 사전 동의 없이, 그리고 의도적으로 은밀하게 행해졌는가.
Base URL 확인: ANTHROPIC_BASE_URL 설정 여부를 확인하세요. 공식 엔드포인트면 사건 B는 트리거되지 않습니다. Claude Code를 2.1.197+로 업그레이드하세요.
Native Messaging 확인(사건 A): macOS에서 ~/Library/Application Support/<브라우저>/NativeMessagingHosts/com.anthropic.claude_browser_extension.json을 점검하고 필요 시 삭제하세요. Claude Desktop이 재생성할 수 있습니다.
타임존·프록시 조합: VPN + 중국 타임존 + 제3자 API 게이트웨이를 동시에 쓰면 보고상 지문 규칙에 더 잘 걸렸습니다. 프로덕션에서는 라우팅 정책을 문서화하세요.
기업·민감 환경: 프로덕션에서 Desktop Agent를 계속 쓸지 평가하세요. 최소 권한·명시적 승인·감사 가능성이 기준입니다. OpenClaw VNC 승인·격리 글의 사고방식을 참고하세요.
격리 검수: 원격 Mac 임대 + VNC 독립 노드에서 Claude Code를 실행하고, 시스템 「개인정보 보호 및 보안」, 브라우저 Native Messaging 디렉터리, 키체인 팝업을 그래픽으로 확인하세요. 프로젝트 종료 후 노드를 교체하거나 해지하면 주력 개발기 오염을 줄일 수 있습니다.
for app in "Google/Chrome" "Microsoft Edge" "BraveSoftware/Brave-Browser" "Arc/User Data"; do f="$HOME/Library/Application Support/$app/NativeMessagingHosts/com.anthropic.claude_browser_extension.json" [ -f "$f" ] && echo "FOUND: $f" done
경고는 「한 글자의 아포스트로피」가 아니라 여기에 있습니다. 모델 능력은 폭발적으로 오르는데 보안 경계·승인·감사는 심각하게 뒤처질 때, 벤더는 「경험/남용 방지」를 명목으로 신뢰 경계를 넘기 쉽습니다. PC·스마트폰 초기의 보안 구멍이 데스크톱 AI Agent에서 그대로 재현되고 있습니다.
기본 불신, 증거 우선: 재현 가능·감사 가능·끌 수 있어야 신뢰할 자격이 있습니다.
숨기지 말고 공개 요구: 반증류는 공개 설명과 스위치로 할 수 있습니다. 구두점에 숨길 필요는 없습니다.
최소 권한 + 경계 격리: 모든 Desktop Agent를 고권한 프로그램으로 취급하세요.
발로 투표 + 제도적 제약: GDPR·개인정보보호법과 시장 선택이 「기술 무경계」를 견제하는 최종 힘입니다.
기술은 중립일 수 있지만 회사는 그렇지 않습니다. 능력이 클수록 자기 제약이 필요합니다. 그 비밀이 사용자의 바이너리 역공학으로 밝혀져서는 안 됩니다.
The Register(Claude Desktop 권한, 2026-04); Malwarebytes / gHacks / YOOTA; thereallo.dev(원본 역공학); Tech Startups / TMC Insight / Developers Digest / TechTimes(2.1.197 수정); Antiy Labs(안천) 위험 분석.
전통적 스파이웨어는 아니지만, 역공학 보고에 따르면 시스템 프롬프트에 미공개·난독화된 지문을 삽입했습니다. Anthropic은 2.1.197에서 제거했습니다. 더 정확한 표현은 미공개 은닉 채널입니다.
사건 B는 Claude Code에서 비공식 ANTHROPIC_BASE_URL을 설정한 경우에만 발생합니다. 공식 엔드포인트 사용자는 해당 로직의 영향을 받지 않습니다.
보고에 따르면 비기본 Base URL 사용 시 Asia/Shanghai / Asia/Urumqi를 확인하고 날짜 구분자로 인코딩합니다. 공식 엔드포인트는 날짜 행을 바꾸지 않습니다.
Today's의 아포스트로피가 U+0027, U+2019, U+02BC, U+02B9 사이에서 전환되며 중국 도메인·AI 랩 키워드·둘 다 매칭 여부를 인코딩합니다.
주류 해석은 모델 증류와 무단 API 재판매 탐지입니다. 목적은 합법적일 수 있으나 은밀한 구현 방식이 문제입니다.
아닙니다. 4월 Hanff 폭로는 Desktop의 브라우저 Native Messaging 무음 주입(사건 A)이고, 6월 thereallo.dev 공개는 Code 프롬프트 스테가노그래피(사건 B)입니다.
~/Library/Application Support/<브라우저>/NativeMessagingHosts/에서 com.anthropic.claude_browser_extension.json을 삭제하세요. Claude Desktop 재시작 시 재생성될 수 있으니 버전 설정이나 Desktop 중지도 병행하세요.
민감한 코드나 시스템 권한 감사가 필요한 팀은 독립 원격 Mac + VNC로 Native Messaging, TCC 권한, 프로젝트 디렉터리를 그래픽 세션에서 확인하고 종료 시 즉시 해지하는 편이 주력 기기 오염 위험을 줄입니다.
Claude 스테가노그래피 논란은 AI Agent가 브라우저를 수정하고 시스템 프롬프트를 바꿀 수 있을 때 로컬 주력 개발기의 잠재 위험(권한 잔류, 감사 불가 채널, 난독화 텔레메트리)이 과소평가된다는 점을 보여 줍니다. Windows/Linux 주력기에서 Claude Code를 돌리는 것은 가능하지만, Claude Desktop의 Native Messaging과 macOS 권한 팝업은 실제 macOS 그래픽 세션 없이는 완전 검수가 어렵습니다.
VNCMac 원격 Mac을 임대해 격리 노드에 Claude Code를 설치하고 VNC로 브라우저 매니페스트와 시스템 개인정보 설정을 항목별로 확인한 뒤 프로젝트 종료 시 해지하면, 고권한 Agent를 개인 주력기에 직접 깔아 두는 것보다 통제가 쉽습니다. Mac Mini M4 요금제와 도움말의 SSH-VNC 안내로 바로 시작할 수 있습니다.