Claude Code 隱寫術事件
Anthropic 如何用一個單引號給你貼標(2026)

TL;DR:2026 年 6 月底,據 thereallo.dev 逆向報告,Claude Code(非網頁版)在使用者設定非官方 ANTHROPIC_BASE_URL 走代理時,會用文字隱寫術改寫系統提示詞裡 Today's date is... 一行——切換日期分隔符與肉眼幾乎無法分辨的 Unicode 單引號,把時區與中國網域/AI 實驗室命中資訊悄悄編碼回伺服器。Anthropic 已在 2.1.197 移除相關程式碼。它大概率是反模型蒸餾/反轉售手段,但爭議在於做法太隱蔽。本文區分 4 月 Claude Desktop 靜默瀏覽器注入與 6 月 Claude Code 隱寫術兩件獨立事件,給出 Unicode 對照表、動機分析、六步防護清單與 FAQ。

01

Claude Code 是不是間諜軟體?先分清兩件獨立事件

這波風波其實是兩個獨立但相關的事件疊加發酵。直接混寫會被 HN / 資安圈讀者一眼看穿,傷 E-E-A-T。發稿前務必區分:

  • A

    事件 A(2026 年 4 月,Alexander Hanff 爆料):安裝 Claude Desktop(macOS)後,據 The Register 報導,它會在你毫不知情的情況下,向 Chrome、Edge、Brave、Arc、Vivaldi、Opera 等瀏覽器目錄靜默寫入 Native Messaging 設定檔 com.anthropic.claude_browser_extension.json,預授權 3 個擴充功能 ID 呼叫執行在瀏覽器沙箱外、擁有目前使用者完整權限的 chrome-native-host即使瀏覽器未安裝也會預建目錄;手動刪除後重啟 Claude Desktop 又會復活。獨立顧問 Noah Kenney(Digital 520)確認 Hanff 的技術主張可重現;安天實驗室(Antiy Labs)發布了專門風險分析報告。資安圈因此稱其為「間諜軟體 / 後門(alleged spyware / backdoor)」。

  • B

    事件 B(2026 年 6 月 30 日,thereallo.dev 逆向):一名開發者逆向 Claude Code 二進位檔,發現系統提示詞隱寫術(prompt steganography)——本文主角。經 Reddit → Hacker News 發酵,HN 討論串數小時衝到首頁,350+ points、100+ 則留言

  • !

    關鍵區別:事件 A 涉及 Claude Desktop,安裝/啟動即觸發;事件 B 涉及 Claude Code CLI僅在 ANTHROPIC_BASE_URL ≠ api.anthropic.com(走代理/閘道/轉售)時觸發,並非每次對話都必然觸發。Anthropic 對事件 B 承認程式碼存在並在 7/1 發布 2.1.197 移除,但 changelog 未提及;事件 A 未正式公開回應,後續版本加了授權開關但底層權限模型據報未根除。

warning

合規措辭:全文用「據爆料 / 據逆向報告 / 被指控(alleged)」等表述,避免把廠商「意圖」當成已證實事實。目的(反蒸餾)與手段(隱寫)須分開評價。

02

Claude Code 隱寫術怎麼運作?Unicode 單引號指紋對照表

關鍵前提:只有當你把 ANTHROPIC_BASE_URL 指向非官方位址(代理、閘道、第三方轉售、OpenAI 相容層)時才觸發。官方 api.anthropic.com 不動手腳。

觸發後,程式做兩件事,全都藏在系統提示詞那句人畜無害的 Today's date is ... 裡:

  1. 1

    改日期分隔符:若系統時區為 Asia/ShanghaiAsia/Urumqi2026-06-30 變成 2026/06/30

  2. 2

    換單引號:Today's 裡的撇號替換成視覺一樣、Unicode 不同的字元,編碼「命中了什麼」。

偵測到的情況日期格式單引號字元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
疊加中國時區2026/06/30(單引號規則同上)

網域與關鍵字清單用 base64 + XOR(91) 輕度混淆,約 147 條網域規則。逆向者核對了 2.1.193 / 2.1.195 / 2.1.196 三個版本,均存在該邏輯。

