Cloudflareは、サーバーレスAIプラットフォームのキャッシュ処理のバグにより、GLM-5.3モデル展開の少なくとも155人のユーザーが他の顧客のプロンプトと出力の断片を含む応答を受信した経緯を説明する詳細なインシデントレポートを公開しました。このレポートは、SGLang オープンソース推論エンジン プロジェクトと並行して調整された開示として 10 月 26 日に公開され、マルチテナント LLM サービスの配管内部の珍しい一般公開と、GPU メモリのセキュリティの前提についての警告を提供しています。
漏洩が発見された経緯 この件の詳細は、AIの最新動向をご覧ください。
Cloudflare によると、Knostic のセキュリティ研究者 Gadi Evron 氏は、2026 年 9 月 8 日に、HackerOne バグ報奨金プログラムを通じて同社に警告を発しました。 Evron は、Cloudflare の Workers AI プラットフォーム上の GLM-5.3 モデルに送信された非常に長いプロンプトが、他のユーザーのセッションに属するテキストを返す場合があると報告しました。 Cloudflareは翌朝に問題を再現し、同日モデルを無効にし、修正を展開した後の9月9日に復元した。
影響を受けたモデルは @cf/zai-org/glm-5.3 でした。これは、Cloudflare が同社のサーバーレス推論プラットフォームである Workers AI を通じて提供する、Z.ai のエージェント コーディング モデルです。 Cloudflareは、プラットフォーム上でホストされている他のモデルが影響を受けないことを確認しました。
実際に何が起こったのか
この事件は、動作上の問題とエンジン自体の問題の 2 つの重複する問題に遡ります。
まず、設定ミス。 Cloudflareは、1,048,576トークンのコンテキストウィンドウを備えたGLM-5.3をデプロイしましたが、プレフィルGPUのキーバリュー(KV)キャッシュプールには681,280トークン用の余地しかありませんでした。同社は、この不一致を発売前から認識していたことを認め、推論エンジンが長すぎるリクエストを安全に拒否することを期待していました。
第二に、エンジンのバグです。分離されたプレフィル/デコード モード (Workers AI が使用するアーキテクチャでは、GPU の 1 つのプールがプロンプトを処理し、結果の KV キャッシュを応答を生成する GPU の別のプールに渡す) では、SGLang は長さを超えるリクエストを誤って処理しました。プールに適合しないプロンプトは内部的に拒否としてマークされ、1 トークンのプレースホルダーに置き換えられました。ただし、リクエストを中止してクライアント エラーを返す代わりに、プレフィル ステージはプレースホルダー プロンプトの KV キャッシュを生成し、それをデコード ノードに転送します。その後、同じメモリ ページを共有する以前のリクエストからの残りのデータを混ぜた応答が生成されます。
その結果、8 月 27 日から 9 月 9 日までの間に、このモデルを使用している少数の顧客が、自分たちのリクエストの直前に行われた他の顧客のリクエストのデータを含む応答を受け取りました。合計 155 の応答が影響を受けました。Cloudflare の調査によると、そのすべては 681,280 トークンを超えるプロンプトに対するものでした。
意図的な悪用の証拠はない
Cloudflareは、独自のテストと研究者の検証リクエストを除外した後、影響を受けたリクエストはタイミングと量において通常のロングコンテキストの使用と一致しており、誰かが意図的にバグを悪用したという証拠は見つからなかったと述べた。影響を受けるすべてのリクエストが過小なプールの容量を超えたため、エクスポージャー ウィンドウは厳しく制限されました。これは、問題の原因となった構成ミスに起因する希望の光でした。
修正: より大きなプールとより安全な障害パス
修復は障害の両方の層で機能しました。 Cloudflareは、GLM-5.2構成に一致するようにGLM-5.3デプロイメントを再構成し、十分なGPUメモリを解放して、プレフィルKVプールが約204万トークンを保持できるようになりました。これは、モデルの1,048,576トークンのコンテキスト長の約2倍です。コンテキスト ウィンドウに適合するプロンプトは常にプールに適合するようになりました。
しかし同社はまた、プールのサイジングのみに依存するのは脆弱であるとも強調しました。量子化、テンソル並列処理、CUDA グラフ サイズ、または将来のモデル バージョンへの変更によって、プール サイズが静かに変更される可能性があります。そのため、SGLang の拒否パス自体にもパッチを適用し、プレースホルダーのキャッシュを生成して転送する代わりに、拒否されたリクエストが正常に中止されるようにしました。どちらの変更も、モデルが復元される前に、研究者の再現スクリプトとCloudflare独自のカナリアマーカーテストに対して検証され、修正は上流のSGLangメンテナに提供されました。
共有 GPU メモリがセキュリティ上の質問となる理由
このレポートでは、多くのアプリケーション開発者を驚かせる実践について説明しています。推論エンジンは通常、次のリクエストで単に KV キャッシュ ページを上書きするため、リクエスト間で KV キャッシュ ページをゼロにすることはありません。これは、推論エンジン間で共通する意図的なパフォーマンスのトレードオフですが、このインシデントが示すように、これらのページが完全に上書きされる前に応答を生成できるパスは、パフォーマンスの最適化をデータ漏洩のベクトルに変えます。
この開示は開発者コミュニティに伝わり、この記事は数時間以内に Hacker News で 123 ポイントに達し、議論は、障害モード (大声で失敗するはずの要求が、破損した状態で静かに続行される) がどのように分散システム エンジニアリングからの古典的な教訓を反映しているかに焦点を当てました。
AI インフラストラクチャに関する広範な教訓
このインシデントは、AI アプリケーションのセキュリティ境界が現在、推論インフラストラクチャの奥深くまで広がっていることを思い出させます。マルチテナント モデルのサービス提供では、共有アクセラレータ、共有キャッシュ プール、および非集約プレフィルやリモート ダイレクト メモリ アクセスなどのますますエキゾチックなアーキテクチャを通じて、多くの顧客のデータが集中されます。モデルのアドバタイズされたコンテキスト ウィンドウと、それにサービスを提供するためにプロビジョニングされた物理容量との間の微妙な不一致は、テナントの分離を侵害するのに十分でした。
サーバーレス AI プラットフォームを構築している企業にとって、Cloudflare のレポートから得られることは 2 つあります。LLM サービスにおけるテナント分離のバグは現実であり、実稼働環境ですでに発生しています。また、ベンダーの応答時間 (報告から無効化まで 24 時間未満、修正と復元まで 1 日) は、機密性の高いプロンプトを処理するプロバイダーの要求に対する勤勉さの基準です。
---
AIの最新情報をお届けAIの最新ニュース、分析、ブレイクスルーを一箇所で。
AIニュースをもっと読む →