【ITニュース解説】GLM-5.3 Workers AIモデルにおけるリクエスト間のKVキャッシュ漏洩とSGLangによる対策をCloudflareが解説
2026年10月28日に「GIGAZINE」が公開したITニュース「GLM-5.3 Workers AIモデルにおけるリクエスト間のKVキャッシュ漏洩とSGLangによる対策をCloudflareが解説」について初心者にもわかりやすく解説しています。
ITニュース概要
CloudflareのAIモデル「GLM-5.3」で、利用者間のデータが誤って見えてしまう「KVキャッシュ漏洩」というセキュリティ問題が発覚した。外部からの報告を受け、Cloudflareは迅速に修正を完了し、モデルは復旧。対策としてSGLangの導入を解説した。
ITニュース解説
Cloudflare Workers AIで発生した「GLM-5.3 Workers AIモデルにおけるリクエスト間のKVキャッシュ漏洩」は、AIモデルを提供するクラウドサービスで考慮すべき重要なセキュリティ問題を示している。この問題は、AIモデルを複数のユーザーが共有して利用する際に、あるユーザーの情報が意図せず別のユーザーに漏洩してしまう可能性があったという内容だ。
まず、Cloudflare Workers AIとは何かについて説明する。これは、Cloudflareが提供するサーバーレス実行環境「Workers」上で、AIモデルを手軽に利用できるようにしたサービスである。開発者は、自分でAIモデルのインフラを構築・運用することなく、Cloudflareのインフラ上でホストされたAIモデルをAPI経由で利用できる。これにより、AI機能を自分のアプリケーションに簡単に組み込むことが可能になる。GLM-5.3モデルとは、Cloudflare Workers AI上で提供されていた特定のAIモデルの一つであり、大規模言語モデルの一種と考えれば良い。
今回の問題の核心は「KVキャッシュ漏洩」である。大規模言語モデル(LLM)がユーザーからの質問(プロンプト)に対して回答を生成する際、一度に全ての単語を生成するのではなく、一つずつ単語を予測して出力していく。この生成プロセスにおいて、モデルはそれまでに入力されたプロンプトや、既に生成された単語の情報を保持しておく必要がある。この情報を効率的に保持するための仕組みが「KVキャッシュ」と呼ばれるものだ。KVキャッシュは、モデルが次の単語を予測する際に過去の情報を素早く参照できるようにする役割を担い、推論速度の向上やメモリ使用量の削減に貢献する。具体的には、モデルの内部で計算された「キー(Key)」と「バリュー(Value)」という中間表現を保存し、同じ計算を繰り返さないようにする仕組みと理解すると良い。
「テナント分離問題」とは、複数のユーザー(テナント)が同じハードウェアリソースやソフトウェアサービスを共有して利用するクラウド環境で発生しうるセキュリティ問題だ。本来、それぞれのユーザーの情報は互いに独立し、参照できないように厳密に分離されているべきだが、システムの不具合や設計上の欠陥により、あるユーザーのデータが別のユーザーからアクセス可能になってしまうことを指す。今回の「KVキャッシュ漏洩」は、このテナント分離問題の一種である。具体的には、Cloudflare Workers AI上でGLM-5.3モデルが複数のユーザーからのリクエストを同時に処理する際に、あるユーザーのリクエスト処理中に生成・利用されたKVキャッシュの情報が、次の別のユーザーのリクエスト処理時に誤って残存したり、アクセス可能になってしまったりしたことで発生した。これにより、本来は他者から見えないはずのユーザーのプロンプトの一部や、モデルが生成途中に保持していた情報が、意図しない形で別のユーザーに漏洩する可能性があったのである。
なぜこのような問題が発生したのか。AIモデルの推論処理を高速化するため、クラウドサービスでは複数のユーザーからのリクエストをまとめて処理する「バッチ処理」が一般的に行われる。これにより、AIモデルのGPUなどの計算リソースを効率的に利用できる。しかし、このバッチ処理を行う際に、異なるユーザーのリクエストから生成されるKVキャッシュの管理が不適切だったことが原因と考えられる。具体的には、あるユーザーのリクエスト処理が完了した後、そのユーザーのKVキャッシュが完全にクリアされず、次のユーザーのリクエスト処理が開始された際に、残存していた前ユーザーのKVキャッシュが誤って利用されてしまったり、参照されてしまったりする状況が考えられる。これは、リソースを共有する際の分離が不完全であったために起こる問題だ。
Cloudflareはこの問題を修正するために、「SGLang」という技術を導入したと説明している。SGLangは、大規模言語モデルの推論を効率的に実行するための新しいプログラミングモデルまたはフレームワークである。特に、KVキャッシュの管理において、より細かく、より堅牢な分離を実現する機能を持つ。SGLangを導入することで、Cloudflare Workers AI上のGLM-5.3モデルは、複数のユーザーからのリクエストをバッチ処理する際にも、それぞれのユーザーのKVキャッシュを厳密に分離して管理できるようになった。つまり、あるユーザーのリクエスト処理中に生成されたKVキャッシュは、そのユーザーのリクエスト処理が終了すると同時に確実にクリアされるか、あるいは別のユーザーのKVキャッシュとは完全に異なるメモリ領域に隔離されることで、相互に干渉することがないようになっている。これにより、今回の問題の原因となったKVキャッシュの意図しない漏洩が根本的に防がれるようになったのだ。
今回のインシデントは、セキュリティ研究者からの報告を受けてCloudflareが迅速に対応し、モデルは翌日には復旧された。そして、Cloudflareがインシデントの詳細を公開したことで、この問題に対する透明性の高い姿勢が示された。この事件は、AIモデルをサービスとして提供するクラウドプロバイダーが、共有リソース環境におけるデータ分離とセキュリティ対策にいかに厳密に取り組む必要があるかを示している。特に、AIモデルのような新しい技術領域では、従来のアプリケーションとは異なるデータフローやキャッシュの仕組みが存在するため、それらに特化したセキュリティリスクや対策を常に考慮する必要がある。システムエンジニアを目指す者にとって、クラウドサービスにおけるテナント分離の概念、共有リソースの適切な管理、そして新しい技術がもたらす潜在的なセキュリティリスクとその対策について学ぶ良い事例となるだろう。