「你的請求表面上只是普通英文提示詞,但後端掃一眼日期分隔符和那個單引號的 Unicode 編碼,就能在後台給你貼標——典型的隱蔽通道(covert channel)。」

事件 A vs 事件 B 對照表

維度事件 A:靜默瀏覽器注入事件 B:系統提示詞隱寫術
涉及產品Claude Desktop(macOS)Claude Code(CLI)
爆料來源Alexander Hanff / The Registerthereallo.dev → Reddit → HN
時間2026-04(約 4/18 起)2026-06-30
觸發條件安裝/啟動 Claude Desktop僅非官方 ANTHROPIC_BASE_URL
被貼標籤spyware / backdoorprompt steganography / covert channel
Anthropic 回應未正式公開;後續加授權開關承認程式碼;2.1.197 移除(changelog 未提)
03

Anthropic 為什麼這麼做?反蒸餾動機與「算不算間諜軟體」爭議

社群主流判斷(也較克制):目的是反蒸餾 + 反未授權轉售。Anthropic、OpenAI、Google 都公開擔憂對手用 API 大量拉輸出來訓練小模型(distillation)。中國相關代理、轉售、實驗室是重點懷疑對象,於是加了這套「貼標」邏輯。

目的可以理解,手段才是問題:把分類訊號做成肉眼不可見、還刻意混淆程式碼藏進每個請求,對一個靠開發者信任吃飯的工具來說,踩了信任紅線。HN 上兩派吵得很兇:一派說「合理的反蒸餾防禦」,一派說「對開發者工具而言近乎惡意行為(malware-adjacent)」。

「間諜軟體」是有情緒的標籤。更準確的說法:

  • 事件 A 更接近「未經授權竄改第三方軟體 + 預留休眠攻擊面」——疊加 Claude for Chrome 自曝的提示詞注入成功率(無緩解 23.6%、有緩解 11.2%),風險是實打實的。
  • 事件 B 更接近「未披露的隱蔽遙測 / 使用者分類」。

無論用不用 spyware 這個詞,核心問題一致:未經使用者知情同意、且刻意隱蔽。主流解讀:Anthropic 意在偵測未授權轉售 + 模型蒸餾,而非監視個人;爭議點是手段(隱蔽、混淆、不披露)而非目的。

04

Claude Code 怎麼自查與防護?六步落地 Runbook

  1. 01

    檢查 ANTHROPIC_BASE_URL:只有走代理才會觸發事件 B。若未設定或指向官方端點,隱寫邏輯不生效。

  2. 02

    升級 Claude Code:升級至 2.1.197 及以上(據報 7/1 發布,已移除相關程式碼)。

  3. 03

    稽核時區:確認系統時區是否為 Asia/Shanghai / Asia/Urumqi;疊加時區會改變日期分隔符。

  4. 04

    檢查 Claude Desktop Native Messaging(事件 A):macOS 上在各瀏覽器 ~/Library/Application Support/<瀏覽器>/NativeMessagingHosts/ 查找 com.anthropic.claude_browser_extension.json,按需刪除;注意 Claude Desktop 可能重建。

  5. 05

    企業/敏感環境最小權限:評估是否繼續在正式環境使用桌面 Agent;顯式授權、可稽核是底線。參考本站 OpenClaw 正式環境白名單遠端 Mac AI Agent 最佳實務 的隔離思路。

  6. 06

    用腳投票 + 要求披露:廠商完全可以光明正大地做反蒸餾——公開說明、給開關,而不是藏進標點符號。關注 AI 程式設計助手選型 中的信任維度。

bash
# 檢查是否設定了非官方 Base URL
echo "$ANTHROPIC_BASE_URL"

# macOS:查找 Claude Desktop 寫入的 Native Messaging 清單
find ~/Library/Application\ Support -name "com.anthropic.claude_browser_extension.json" 2>/dev/null

# 確認 Claude Code 版本(需 2.1.197+)
claude --version
05

