先に、照合できる一句です。アドレスバーやクライアントの鍵アイコンが証明するのは、中継までの1区間が TLS だということだけです。中継がプロンプトを読めないことは証明しません。開発者ツールの Network を開き、リクエストの Host を見てください。モデル提供者のドメインか、別の中継ホストか。カナリアは試験通信だけに置きます。本番の SSH や、生きているクラウドの AccessKey で試さないでください。
今週の論点は「モデルは学習するか」ではなく、途中の1区間
2026年9月10日前後、セキュリティ研究者の寿超凡(Chaofan Shou)は交流サイトへ投稿し、中国の有力な LLM API中継から Fable モデルの呼び出しデータ約6TBを買った、と述べました。その包に SSH鍵、VPN設定、阿里雲(Aliyun)の鍵、GitLab トークンがあり、いくつかの中国企業や政府関連の系へ届きうる、とも主張しています。のちの日本語・英語の記事は、同じ主張を「中継ステーションのログがグレー市場へ入った」と書きました。同じ報道は同時に書いています。点名された企業は侵害を公に認めておらず、「データセットにトークンが出た」を「社内網が乗っ取られた」と同一視する独立監査も無い。本文はこの話を鉤に使います。投稿のスクリーンショットを、侵入の判決としては扱いません。
前のノート「ChatGPT に鍵を貼る」とは別の問いです。あちらが照合するのは消費向けの入力欄です。会話履歴、学習のスイッチ、一時チャットの安全保持が最大約30日。こちらが照合するのは、開発者が実際に踏む灰色の基盤です。リクエストは Claude や GPT へ行ったつもりでも、先に届くのは本体を復号し、認証ヘッダを書き換え、転送するルーターです。エージェントは自分で .env、端末出力、作業領域のファイルを読みます。鍵は手で貼らなくても、プロンプトへ入れます。
SSH秘密鍵、クラウドのアクセスキー、GitLab の個人アクセストークン、VPN設定は、OWASP のログ・チートシートが、共有される平文の記録へ残すなと書く桶に入ります。OWASP の大規模言語モデル応用 Top 10 は、機微の漏洩とサプライチェーンをすでに挙げています。中継は両方を踏む場所です。プロンプトの次の保存先であり、手元とモデル提供者のあいだに増えた事業者でもあります。日本語圏では「激安AI API」や「トークン転売リレー」と呼ばれる店も、同じ位置に座ります。
鍵アイコンが守るのは1区間だけ。中継はJSONを合法に解く
「ずっと HTTPS」を「途中の誰も読めない」と聞く人が多いです。アプリケーション層のプロキシは、そう動きません。arXiv:2604.08407『Your Agent Is Mine: Measuring Malicious Intermediary Attacks on the LLM Supply Chain』は冒頭で書いています。これらのルーターはアプリケーション層のプロキシとして動き、飛行中の JSON ペイロードすべてに平文で触れ、クライアントと上流モデルのあいだで暗号学的な完全性を強制する提供者は無い。リクエストは中継で一度復号され、分解され、認証し直されたあと、上流へ別の TLS を張ります。暗号が破られたのではありません。中継のところで、合法に一度終端されたのです。
だから、見た目は矛盾します。IDE から中継までは TLS、中継から Anthropic や OpenAI までも TLS、それでも途中の機械は、プロンプト、ツール呼び出し、環境変数、返ってきたコードをすでに見ています。メールの STARTTLS を、端から端までの秘匿だと読むのと同じ種類の誤解です。伝送の暗号が止めるのは、線の上の傍観者です。すでに受け取った保存の複製は止めません。メールなら、少なくとも「送信済み」で自分の文を探せます。中継の呼び出しログは、普通は開けないページです。手元の会話を消しても、相手のディスクへ書いた一行は消えません。
コーディング用のエージェントは、露出面を広げます。Claude Code、Cursor、自作のエージェントは作業領域を走査し、プロジェクト設定を読み、端末出力を拾います。API Host を未監査の第三者へ向けたあと、スクリプトの切り分け、試験機の立ち上げ、私有リポジトリの取得で出た鍵は、周囲の文脈ごとリクエスト本体へ乗れます。「鍵を送れ」は押していません。「繋がらない理由を直せ」と頼んだだけです。
| 場所 | 普通は何が残るか | まだ誰が読めるか |
|---|---|---|
| 中継の呼び出しログ | プロンプト、ツール呼び出し、環境変数の平文の鍵 | 中継の運用者。ログやバックアップを得た人 |
| 転売 / 微調整用データセット | 伏せていない過去のリクエスト。包ごと買われる | 包を買った人。あとから複製した人 |
| 上流のモデル提供者 | 中継が転送したあとの、同じ平文 | その提供者自身の保持と学習の方針 |
| 書き換えられたツール呼び出し | 論文の汚染ペイロード。手元で無言実行されうる | その中継の運用者と、あとの制御面 |
論文の428ノード:有料でも改ざんし、カナリアは自動で拾われる
9月の約6TBの話より前に、同じ研究線は引用できる測定を出しています。著者は淘宝、閑魚、Shopify の店頭から有料ルーター28台を買い、公開コミュニティから無料400台を集め、合計428台です。サンドボックスのエージェント通信へ、追跡できる AWS 資格情報と、前もって入れた Ethereum の秘密鍵を置き、中継が読むか、使うかを見ました。
結果は四文で足ります。9台が悪意あるコードを能動的に注入した。有料1、無料8。2台が適応的な回避トリガーを置いた。17台が研究者自身の AWS カナリア資格情報に触れた。1台が試験用ウォレットの ETH を移した。論文は、「善意に見えるノードも引き込まれる」汚染観察を二件書いています。わざと漏らした OpenAI の鍵と、設定の弱い囮が、これらのルーターから約21億トークンを処理した。440件の Codex セッションが99個の資格情報を露出させ、そのうち401件は人手確認の無い YOLO モードですでに走っていた。クライアントは、中継が返すツール呼び出しをほとんど検証しない。著者は公開のエージェント枠組み四つに対し、研究用プロキシ Mine を組み、書き換えペイロードを示しました。
これらの数字は、いま使っている店が9台や17台の中に入る、とは証明しません。証明するのは仕組みです。中継は平文を見る。一部は応答を書き換える。一部は資格情報を自分で拾う。値札は端から端までの約束ではない。「もっと高い中継」へ乗り換えても、照合するのは Host、ログ方針、本物の鍵を入れたか、です。請求書ではありません。
呼び出しログが商品になると、手元の会話削除では買い戻せない
9月の話が刺さるのは、また一つの入力欄が学習するからではありません。呼び出し履歴が、売るデータセットとして扱われた、と公開されているからです。叙述は、伏せていないリクエスト記録に GitLab トークン、ホストの SSH鍵、VPN設定、パブリッククラウドの高権限キーが出た、と書きます。買い手は、先にファーウェイやシャオミの社内網を破る必要がありません。トークンがまだ生きていれば、正当な資格でのログインは、企業ログでは普通の運用に見えます。これは「生きているアカウント」に「サプライチェーンが1区間増えた」です。TLS の破解ではありません。
だから「IDE の会話は消した」では、すでに売れた包は戻りません。中継の保持時計は相手のものです。全体ログ、オブジェクトストレージ、微調整市場へ売った複製は、手元の削除ボタンを共有しません。消費向けの ChatGPT は、少なくとも学習スイッチと一時チャットをヘルプへ書いています。灰色の中継は、対になるデータ方針を普通は渡しません。照合する現場では、その6TBをダウンロードしないでください。スクリーンショットのトークンも転送しないでください。すでに中継を通った本物の鍵は、先に発行元で失効させてから、通路を変えてください。
上流のモデル提供者は、もう一通です。中継の転送が成功したあと、Anthropic や OpenAI は、その平文を自社の API 保持規則で扱います。消費向けの一つの製品で『モデルを改善する』をオフにしても、ログインしたことのない中継アカウントには届きません。すでに売れた過去の包にも届きません。二冊は分けてください。提供者の方針が一冊、中継のログがもう一冊です。
本番の SSH、阿里雲や AWS の AccessKey、GitLab の glpat-、伏せていない接続文字列で試さないでください。その約6TBの包を買わない、落とさない、転送しないでください。捨てられるカナリア、たとえば canary-relay-2026-do-not-reuse を用意します。照合するのは Network の Host と、本体にこの文字列があるかです。社内の鍵をもう一度広めることではありません。すでに中継へ入った本物の鍵は、先に失効させてください。
その場で照合する:Hostを見、カナリアはテストだけに入れる
「転送するだけ」という標語は、自分を証明できません。一度の操作で見えるのは三つです。このリクエストの Host がモデル提供者自身のドメインか。本体に、出してはいけない鍵が残っているか。エージェントが、返ってきたツール呼び出しを確認なしで実行するか。この一歩が証明するのは、「この呼び出しで平文を受け取ったのは誰か」だけです。ある中継がログを売ったかは証明しません。そちらは、監査できる保持説明を出しているか、そして本物の鍵をまだ入れているか、でしか照合できません。
試験プロジェクトで、API の Base URL をいま使っている住所へ向けます。開発者ツールか、手元のプロキシのリクエスト一覧を開き、カナリアだけを含むプロンプトを送ります。たとえば「canary-relay-2026-do-not-reuse を復唱し、ほかはしないでください」。リクエスト行を見てください。Host が api.anthropic.com、api.openai.com、または契約に書いた自社ゲートウェイなら、この1区間の相手は提供者か自分の機械です。見知らぬ中継ドメイン、生の IP、何段もの中継経路なら、平文はすでに途中へ着地しています。次に本体を開きます。カナリアは JSON に出るはずです。ログを取る中継が書き残すのは、この文字列です。
本物の .env をエージェントへ渡し、「どの行が間違っているか見て」とはしないでください。先にこの端末でパスワードと秘密鍵をカナリアへ換えるか、ファイル一式を先にこの端末で暗号文にしてから、ブラウザを出るかを決めてください。本物の鍵を人へ——モデルへではなく——渡す必要があるときは、ワンタイムリンクへ切り替えてください。鍵は URL の # フラグメントに残り、サーバーが一時保存するのは暗号文だけです。井記号を含む完全なリンクを、中継の入力欄へ貼り戻すと、その層は落ちます。
- 試験プロジェクトで、カナリアだけを含むプロンプトを送る。たとえば
canary-relay-2026-do-not-reuse。本物の鍵は使わない。 - Network か手元のプロキシを開き、リクエストの
Hostを照合する。モデル提供者のドメインか、中継ホストか。 - 本体を開き、カナリアが JSON の平文として出ることを確認する。ログを取る中継が保存できる内容です。
- 本番の鍵は先に失効させ、新しいものを発行する。プロンプトは出る前にこの端末で伏せる。人へ渡すときはワンタイムリンクを使い、中継は使わない。
この手順が証明する範囲は狭いです。この操作では、平文がリクエスト本体として、見た Host へ向かった。拡張機能が別に保存していないことは証明しません。約6TBの包に自分のリポジトリ住所があることも証明しません。中継やエージェントを変えたあと、新しい Base URL に対してもう一度カナリアを走らせる価値があります。
開いてすぐ使えるマスキングで、本物の鍵をこのタブに残す
「鍵を中継のリクエストへ入れない」を繰り返せる動作にしたいなら、MakePwd の UTM削除・マスキングから入れます。開いてすぐ使え、登録もアカウントもありません。規則マスキングはいまのタブでテキストを処理します。原文はアップロードせず、伏せる前の本文を analytics にも書きません。エージェントへ渡す予定のエラー、設定の断片、端末の貼り付けを先に伏せてから、そのリクエストをまだ中継へ出すかを決めてください。マスキングは匿名加工ではありません。漏れた氏名、読み上げ数字、自作のトークン形は、まだ人が一目見る必要があります。欄ごとの境界は、チケットやチャットログを外に出す前、規則ベースのマスキングが隠せるものと、隠せないものに書いてあります。
ファイル一式の .env や鍵ファイルを、「ネットディスクへ上げてモデルに読ませる」へ戻さないでください。ファイル暗号化は、いまのタブで AES-256-GCM により .lock / .enc を作ります。単一ファイルは 5 GB までです。暗号文はストレージへ載せられます。パスフレーズは別の通路へ。同僚が本物のパスフレーズを受け取る必要があるときは、ワンタイムリンクを使います。ブラウザは Web Crypto で AES-256-GCM により暗号化し、出域の欄は暗号文、期限、残りの閲覧回数です。ページは鍵を s.html?id={番号}#{鍵} のフラグメントへ付けます。RFC 9110 では、リクエスト行に井記号の後ろを入れてなりません。すでに中継を通ったログインパスワードは、先に失効させたあと、パスワードジェネレーターでこの端末で 6–128 文字の新しい列を作ってください(既定は 16。8 未満は弱いと出ます)。どの手順もログインを求めません。
消費向けの入力欄が会話をどう残し、学習するかは、なおその提供者のヘルプです。パスワードやAPIキーをChatGPTに貼ったあと、この会話と学習側に何が残るかを見てください。二篇を混ぜないでください。ChatGPT の篇は「公式の入力欄に何が残るか」に答えます。本文は「中継の1区間に何が残るか」に答えます。公式の入力欄で学習をオフにしても、中継がすでに売ったログは戻りません。
よくある質問
HTTPSなら、中継も平文を読めないのですか?
読めます。論文は、LLM APIルーターがアプリケーション層のプロキシとして動き、飛行中の JSON ペイロードすべてに平文で触れる、と書いています。手元から中継までが1区間の TLS、中継から上流モデルまでが別の1区間です。中継のディスク上では、鍵は既定で読める本文であり、「Anthropic だけが見える」ではありません。
有料の中継なら端から端まで安全ですか?
有料は端から端までの約束ではありません。論文は淘宝、閑魚、Shopify の店頭から有料ルーター28台を買い、公開コミュニティから無料400台を集め、合計428台です。9台が悪意あるコードを能動的に注入し、その中に有料が含まれます。17台が研究者自身の AWS カナリア資格情報に触れ、1台が試験用ウォレットの ETH を移しました。
9月の約6TBは、ファーウェイやシャオミが侵害された証明ですか?
証明ではありません。公開の叙述は、研究者が約6TBの呼び出しデータを買ったと述べ、そこにあった SSH、VPN、クラウド、GitLab のトークンでいくつかの企業や機関へ届きうると主張した、という範囲です。成文時点で、点名された企業は侵害を公に認めていません。本文は「中継は平文を見え、転売しうる」を照合できる範囲へ落とします。点名を、すでに確認された侵入としては扱いません。
鍵を含む設定をモデルに見せなければならないとき、まだ何ができますか?
先にこの端末で、パスワード、トークン、秘密鍵をカナリアへ伏せてから、そのリクエストの Host がモデル提供者自身のドメインかを見てください。本物の鍵は中継にも、消費向けの入力欄にも入れないでください。人へ渡す必要があるときは、ワンタイムリンクで一度送り、鍵は URL の # フラグメントに残します。作成も閲覧も開いてすぐ使えます。
API Hostを変える前に覚えておく三つのこと
第一に、中継は平文を合法に解きます。手元から中継が1区間の TLS、中継からモデルが別の1区間です。プロンプト、ツール呼び出し、.env の鍵は、途中の機械で既定で読めます。第二に、9月の約6TBの話は、呼び出しログが包ごと売られうる、ということです。論文の428ノードは、有料でも汚染し、カナリアは自動で拾われる、と示します。第三に、その場で照合するのは Host と本体だけです。カナリアが出られるなら、本物の鍵も出られます。すでに中継を通ったパスワードは先に失効させ、プロンプトは出る前にこの端末で伏せてください。
消費向けの入力欄へ鍵を貼ったあと、会話と学習側に何が残るかを続けるなら、パスワードやAPIキーをChatGPTに貼ったあと、この会話と学習側に何が残るかを読んでください。井記号の後ろの鍵が HTTP に入るかを照合するなら、URLのハッシュ記号の後ろに鍵を置ける理由と、その保護が効かなくなるときを読んでください。本文が扱うのは、「鍵が LLM API中継へ入ったあと、まだ何が残るか」を、結論に書ける範囲へ落とすことだけです。