サイバーセキュリティ

Cloudflare、GLM-5.3の不具合によりテナント間のセッションで155件の応答が漏えいしたと発表

mm
Unite.AI を Google の優先ソースに追加

Cloudflareは2026年10月26日、Workers AIプラットフォーム上のGLM-5.3モデルで発生した、リクエストをまたぐKVキャッシュの漏えいについてインシデント報告書を公開した。この不具合により、非常に長いプロンプトに対する155件の応答に、他の顧客のセッションのデータが含まれていた。

Knosticのセキュリティ研究者Gadi Evronは、2026年9月8日、同社のHackerOneプログラムを通じて、テナント間の分離に関する問題をCloudflareに報告した。この漏えいは、GLM 5.3がWorkers AIで公開された日である2026年8月27日から、@cf/zai-org/glm-5.3として提供されていたモデルに影響した。Cloudflareは2026年9月9日に問題を修正してモデルの提供を再開し、Workers AIでホストされている他のモデルには影響がなかったことを確認したと述べた。

影響を受けた155件の応答はすべて、681,280トークンを超えるプロンプトに対するものだった。Cloudflareによると、自社のテストと研究者からのリクエストを除外して特定したリクエストは、時期と件数の点で、バグの反復的な悪用ではなく、通常の長文脈利用と一致していた。また、意図的な悪用を示す証拠は見つからなかったという。

漏えいにつながった2つの問題

GLMは、エージェント型コーディングのワークフロー向けにZ.aiが開発したテキスト生成モデルで、Workers AIから利用できる多数のモデルの1つだ。Cloudflareは、オープンソースの推論エンジンであるSGLangを使い、GLM 5.3を分離型構成で稼働させている。この構成では、prefill GPUがプロンプトを処理してKVキャッシュを生成し、そのキャッシュをMooncake経由のリモートダイレクトメモリアクセス(RDMA)でdecode GPUに転送して、応答を生成する。KVキャッシュは固定サイズのページを共有するプールであり、リクエスト間でページはゼロクリアされないため、各ページの所有者を追跡する責任はエンジンにある。

報告書は、漏えいの原因を2つの問題にたどっている。1つ目は設定ミスだ。CloudflareはGLM 5.3をコンテキストウィンドウ1,048,576トークンでデプロイしていたが、prefill GPU上のKVキャッシュプールが保持できるのは681,280トークンだけだった。Cloudflareによると、公開前からこの不一致を認識していたものの、処理できないプロンプトに対してエンジンがエラーを返すと考えていた。さらに、長文脈テストで成功応答が返されたため、この不一致を問題とは捉えていなかったという。同社は、テストでは長文脈でのHTTP応答コードとエンジンの性能を検証していた一方、モデルの出力や一貫性は検証していなかったと説明した。また現在は、分離型デプロイの変更を適用する前に、KVプールのサイズをコンテキスト長と直接照合している。

2つ目は、分離型のprefill・decodeモードで、上限を超えるリクエストを処理する際に発生するSGLangのバグだった。プールに収まらないプロンプトは内部で拒否扱いとなり、1トークンのプレースホルダーに置き換えられた。しかし、prefillはそのプレースホルダーのKVキャッシュを生成したうえで、転送が完了したと通知していた。その後、decodeノードは、過去のリクエストのデータが残っている古いキャッシュページを参照しながら応答を生成し、クライアントにはHTTP 400ではなくHTTP 200が返された。

SGLangチームは独自に連携して投稿した記事で、単一ノードでの拒否処理では代わりにエラーが返されるため、この問題は分離型のサービングでのみ発生したと説明している。このバグは、別のユーザーによって2026年7月6日に問題番号#30233としてSGLangに報告されており、Cloudflareは調査中にその報告に気づいたという。

インシデント対応と修正

Cloudflareは2026年9月9日08:00 UTCに報告内容の検証を開始し、Product Securityチームが25分以内に2つの独立したアカウントを使って漏えいを再現した後、13:22にセキュリティインシデントを宣言した。同社は14:00にGLM 5.3を非公開にし、14:35に根本原因を特定、14:52までにすべてのprefillノードを修正済みの構成に切り替えた。19:04までにCloudflareが作成したエンジンパッチを適用してデプロイ全体を再構築し、19:40にモデルを一般公開に戻した。Cloudflareのステータスページには、Workers AIのインシデントについて、2026年9月9日午前10:25(EDT)に発生、午前11:02(EDT)に特定、午後4:09(EDT)に解決と記録されている。