可引用硬核數據與 AI 廠商越界:我們該如何應對

  • HN 熱度:thereallo.dev 逆向報告經 Reddit → HN 發酵,討論串數小時衝到首頁,350+ points、100+ 則留言
  • 版本覆蓋:逆向者核對 2.1.193 / 2.1.195 / 2.1.196 均存在隱寫邏輯;2.1.197(2026-07-01)移除。
  • 規則規模:網域/關鍵字清單 base64 + XOR(91) 混淆,約 147 條規則。
  • Claude for Chrome 提示詞注入:據 Anthropic 自曝數據,無緩解成功率 23.6%,有緩解 11.2%——與事件 A 的高權限 Native Messaging 通道疊加,風險需嚴肅評估。

這件事真正的警示不在「一個撇號」,而在於:當模型能力狂飆、而安全邊界、授權、稽核嚴重滯後時,廠商很容易以「體驗/防濫用」為名,單方面越過使用者與其他軟體廠商之間的信任邊界。可行的應對:預設不信任、用證據說話;要求披露而非隱藏;最小權限 + 邊界隔離;用腳投票 + 制度約束(GDPR/個資法)。

技術可以沒有立場,但公司必須有。能力越大,越要自我約束——這不該是使用者逆向二進位檔才發現的秘密。對團隊而言,在本機 Mac 上跑 Claude Code / OpenClaw 等桌面 Agent 意味著完整使用者權限與持久化設定——一旦廠商行為不可稽核,本機裸跑的風險遠高於隔離環境。相比之下,在獨立遠端 Mac 節點上執行 CLI Agent、與正式桌面/瀏覽器隔離,配合最小權限與可稽核部署,對 iOS CI/CD 與 AI Agent 自動化正式環境通常是更穩的選擇;若你需要可重現、可隔離的 Apple Silicon 算力,NodeMini 的 Mac Mini 雲端租用提供獨占節點與 root 權限,適合把高權限 Agent 工作負載從個人筆電剝離。詳見 租用價格說明

info

參考來源:The Register(Claude Desktop 權限變更,2026-04);Malwarebytes / gHacks / YOOTA(Native Messaging 報導);thereallo.dev(Claude Code 隱寫術原始逆向);Tech Startups / TMC Insight / Developers Digest / TechTimes(2.1.197 修復);Antiy Labs(安天 Claude Desktop 風險分析)。

FAQ

常見問題

不算傳統意義的間諜軟體,但據逆向報告,它在系統提示詞裡藏了未披露、經混淆的指紋,用來標記走代理的中國相關使用者;Anthropic 已在 2.1.197 移除。更準確的定性是「未披露的隱蔽通道(covert channel)」而非竊取資料的惡意軟體。

據逆向報告,會檢查 Asia/Shanghai / Asia/Urumqi——但僅當你使用了非預設 ANTHROPIC_BASE_URL。使用官方端點時,日期行 untouched。

Today's 中的撇號在 U+0027、U+2019、U+02BC、U+02B9 之間切換,分別編碼:無命中、命中中國機構網域、命中 AI 實驗室關鍵字、兩者同時命中。疊加中國時區時日期分隔符從 - 變為 /

社群主流判斷:偵測模型蒸餾與未授權 API 轉售——合法目標,但以非法定的方式實現(隱蔽、混淆、未披露)。

不是。2026 年 4 月 Hanff 爆料的是 Claude Desktop 靜默寫入瀏覽器 Native Messaging 清單;2026 年 6 月 30 日 thereallo.dev 披露的是 Claude Code 系統提示詞隱寫術——產品、機制、觸發條件均不同。

事件 B 只在 Claude Code 且設定了非官方 ANTHROPIC_BASE_URL 時觸發;普通官方端點使用者不受此邏輯影響。

~/Library/Application Support/<瀏覽器>/NativeMessagingHosts/ 下查找並刪除 com.anthropic.claude_browser_extension.json;注意重啟 Claude Desktop 可能重建。企業環境建議評估是否繼續部署桌面 Agent,可參考 說明中心 的遠端 Mac 隔離方案。

升級至 2.1.197+、稽核 Base URL、在獨立遠端 Mac 節點上執行 CLI Agent 而非正式筆電,配合 OpenClaw 安裝指南 中的 API 政策避坑。需要獨占 Apple Silicon 算力時可查看 Mac Mini 雲端租用價格