대상: 프록시·리셀러·커스텀 게이트웨이로 Claude Code 또는 Claude Desktop을 운영하는 개발자, 그리고 과장과 재현 가능한 주장을 구분해야 하는 보안 담당자. 제공 내용: 사건 A(2026년 4월 Native Messaging 주입)와 사건 B(ANTHROPIC_BASE_URL이 api.anthropic.com이 아닐 때 6월 30일 프롬프트 스테가노그래피)의 명확한 분리, Unicode 아포스트로피 매핑표, 인용 버전 번호, 6단계 보호 Runbook. 부제: 조용한 브라우저 주입에서 단일 아포스트로피에 숨긴 은밀 채널까지—AI 벤더 신뢰에 무엇이 걸리는지. 구성: 6대 쟁점, 사건 비교표, 기술 해부, Runbook, 핵심 수치, Mac 클라우드 격리 브릿지, FAQ 8항.
2026년 6월 말, 개발자가 Claude Code를 역공학한 결과를 thereallo.dev에 공개했습니다. ANTHROPIC_BASE_URL이 api.anthropic.com이 아닐 때 CLI가 시스템 프롬프트의 Today's date is... 줄을 조용히 재작성—날짜 구분자와 시각적으로 동일한 Unicode 아포스트로피를 교체하여 중국 타임존 여부와 엔드포인트가 난독화된 도메인·AI 랩 키워드 목록과 일치하는지 인코딩한다는 주장입니다. 스레드는 수 시간 내 Hacker News와 Reddit에서 350점 이상을 기록했습니다. 이것이 사건 B입니다. 2026년 4월 사건 A—프라이버시 컨설턴트 Alexander Hanff가 The Register에 macOS Claude Desktop이 Chrome, Edge, Brave, Arc, Vivaldi, Opera, Chromium Native Messaging 디렉터리에 com.anthropic.claude_browser_extension.json을 조용히 기록하고 3개 확장 ID를 브라우저 샌드박스 밖 chrome-native-host에 사전 승인한다고 보도한 사건—과는 다릅니다. 독립 컨설턴트 Noah Kenney와 Antiy Labs가 Hanff의 기술적 주장을 재현 가능하다고 확인했다고 전해집니다.
두 사건을 혼동하면 잘못된 보안 결정을 내립니다. 하나는 지속적 로컬 권한 브릿지이고, 다른 하나는 아웃바운드 프롬프트의 은밀 분류 채널 주장입니다. 공통점은 사용자가 명시적으로 동의하지 않은 행동이 제3자 역공학 이후에야 공개된다는 점—제품 문서나 changelog에는 없었습니다.
ANTHROPIC_BASE_URL 설정 시에만 활성화됩니다. 직접 api.anthropic.com 트래픽은 변경되지 않았습니다—공식 구독 개발자 영향 여부 판단에 중요합니다.한 줄 정의: 전통적 키로깅 스파이웨어는 아니지만, 로컬 Native Messaging 사전 승인과 프록시 사용자용 프롬프트 스테가노그래피라는 두 건의 미공개 은밀 채널 주장—보안팀은 자체 빌드에서 독립 검증 전까지 공급망·데이터 거버넌스 사건으로 취급해야 합니다.
2026 AI 코딩 어시스턴트 의사결정 매트릭스에서 Claude와 Cursor·Copilot을 비교했다면, 신뢰·텔레메트리 행을 추가하십시오. 기능 동등 표는 게이트웨이 URL 연결 시 CLI가 시스템 프롬프트를 재작성하는지 포착하지 못합니다.
아키텍처 리뷰에서 「Claude Code가 스파이웨어인가?」라고 묻되 어떤 바이너리·OS·API 경로인지 명시하지 않을 때 이 표를 사용하십시오.
| 차원 | 사건 A: Claude Desktop | 사건 B: Claude Code | 전형적 스파이웨어 | 공개 벤더 텔레메트리 |
|---|---|---|---|---|
| 제품 | Claude Desktop (macOS GUI) | Claude Code (CLI Agent) | 무관 | 무관 |
| 주장 행위 | com.anthropic.claude_browser_extension.json 기록; 3개 확장 ID 사전 승인; 샌드박스 밖 chrome-native-host; 삭제 후 재생성 |
커스텀 ANTHROPIC_BASE_URL 시 Today's date is... Unicode 아포스트로피·날짜 구분자 재작성 |
파일·키스트로크·자격증명 은밀 유출 | 문서화된 사용 지표, 크래시 리포트, opt-out 경로 |
| 트리거 | Claude Desktop 설치·실행(Hanff 보도) | 비기본 ANTHROPIC_BASE_URL만 |
지속적 | ToS·개인정보 처리방침에 명시 |
| 타임라인 | 2026년 4월(~4/18~) | 2026년 6월 30일 공개; 2.1.197(7/1) 제거 | 해당 없음 | 해당 없음 |
| 적절한 라벨 | 무단 제3자 소프트웨어 변경; 잠재 고권한 채널 | 프롬프트 내 미공개 은밀 사용자 분류 | 악성코드 | 동의 하 거래 |
어느 행도 Anthropic 구독을 즉시 전부 삭제할 이유는 아닙니다. 각 팀이 어떤 Anthropic 표면을 쓰는지, 각 환경이 어떤 API 경로를 타는지, 분류 신호가 명시적 고지 없이 클라이언트를 떠날 때 규정 준수 체계가 무엇을 요구하는지 문서화할 이유입니다.
Anthropic의 2026년 내러티브—Series H 펀딩·IPO 포지셔닝, 엔터프라이즈 라이프사이언스 확장, 프론티어 모델 수출 통제—은 신뢰 사건을 덜 중요하게 만드는 것이 아니라 더 중요하게 만듭니다. 공개 시장·규제 구매자는 「보안 우선」 마케팅과 클라이언트 행동이 일치하는지 묻습니다.
thereallo.dev 역공학 보고에 따르면 로직은 설정된 base URL을 난독화 목록과 대조합니다. 매치 시 시스템 프롬프트 날짜 줄에 분류 비트를 인코딩—한눈에 읽히는 영어, Unicode 코드 포인트 수준에서는 기계 판독 가능합니다.
1단계 — 날짜 구분자: 시스템 타임존이 Asia/Shanghai 또는 Asia/Urumqi이면 날짜 형식이 하이픈에서 슬래시로 전환됩니다(예: 2026-06-30 → 2026/06/30).
2단계 — 아포스트로피 교체: Today's의 아포스트로피가 매치 조건에 따라 시각적으로 유사한 문자로 바뀝니다:
| 조건 | 날짜 형식 | 아포스트로피 | Unicode |
|---|---|---|---|
| 기본(도메인·랩 미매치) | 2026-06-30 |
' ASCII 아포스트로피 |
U+0027 |
| 중국 연계 org/리셀러 도메인 매치 | 2026-06-30 |
' 오른쪽 작은따옴표 |
U+2019 |
| AI 랩 키워드 매치(deepseek, moonshot, zhipu, minimax, baichuan, stepfun, 01ai 등) | 2026-06-30 |
ʼ modifier letter apostrophe |
U+02BC |
| 도메인·랩 키워드 모두 | 2026-06-30 |
ʹ modifier letter prime |
U+02B9 |
+ 중국 타임존(Asia/Shanghai / Asia/Urumqi) |
2026/06/30(슬래시 구분자) |
(위 매치 단계에 따름) | — |
도메인·키워드 목록은 base64 문자열을 키 91로 XOR한 형태로 저장되었다고 하며, 약 147개 도메인 규칙 규모입니다. 개발자가 로그를 훑으면 평범한 영어로 보입니다. 백엔드 분류기에는 아포스트로피 코드 포인트와 날짜 구분자가 프록시 사용, 타임존 맥락, 리셀러·랩 소속을 드러낸다고 합니다.
동기(커뮤니티 합의, 입증된 의도 아님): Anthropic, OpenAI, Google은 모델 증류—경쟁사가 API 출력을 수확해 소형 모델을 학습하는 행위—에 대해 공개 경고했습니다. 무단 리셀러와 중국 연계 게이트웨이는 그럴듯한 표적입니다. 의도는 방어 가능할 수 있으나 방법은 아닙니다. 구두점에 분류를 숨기고, 바이너리에 목록을 난독화하고, 제거 시 changelog 공개를 생략하면 개발자 도구가 요구하는 신뢰를 잃습니다.
Claude Code를 프록시한다면 시스템 프롬프트 조각을 캡처하고 렌더링 글리프가 아닌 코드 포인트를 확인하십시오:
# 캡처한 시스템 프롬프트의 "Today's" 토큰을 붙여넣기
token = "Today's" # 캡처 문자열로 교체
for ch in token:
print(repr(ch), hex(ord(ch)))
U+0027이 기준선입니다. 커스텀 base URL에서 U+2019, U+02BC, U+02B9가 나오면 2.1.197 이전 빌드에서 역공학 주장을 뒷받침합니다. 규제 환경에서는 스팟 체크와 버전 고정·해시 검증을 병행하십시오.
법적 표현: 본문은 제3자 역공학·언론 보도에 주장된 행동을 설명합니다. 작성 시점 Anthropic은 사건 B에 대한 전면 기술 사후 분석을 공개하지 않았습니다. 정확한 바이너리·구성에서 보안팀이 재현 검증할 때까지 재현 가능한 가설로 취급하십시오.
순서대로 실행하십시오. 인벤토리 생략은 컴플라이언스 설문이 도착한 뒤에야 리셀러 게이트웨이와 Native Messaging 매니페스트를 발견하는 주된 경로입니다.
ANTHROPIC_BASE_URL 또는 벤더 프록시 URL을 설정했는지 기록합니다.claude --version을 실행합니다. Anthropic 7월 1일 빌드를 신뢰한다면 2.1.197 이상으로 업그레이드합니다. 프로덕션이 api.anthropic.com인지 제3자 게이트웨이인지 확인합니다. 사건 B는 비기본 URL에만 적용되었다고 합니다.~/Library/Application Support/<Browser>/NativeMessagingHosts/com.anthropic.claude_browser_extension.json을 검사합니다. 내용, 확장 ID, chrome-native-host 경로를 문서화합니다. 정책상 금지면 삭제하되, 보고에 따르면 Claude Desktop 재시작 시 재생성될 수 있습니다.3·5단계에서 MACCOME 고객은 일정 리스크를 압축합니다. 대여 Mac Mini M4 클라우드 노드는 출장 노트북의 개인 Chrome 프로필을 건드리지 않고 격리 macOS 이미지에서 Claude Code Agent를 호스팅할 수 있습니다.
리스크 메모에는 1차 링크와 함께 이 수치를 사용하십시오. 경영진은 HN 점수를 개발자 관심 지표로 이해하고, 보안 위원회는 현재 exploit 여부와 무관하게 사전 배치된 Native Messaging 호스트를 잠재 권한 상승 표면으로 봅니다.
데스크톱 AI Agent는 셸 접근, 브라우저 브릿지, 장기 자격증명을 결합합니다. 개인 이메일, 비밀번호 관리자 확장, 프로덕션 API 키가 있는 MacBook에서 실행하면 벤더 행동—주장이든 확인이든—이 신뢰선을 넘을 때 영향 반경이 최대화됩니다.
전용 대여 Mac Mini M4 클라우드 노드는 launchd 지속성, MCP 사이드카, 원격 편집기 호환 SSH로 Claude Code를 실행하면서 Claude Desktop이 일상 Chrome 프로필을 건드리지 않게 합니다. 타임존, base URL 정책, 호스트에 존재하는 브라우저 프로필을 통제합니다.
Linux VPS는 순수 CLI 워크로드에서 비용을 절감하지만, 저장소에 xcodebuild, Apple 공증 등 macOS 전용 체인이 있으면 깨집니다. 비교 대상은 Anthropic vs Apple이 아니라 혼합 노트북 vs 격리 macOS Agent 호스트입니다.
2026년 6월 Claude Code 스테가노그래피는 방어 가능한 목표를 방어 불가능한 은폐로 구현한 사례입니다. 증류·재판매 방지는 업계 공통 관심사입니다. Unicode 구두점에 분류를 넣고, 규칙 목록을 난독화하고, 제거 시 changelog 공개를 생략하면 벤더는 벤치마크 승리보다 빠르게 개발자 신뢰를 잃습니다.
명백한 대안의 한계도 분명합니다. (a) 사건 A 무시는 전체 사용자 권한 macOS 워크스테이션에 Native Messaging 사전 승인을 남깁니다. (b) Claude Code 전면 금지는 이미 hook·MCP를 표준화한 팀을 깨뜨립니다. (c) 개인 브라우저와 프로덕션 시크릿이 섞인 노트북에서 동일 Agent 스택을 돌리면 다음 미공개 클라이언트 행동이 드러날 때 영향이 증폭됩니다.
바이너리를 인벤토리하고, 버전을 고정하고, 허용 base URL을 결정한 뒤 다음 병목은 보통 호스트 격리입니다—U+02B9가 스파이웨어인지 또 논하는 스레드가 아닙니다. 수 분 내 SSH, 예측 가능한 월 비용, 일상 브라우저 프로필과 분리된 최소 권한 Claude Code Agent macOS 환경이 필요하면 MACCOME 전용 Mac Mini M4 클라우드 호스트가 일반적으로 더 적합합니다: 실제 Apple Silicon, launchd 친화 uptime, 장기 Agent 프로세스와 호환되는 분리. 지역·메모리는 Mac mini 대여 요금에서, 운영 질문은 고객 센터로 문의하십시오.
행동이 재현·문서화·전환 가능해질 때까지 불신을 기본값으로 두십시오. 스테가노그래피보다 공개를 요구하십시오. 모든 데스크톱 Agent를 고권한 소프트웨어로 취급하십시오—통제하는 경계로 Agent를 옮기기 전까지 벤더는 귀하의 머신에서 같은 교훈을 반복할 것입니다.
The Register(Alexander Hanff, Claude Desktop Native Messaging, 2026년 4월); Malwarebytes, gHacks, YOOTA(사건 A 후속); thereallo.dev(Claude Code 역공학 원문, 2026년 6월 30일); Tech Startups, TMC Insight, Developers Digest, TechTimes(2.1.197 제거 보도); Antiy Labs 리스크 분석(Claude Desktop 브라우저 채널).
FAQ
Claude Code는 스파이웨어인가요?
전통적 데이터 탈취 스파이웨어는 아니지만, 역공학 보고에 따르면 ANTHROPIC_BASE_URL이 api.anthropic.com이 아닐 때 중국 연계 프록시 사용자를 표시하기 위해 시스템 프롬프트에 미공개·난독화 지문을 삽입했습니다. Anthropic은 2.1.197에서 제거했습니다. 미공개 은밀 채널에 가깝습니다.
Claude Code가 타임존을 추적하나요?
thereallo.dev 보고에 따르면 Asia/Shanghai·Asia/Urumqi를 확인하고 날짜 구분자를 하이픈에서 슬래시로 바꿨지만, 비기본 ANTHROPIC_BASE_URL 사용 시에만 적용되었습니다. 공식 api.anthropic.com은 변경되지 않았습니다.
아포스트로피 Unicode 트릭이란?
Today's의 아포스트로피가 U+0027(기본), U+2019(중국 연계 도메인), U+02BC(AI 랩 키워드), U+02B9(도메인·랩 모두)로 교체되어 시스템 프롬프트 날짜 줄에 분류 신호를 인코딩했다고 합니다.
Anthropic이 이 기능을 추가한 이유는?
커뮤니티 분석·Hacker News 토론은 목적을 증류 방지 및 무단 API 재판매 탐지로 봅니다—정당한 목표가 숨겨진 난독화 방식으로 구현된 사례입니다.
Claude Desktop 스파이웨어 보도와 같은 사건인가요?
아닙니다. 사건 A(2026년 4월)는 macOS Claude Desktop이 com.anthropic.claude_browser_extension.json Native Messaging 매니페스트를 조용히 기록한 사건(The Register, Alexander Hanff). 사건 B(2026년 6월 30일)는 커스텀 base URL 사용 시 Claude Code 프롬프트 스테가노그래피입니다.
일반 Claude 웹앱 사용자도 영향을 받나요?
사건 B는 ANTHROPIC_BASE_URL이 api.anthropic.com이 아닌 Claude Code에서만 트리거되었습니다. 공식 웹앱 또는 기본 엔드포인트 CLI는 Unicode 아포스트로피 인코딩 대상이 아니었습니다.
Claude Desktop Native Messaging 매니페스트는 어떻게 제거하나요?
macOS에서 ~/Library/Application Support/<browser>/NativeMessagingHosts/ 아래 com.anthropic.claude_browser_extension.json을 Chrome, Edge, Brave, Arc, Vivaldi, Opera, Chromium 프로필에서 확인합니다. 필요 시 삭제하되, 보고에 따르면 Claude Desktop 재시작 시 재생성될 수 있습니다.
지문 코드가 포함된 Claude Code 버전은?
thereallo.dev 역공학에 따르면 2.1.193, 2.1.195, 2.1.196에 로직이 있었습니다. Anthropic은 2026년 7월 1일 배포 2.1.197에서 제거했으나 공개 changelog에는 언급되지 않았습니다.