ANTHROPIC_BASE_URL ≠ 公式アドレス)の際、システムプロンプトの Today's date is... 行をテキストステガノグラフィで書き換えていることが判明しました。肉眼では区別しにくい Unicode アポストロフィと日付区切り文字を切り替え、タイムゾーンと中国ドメイン/AI ラボのヒット情報をサーバーへ密かに送り返していました。Anthropic は 2.1.197 で関連コードを削除済みです。本稿は Claude 開発者とコンプライアンス担当者向けに、① 事件 A(Desktop ブラウザ注入)と事件 B(Code ステガノグラフィ)の完全な区別、② Unicode マッピング表と技術原理、③ 反蒸留動機と HN 両派の論争、④ 六ステップ自己点検 Runbook、⑤ ハードデータと AI ベンダー信頼境界の見解を提供します。
Claude Code ステガノグラフィ事件:何が起きたか?二つの事件を混同しない
TL;DR:今回の騒動は二つの独立した事件が重なって拡大したものです。混同すると事実誤認になります。事件 A は4月の Claude Desktop によるブラウザへの Native Messaging マニフェストのサイレント書き込み、事件 B は6月30日の Claude Code によるシステムプロンプト内 Unicode フィンガープリントです。後者が本稿の主題であり、非公式 Base URL 設定時のみ発動し、すべての会話で必ず発動するわけではありません。
事件 A(2026年4月、Alexander Hanff 暴露):Claude Desktop(macOS)インストール後、暴露によると Chrome、Edge、Brave、Arc、Vivaldi、Opera 等のブラウザディレクトリに com.anthropic.claude_browser_extension.json をサイレント書き込み、3つの拡張 ID にサンドボックス外の chrome-native-host 呼び出しを事前承認します。ブラウザ未インストールでもディレクトリを事前作成し、削除後も再起動で復活します。独立コンサルタント Noah Kenney(Digital 520)が Hanff の技術的主張を再現可能と確認。安天ラボが専用リスク分析レポートを公開。Anthropic は正式な公開回答なし。後続バージョンで承認スイッチを追加したが、基盤の権限モデルは根絶されていません。
事件 B(2026年6月30日、thereallo.dev リバースエンジニアリング):開発者が Claude Code バイナリを解析し、ANTHROPIC_BASE_URL ≠ api.anthropic.com の際、システムプロンプト Today's date is... 行が書き換えられることを発見。日付区切りと Unicode アポストロフィの切り替えでユーザ分類シグナルをエンコード。解析者は 2.1.193 / 2.1.195 / 2.1.196 の3バージョンすべてに存在を確認。HN スレッドは数時間でフロントページ到達、350+ points、100+ コメント。
修正タイムライン:Anthropic はコードの存在を認め、2026年7月1日に Claude Code 2.1.197 をリリースし関連ロジックを削除。ただし changelog にはこの変更が記載されていません。
付けられたラベルの違い:事件 A はセキュリティ界で "spyware" / "backdoor" と呼ばれ、事件 B は "prompt steganography" / "covert channel"(プロンプトステガノグラフィ/隠蔽チャネル)と呼ばれます。
コンプライアンス表現の注意:全文で「暴露によると/リバースエンジニアリング報告によると/被指控(alleged)」と表現します。目的(反蒸留)と手段(ステガノグラフィ)は分けて評価し、意図を確定事実と混同しないでください。
| 次元 | 事件 A:サイレントブラウザ注入 | 事件 B:システムプロンプトステガノグラフィ |
|---|---|---|
| 対象製品 | Claude Desktop(macOS クライアント) | Claude Code(CLI コーディングツール) |
| 情報源 | Alexander Hanff(The Register) | thereallo.dev → Reddit → HN |
| 時期 | 2026年4月(約4/18〜) | 2026年6月30日 |
| トリガー条件 | Claude Desktop インストール/起動で即発動 | ANTHROPIC_BASE_URL が非公式の場合のみ |
| 核心動作 | Native Messaging マニフェスト書き込み、拡張にサンドボックス外ホスト呼び出しを事前承認 | Today's date 行の Unicode と日付形式を書き換え |
Claude Code は中国プロキシをどう識別するか?Unicode フィンガープリントマッピング表
重要な前提:ANTHROPIC_BASE_URL を非公式アドレス(プロキシ、ゲートウェイ、第三者転売、OpenAI 互換レイヤー)に向けた場合のみ発動します。公式 api.anthropic.com では手を加えません。発動後、分類シグナルは人畜無害な Today's date is ... 行に隠されます。
| 検出状況 | 日付形式 | Today's アポストロフィ | 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(/ 区切り) | (上記ルールに従う) | — |
中国タイムゾーンは Asia/Shanghai または Asia/Urumqi を指します。ドメインとキーワードリストは base64 + XOR(91) で軽度難読化され、約 147 件のドメインルール。キーワードには deepseek、moonshot、zhipu、minimax、baichuan、stepfun、01ai 等が含まれます。要するに、リクエストは表面上普通の英語プロンプトですが、バックエンドはアポストロフィの Unicode コードポイントを見るだけで「海外 VPN 経由だが実際は中国タイムゾーン、さらに某中国 AI ラボの疑いあり」とタグ付けできます。これが典型的な隠蔽チャネル(covert channel)です。
echo $ANTHROPIC_BASE_URL python3 -c "s=\"Today's\"; print([hex(ord(c)) for c in s if c in \"''ʼʹ\"])" grep -r "com.anthropic.claude_browser_extension" ~/Library/Application\ Support/*/NativeMessagingHosts/ 2>/dev/null
ヒント:ターミナルやエディタでは U+0027 と U+2019 を肉眼で区別するのはほぼ不可能です。16進数または Python ord() でフィンガープリントマークの有無を確認してください。
Anthropic はなぜこうしたのか?Claude スパイウェアと言えるか?
コミュニティの主流見解(比較的控えめ):目的はモデル蒸留防止+未許可転売対策です。Anthropic、OpenAI、Google はすべて、競合が API から大量出力を引き出して小モデルを訓練する(distillation)ことを公に懸念しています。中国関連プロキシ、転売、ラボが重点的な疑い対象となり、このタグ付けロジックが追加されました。目的は理解できるが、手段が問題です。分類シグナルを肉眼不可視にし、難読化コードで各リクエストに隠す行為は、開発者の信頼に依存するツールにとって信頼の赤線を踏み越えます。
HN コミュニティは二派に分裂:「合理的な反蒸留防御」 vs 「開発者ツールとしては悪意に近い行為」。
「スパイウェア」は感情的なラベルです。より正確には、事件 A は第三者ソフトウェアの無許可改変+休眠攻撃面の予約に近い。たとえ現時点で悪用されていなくても、ブラウザサンドボックス外の高権限チャネルを事前に敷いたことになり、Claude for Chrome が自ら暴露したプロンプト注入成功率(緩和なし 23.6%、緩和あり 11.2%)と重なり、リスクは現実的です。事件 B は未開示の隠蔽テレメトリ/ユーザー分類に近い。スパイウェアという語を使うかどうかに関わらず、核心問題は一致します:ユーザーの知情同意なく、意図的に隠蔽されている。
Claude Desktop サイレントインストールの削除方法:六ステップ自己点検 Runbook
Base URL 確認:echo $ANTHROPIC_BASE_URL を実行。空または公式 api.anthropic.com なら事件 B は発動しません。プロキシ/ゲートウェイを指す場合、分類対象に該当します。
Claude Code アップグレード:バージョン ≥ 2.1.197(2026-07-01 リリース、ステガノグラフィロジック削除)を確認。claude --version で照合してください。
Unicode フィンガープリント自己点検:キャプチャしたシステムプロンプトの Today's を文字単位で Unicode コードポイント確認。U+0027(正常)か U+2019/U+02BC/U+02B9(マーク済み)かを判定します。
Native Messaging 確認(事件 A):macOS で ~/Library/Application Support/<ブラウザ>/NativeMessagingHosts/com.anthropic.claude_browser_extension.json を確認し、必要に応じて削除。Claude Desktop 再起動で再作成される可能性があります。
タイムゾーン監査:システムタイムゾーンが Asia/Shanghai または Asia/Urumqi か確認。非公式 Base URL と重なると日付区切りが - から / に変わります。
エンタープライズ環境の強化:本番パイプラインでデスクトップ Agent を継続利用するか評価。最小権限、明示的承認、監査可能性が底线です。機密環境では Claude Desktop とブラウザ Native Messaging チャネルを隔離することを推奨します。
引用可能なハードデータ:Claude Code フィンガープリント事件の主要パラメータ
ドメインルール数:約 147 件、base64 + XOR(91) 難読化保存。deepseek、moonshot、zhipu、minimax、baichuan、stepfun、01ai 等の AI ラボキーワードを含みます。
影響バージョン:解析者は 2.1.193 / 2.1.195 / 2.1.196 すべてにステガノグラフィロジックの存在を確認。2.1.197(2026-07-01)で削除。
HN コミュニティ熱度:スレッドは数時間でフロントページ到達、350+ points、100+ コメント。Claude for Chrome プロンプト注入成功率:緩和なし 23.6%、緩和あり 11.2%(Anthropic 自ら暴露、事件 A リスク関連)。
注意:本件の真の警告は「一文字のアポストロフィ」ではなく、モデル能力が急伸する一方でセキュリティ境界と監査が大幅に遅れているとき、ベンダーが「体験/悪用防止」を名目に信頼境界を越えやすい点にあります。デフォルト不信、開示を求め隠蔽を拒否、最小権限隔離——これがユーザーと実務者の底线です。
Claude Code で iOS CI/CD と AI Agent 自動化に依存するチームにとって、ローカル Mac で高権限デスクトップ Agent を動かすことは権限拡大と隠蔽テレメトリのリスクを伴います。VM 共有インスタンスの隔離も専用ベアメタルほど信頼できません。安定・監査可能・7×24 オンラインの Apple Silicon 本番環境には、MESHLAUNCH の Mac Mini クラウドレンタルが通常より優れた選択です。専用 M4/M4 Pro、日/週/月の柔軟注文、Claude Desktop ローカル高権限チャネルとの物理隔離、Agent ワークロードを制御可能なクラウドノードで実行できます。
参考ソース:The Register(Claude Desktop 権限変更、2026-04);Malwarebytes / gHacks / YOOTA;thereallo.dev(Claude Code 原典リバースエンジニアリング);Tech Startups / TMC Insight / Developers Digest / TechTimes(2.1.197 修正);Antiy Labs(安天)Claude Desktop リスク分析レポート。
従来型のスパイウェアではありませんが、リバースエンジニアリング報告によると、システムプロンプトに未開示・難読化されたフィンガープリントを埋め込み、プロキシ経由の中国関連ユーザーをマークしていました。Anthropic は 2.1.197 で削除済みです。より正確には「未開示の隠蔽チャネル」です。
リバースエンジニアリング報告によると、非公式 ANTHROPIC_BASE_URL 設定時のみ Asia/Shanghai または Asia/Urumqi を確認します。公式エンドポイントでは日付行は変更されません。
Today's のアポストロフィが U+0027、U+2019、U+02BC、U+02B9 の間で切り替わり、中国機関ドメイン・AI ラボキーワードのヒット有無をエンコードします。詳細は本文 Unicode マッピング表を参照してください。
いいえ。4月の Claude Desktop による Native Messaging マニフェストのサイレント書き込みは独立した事件 A です。6月30日の Claude Code プロンプトステガノグラフィは事件 B で、製品とトリガー条件が異なります。
コミュニティの主流見解はモデル蒸留防止と未許可 API 転売対策が目的です。争点は手段が過度に隠蔽され、ユーザーに開示されていない点です。隔離デプロイ案は 料金ページをご覧ください。
事件 B は Claude Code かつ非公式 ANTHROPIC_BASE_URL 設定時のみ発動します。公式エンドポイントユーザーはこのロジックの影響を受けません。
~/Library/Application Support/<ブラウザ>/NativeMessagingHosts/ で com.anthropic.claude_browser_extension.json を探して削除します。Claude Desktop 再起動で再作成される可能性があります。先に ヘルプセンターの関連説明をご確認ください。
Anthropic はコードの存在を認め、2026年7月1日の 2.1.197 で削除しましたが、changelog にはこの変更が記載されていません。直ちにアップグレードしバージョン番号を確認してください。