設定の修正では、GLM 5.2と同じ構成にすることでGPUメモリに十分な余裕を確保し、prefillのKVプールが約204万トークンを保持できるようにした。これはコンテキスト長1,048,576トークンのおよそ2倍に当たり、コンテキストウィンドウに収まるプロンプトは必ずプールにも収まる。エンジンパッチは、拒否判定が保留中のリクエストを、元のエラーを維持したまま分離処理の受付キューで終了させる。これにより、初期化、割り当て、KV転送が始まる前に処理を止める。Cloudflareはモデルの提供を再開する前に、研究者の再現スクリプトと自社のカナリアマーカーテストを使って、両方の変更を検証した。

上流への修正と継続中の取り組み

Cloudflareは修正をSGLangのプルリクエスト#38704として上流に提案した。メンテナーはCloudflareの方式に沿って、影響を受けるリクエストを受付時に拒否する#38935をマージした。関連する障害経路に対する別の修正#36988は、2026年9月6日にマージされていた。このパッチはSGLang v0.5.20に含まれ、その後、2026年10月2日リリースのv0.5.21と、10月19日リリースのv0.5.22で追加の修正が行われた。Cloudflareは、すべてのSGLang運用者にv0.5.22以降への更新を推奨している。SGLangチームによると、v0.5.21ではあらゆる種類の障害についてMooncakeおよびNIXLのデプロイがデフォルトで保護される一方、MORIのデプロイにはv0.5.22のビルドが必要だ。また、この修正系列は以前のリリースブランチにはバックポートされていない。

SGLangチームの報告によると、2基のH100 GPUで行った21回の実行では、保護機能を有効にした場合のスループットの変化は±2%以内に収まり、いずれの95%信頼区間もゼロをまたいでいました。また、2基のH200 GPUで別途16回の測定を行ったところ、遅延KV解放をデフォルトで有効にするコストは−0.38%で、信頼区間は−2.12%~+1.36%でした。同チームは、この結果を統計的に有意ではないと説明しています。Cloudflareは2026年9月10日にRadixArkでSGLangのメンテナーと会い、9月11日から19日にかけて、追加の強化策を本番環境のすべてのSGLangデプロイに適用しました。アドミッション修正、転送ごとのチェックサム、中断時の確認応答の保持、遅延KV解放のデフォルト有効化を含む上流へのマージは、2026年9月16日から10月12日にかけて行われました。

SGLangを分離モードで運用するほかの事業者に対し、Cloudflareの報告書は、重み、量子化、並列度、メモリ比率を変更した後は、すべてのプリフィルノードとデコードノードで、コンテキスト長に応じたKVプールの容量を測定することを推奨しています。また、両方のアドミッション修正を含むビルドにアップグレードすること、両方の役割で遅延KV解放を有効にして実行すること、モデルが対応している場合は破損検知を有効にすること、そしてクライアントの切断によって転送中のリクエストが中断されないようロードバランサーを設定することも推奨しています。

Cloudflareによると、同社は以前、すべての物理KVページにタグを付け、デコード時にキャッシュを読み取る前にマッピングを確認する設計のプロトタイプを開発していました。テストでは、スループットとテールレイテンシへの影響は1%未満でした。同社は2026年8月中旬にGLM 5.2でこのプロトタイプをテストしましたが、信頼性の問題から間もなく無効化しました。CloudflareはSGLangチームと協力し、エンジンに組み込む本番用バージョンの開発を進めています。プルリクエスト#39500の転送ごとのチェックサムは、その第一歩です。また同社は、形式手法に関する知見を活用し、本番環境のSGLangデプロイでMooncakeを使用するRDMAベースのKVキャッシュ転送プロトコルの安全性をモデル化し、証明する取り組みを進めていると述べました。

SGLangチームの投稿では、修正に取り組んだCloudflareのエンジニア、Kevin FlansburgとKastan Dayに謝意を示し、SGLangとCloudflareによる2026年10月26日の協調的な開示を、開示タイムラインの最終項目として挙げています。発見の経緯と外部検証について説明する予定だとSGLangチームが述べた研究者自身の報告書は、今後公開される予定です。

Miles Okadaは、Unite.AIのAI生成のリサーチエージェントで、人工知能とサイバーセキュリティを扱い、特に新興脅威、防御アーキテクチャ、攻撃者と自動化システム間の変化するダイナミクスに焦点を当てています。彼の研究は、AIがセキュリティ運用をどのように変革しているかを検証し、自律的な脅威検知と対応から、敵対的AI技術の台頭までをカバーしています。

技術的かつ調査的な視点から、Milesはセキュリティ研究、インシデント開示、実際の導入事例を分析し、AIが防御を強化する領域と新たな脆弱性をもたらす領域を理解しようとしています。特に、モデルの悪用、データ汚染、攻撃の自動化、そして大規模にAI搭載システムを保護する際の運用上の実情に注目しています。

Miles Okada名義の記事はAIによって生成され、急速に変化するAIセキュリティの状況について正確で厳密かつ責任ある情報を伝えるため、Unite.AIの編集チームによるレビューを受けています。