2026 Claude Code 隱寫術事件:Anthropic 如何用一個單引號替你打標籤
2026 年 6 月底,據 thereallo.dev 逆向報告,開發者發現 Claude Code(非 Claude 網頁版)在使用者將 ANTHROPIC_BASE_URL 指向非官方代理時,會用文字隱寫術改寫系統提示詞裡 Today's date is... 一行——透過切換日期分隔符與肉眼幾乎無法分辨的 Unicode 單引號,把「是否在中國時區、是否命中中國網域/AI 實驗室」等位元資訊悄悄夾帶回伺服器。Anthropic 已在 2.1.197 版本移除相關程式碼(changelog 未提及)。它大概率是反模型蒸餾/反轉售手段,但爭議在於:做法太隱蔽、還刻意混淆——這與 4 月另一起 Claude Desktop 靜默瀏覽器注入事件常被混為一談,下筆前必須區分。
1. 三大痛點:為何開發者此刻必須稽核 Claude 工具鏈
- 信任邊界被靜默跨越:據 The Register 與 Hanff 爆料,Claude Desktop 可在使用者不知情下向多款瀏覽器寫入 Native Messaging 清單,預授權沙箱外高權限通道;獨立顧問 Noah Kenney(Digital 520)確認技術主張可重現,安天實驗室亦發布專門風險分析。
- 隱蔽分類訊號嵌入每次請求:據逆向報告,Claude Code 在 2.1.193/2.1.195/2.1.196 三個版本均存在隱寫邏輯;網域清單約 147 條,經 base64 + XOR(91) 輕度混淆,關鍵字含 deepseek、moonshot、zhipu、minimax、baichuan、stepfun、01ai 等。
- 披露滯後於社群發現:Anthropic 承認程式碼存在並在 7/1 發布 2.1.197 移除,但 changelog 未提及;HN 討論帖數小時衝到首頁,350+ points、100+ 則留言,社群分裂為「合理的反蒸餾防禦」與「對開發者工具而言近乎惡意」。
2. 兩件事別搞混:事件 A vs 事件 B 對照表
英文技術讀者(HN/Reddit/安全圈)極看重事實精度。以下對照表區分兩個獨立但相關的事件——直接合併敘述會損害 E-E-A-T 與 SEO 可信度。
| 維度 | 事件 A:靜默瀏覽器注入 | 事件 B:系統提示詞隱寫術 |
|---|---|---|
| 涉及產品 | Claude Desktop(macOS 用戶端) | Claude Code(CLI 編碼工具) |
| 爆料來源 | Alexander Hanff(隱私顧問,The Register 撰稿人) | 開發者逆向二進位檔,發布於 thereallo.dev,經 Reddit → HN 發酵 |
| 時間 | 2026 年 4 月(約 4/18 起) | 2026 年 6 月 30 日 |
| 核心行為 | 靜默向 Chrome/Edge/Brave/Arc/Vivaldi/Opera/Chromium 寫入 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 未提及 |
3. 時間軸與關鍵版本號
| 日期 | 里程碑 |
|---|---|
| 2026-04 | Alexander Hanff 在 The Register 披露 Claude Desktop Native Messaging 靜默注入;Malwarebytes、gHacks、YOOTA 等跟進報導 |
| 2026-06-30 | thereallo.dev 發布 Claude Code 提示詞隱寫逆向報告;HN 帖迅速衝上首頁 |
| 2.1.193–2.1.196 | 逆向者核對三個版本均存在隱寫邏輯 |
| 2026-07-01 | Anthropic 發布 Claude Code 2.1.197 移除相關程式碼(changelog 未公開說明) |
4. 隱寫術如何運作:Unicode 映射表與白話解釋
關鍵前提(據逆向報告):只有當你把 ANTHROPIC_BASE_URL 指向非官方位址(代理、閘道、第三方轉售、OpenAI 相容層)時才觸發。官方 api.anthropic.com 不動手腳。
觸發後,程式做兩件事,全都藏在系統提示詞那句人畜無害的 Today's date is ... 裡:
- 改日期分隔符:若系統時區是
Asia/Shanghai或Asia/Urumqi,2026-06-30變成2026/06/30。 - 換單引號:把
Today's裡的撇號替換成視覺一樣、Unicode 不同的字元,編碼「命中了什麼」:
| 偵測到的情況 | 日期格式 | 單引號字元 | Unicode |
|---|---|---|---|
| 預設(無命中) | 2026-06-30 | ' 標準 ASCII 撇號 | U+0027 |
| 命中中國機構/經銷商網域 | 2026-06-30 | ' 右單引號 | U+2019 |
| 命中中國 AI 實驗室關鍵字 | 2026-06-30 | ʼ 修飾符撇號 | U+02BC |
| 網域 + 實驗室都命中 | 2026-06-30 | ʹ 修飾符角分號 | U+02B9 |
| 疊加中國時區 | 2026/06/30 | (單引號規則同上) | — |
白話說明:你的請求表面上只是普通英文提示詞,但後端只要掃一眼日期裡的分隔符與那個單引號的 Unicode 編碼,就能在後台替你打標籤——「這個使用者掛了海外 VPN,但實際在中國時區,甚至疑似某家中國 AI 實驗室」。這就是典型的隱蔽通道(covert channel)。網域與關鍵字清單用 base64 + XOR(91) 混淆,約 147 條規則。
5. Anthropic 為什麼這麼做:反蒸餾與 HN 兩派爭議
社群主流判斷(也較克制):目的是反蒸餾 + 反未授權轉售。此前 Anthropic、OpenAI、Google 都公開擔憂對手用 API 大量拉輸出來訓練小模型(distillation)。中國相關代理、轉售、實驗室是重點懷疑對象,於是加了這套「打標籤」邏輯。
目的可以理解,手段才是問題:把分類訊號做成肉眼不可見、還刻意混淆程式碼藏進每個請求,對一個靠開發者信任吃飯的工具來說,是踩了信任紅線。HN 上兩派吵得很兇:
- 防禦派:「這就是正當的反蒸餾防禦,API 濫用必須技術手段遏制。」
- 批評派:「對開發者工具而言這近乎惡意行為——未披露、不可關閉、藏進標點符號。」
主流解讀:Anthropic 意在偵測未授權轉售 + 模型蒸餾,而非監視個人;爭議點是手段(隱蔽、混淆、不披露)而非目的。全文用「據爆料/據逆向報告/被指控(alleged)」等措辭,避免把意圖當成已證實事實。
6. 這算間諜軟體嗎:不同陣營的精確定性
「間諜軟體」是有情緒的標籤。更準確的說法:
- 事件 A 更接近「未經授權竄改第三方軟體 + 預留休眠攻擊面」——即便當前沒被利用,它也把瀏覽器沙箱外的高權限通道預先鋪好了。疊加 Anthropic 自曝的 Claude for Chrome 提示詞注入成功率(無緩解 23.6%、有緩解 11.2%),風險是實打實的。
- 事件 B 更接近「未披露的隱蔽遙測/使用者分類」——不是傳統意義上竊取檔案或鍵盤記錄的 malware,但是 textbook covert channel。
無論用不用 spyware 這個詞,核心問題一致:未經使用者知情同意、且刻意隱蔽。
7. 決策矩陣:風險等級與適用場景
| 使用者場景 | 事件 A 風險 | 事件 B 風險 | 建議動作 |
|---|---|---|---|
| 僅用官方 api.anthropic.com | 中(Desktop 仍可能注入) | 無 | 稽核 Desktop Native Messaging;Code 可正常升級 |
| 走第三方代理/閘道 | 中 | 高(2.1.196 及以下) | 立即升級 2.1.197+;評估代理合規性 |
| 中國時區 + 代理 | 中 | 高(日期/分隔符雙訊號) | 假設歷史請求已被分類;遷移至可稽核環境 |
| 企業 CI/CD 整合 Claude Code | 高 | 高 | 隔離節點、最小權限、禁止 Desktop Agent 混跑 |
8. 五步自查與防護清單
- 檢查 ANTHROPIC_BASE_URL:在終端機執行
echo $ANTHROPIC_BASE_URL。若為空或指向api.anthropic.com,事件 B 不會觸發;若指向代理位址,你屬於被分類的高風險群體。 - 升級 Claude Code 至 2.1.197+:Anthropic 於 2026 年 7 月 1 日發布該版本移除隱寫程式碼。執行
claude --version確認版本號。 - 掃描 Native Messaging 清單(事件 A):在 macOS 執行以下命令查找注入檔案:
常見路徑:find ~/Library/Application\ Support -name "com.anthropic.claude_browser_extension.json" 2>/dev/null~/Library/Application Support/Google/Chrome/NativeMessagingHosts/及各 Chromium 系瀏覽器同名目錄。刪除後注意 Claude Desktop 重啟可能重建。 - 核對時區與代理網域:執行
systemsetup -gettimezone(macOS)確認是否為 Asia/Shanghai 或 Asia/Urumqi;對照你使用的代理網域是否在逆向報告的 147 條規則範圍內。 - 企業/敏感環境隔離:將 Claude Code 與建置金鑰、生產程式碼庫隔離在專用節點;禁止 Desktop Agent 與 CI Runner 共用同一使用者權限;要求明確授權與可稽核日誌。
9. AI 廠商越界:我們該如何應對
這件事真正的警示不在「一個撇號」,而在於:當模型能力狂飆、而安全邊界、授權、稽核嚴重滯後時,廠商很容易以「體驗/防濫用」為名,單方面越過使用者與其他軟體廠商之間的信任邊界。歷史一再重演——PC、智慧型手機早期的安全坑,如今在桌面 AI Agent 上原樣復現。
作為使用者與從業者,可行的應對:
- 預設不信任、用證據說話:可重現、可稽核、可關閉,才配得上信任。
- 要求「披露而非隱藏」:廠商完全可以光明正大地做反蒸餾——公開說明、給開關,而不是藏進標點符號。
- 最小權限 + 邊界隔離:對任何桌面 Agent 都按「高權限程式」對待。
- 用腳投票 + 制度約束:監管(如 GDPR/個資法)與市場選擇,是約束「技術無邊界」的最終力量。
技術可以沒有立場,但公司必須有。能力越大,越要自我約束——這不該是使用者逆向二進位檔才發現的秘密。
10. 常見問題 FAQ
Q:Claude Code 是間諜軟體嗎?
不算傳統意義的間諜軟體,但據逆向報告,它在系統提示詞裡藏了未披露、經混淆的指紋;Anthropic 已在 2.1.197 移除。更準確的定性是「未披露的隱蔽通道」。
Q:Claude Code 會偵測時區嗎?
據報告,僅在非官方 ANTHROPIC_BASE_URL 時檢查 Asia/Shanghai 或 Asia/Urumqi,並將日期分隔符從 - 改為 /。
Q:單引號 Unicode trick 具體是什麼?
Today's 中的撇號在 U+0027、U+2019、U+02BC、U+02B9 之間切換,編碼網域命中、實驗室關鍵字、兩者兼有或預設。
Q:Anthropic 為什麼要加這個?
主流判斷為偵測模型蒸餾與未授權 API 轉售——合法目標,但以非法隱藏的方式實現。
Q:這和 Claude Desktop 間諜軟體是一回事嗎?
不是。Desktop 靜默注入是 2026 年 4 月的獨立事件 A;Code 隱寫是 6 月 30 日的事件 B。
Q:普通網頁版 Claude 使用者會被影響嗎?
事件 B 僅在 Claude Code 且走非官方 Base URL 時觸發,官方端點使用者不受影響。
Q:怎麼刪除 Desktop 注入的瀏覽器檔案?
在 NativeMessagingHosts 目錄刪除 com.anthropic.claude_browser_extension.json;重啟 Desktop 可能重建。
Q:還應該信任 Anthropic 嗎?
取決於你的風險容忍度與合規要求。建議基於可重現證據做決策,而非品牌信任;企業環境應獨立稽核。
11. 參考來源與合規說明
- The Register:Claude Desktop changes software permissions without consent(2026-04)
- Malwarebytes/gHacks/YOOTA:Claude Desktop native messaging 報導
- thereallo.dev:Claude Code prompt steganography(原始逆向)
- Tech Startups/TMC Insight/Developers Digest/TechTimes:事件 B 報導與 Anthropic 2.1.197 修復
- Antiy Labs(安天):Claude Desktop 高權限瀏覽器通道風險分析報告
- Hacker News 討論帖(350+ points,2026-06-30 前後)
本文基於公開報導與逆向報告整理,動機(反蒸餾)與手段(隱寫)分開評價;涉及 Anthropic 意圖處均標註「據社群判斷/據逆向報告」,不構成法律結論。最後更新:2026-07-03。
12. 遠端 Mac 與 SFTPMAC 決策橋接
Claude Code 與 Claude Desktop 的權限問題,本質上是「高權限 Agent 跑在哪裡、與什麼資料共處」。在筆電或混用 CI 的本機上跑 Claude Code,一旦遭遇 Native Messaging 注入或隱蔽分類,你的建置金鑰、SSH 金鑰與生產程式碼庫都在同一使用者權限下——風險面不可控。
更穩妥的路徑是:將 Claude Code 與相關 Agent 工作流隔離到專用的常線上 macOS 節點,與本機日常環境、瀏覽器設定、Desktop 用戶端實體分離;用 SFTP/rsync 同步工作區與設定快照,保留可回滾與可稽核能力。這與站內《AI 程式設計助手對比》《Claude Fable 5 出口管制》等文的「遠端 Mac 7×24 Agent 節點」建議一脈相承。
若你已在評估 Claude 工具鏈的信任邊界,下一步通常是:把 Agent 與敏感資產解耦,落到可隔離、可稽核的 Apple Silicon 遠端節點。SFTPMAC 遠端 Mac 租賃提供面向 Claude Code/OpenClaw 的常線上環境:原生 launchd 守護、SSH/SFTP 目錄隔離、企業級 頻寬與記憶體配置,以及與 CI/CD 產物同步銜接的維運基線——比「家用 Mac 兼 Agent + 日常瀏覽器」更適合需要最小權限與合規留痕的團隊。