Cloudflare、コンテナ間のディスク残留データ漏えい脆弱性を修正 共有ストレージの初期化漏れが原因
要点
- Cloudflareは、コンテナ基盤上で他顧客のディスク残留データを読み取り可能になっていた脆弱性を修正したと発表した。
- 影響範囲は「Cloudflare Containers」および「Cloudflare Sandboxes」で、利用者側の追加対応は不要とされている。
- Linuxのシンプロビジョニング機能において、ブロック返却時のデータ消去(ワイプ)処理が無効化されていたことが原因だった。
- セキュリティ企業Accomplishの研究者が報告し、過去のアクセスログ調査では外部からの悪用の痕跡は確認されていない。
脆弱性の概要と影響範囲
米Cloudflareは2026年9月24日、同社のコンテナ実行基盤「Cloudflare Containers」において、同一サーバー上で過去に稼働していた別顧客のコンテナが残したディスクデータを読み取れる脆弱性を修正したと公表した。本脆弱性は、セキュリティ企業Accomplishの研究者であるOren Yomtov氏がCloudflareのバグバウンティプログラムを通じて9月4日に報告したものである。
影響を受けたのは、複数顧客のアカウントでサーバーを共有してコンテナを実行する「Cloudflare Containers」と、その基盤上で動作しAIエージェントなどの信頼できないコードを実行する環境として提供されている「Cloudflare Sandboxes」である。Cloudflareによると、読み取り可能だったデータは以前のコンテナが使用後に解放したディスク領域に残っていたものであり、稼働中のワークロードから直接漏えいしたものではなかった。また、攻撃者が特定の標的を指定してデータを取得することはできず、他顧客のデータを改ざんしたりサービスを停止させたりする影響は確認されていないという。
発生の原因:シンプロビジョニング時の消去処理スキップ
問題の原因は、コンテナに割り当てられる共有ディスクの設定不備にあった。Cloudflareの環境では、ストレージを使用量に応じて動的に割り当てるLinuxの機能「シンプロビジョニング(thin provisioning)」が採用されており、ストレージは64キロバイト(KB)単位のブロックで管理されていた。
通常、コンテナが削除されると使用されていたブロックは共有プールへ返却され、次のコンテナへ再割り当てされる際にデータが完全に消去(ワイプ)される。しかし、今回の環境ではこの初期化消去をスキップする設定になっていた。その結果、新しいコンテナが再割り当てされたブロックに対して一部の容量(例えば4KB)しか書き込まなかった場合、残りの領域(60KB)に以前のコンテナが書き込んだデータがそのまま残留する状態が生じていた。
実証実験で判明したデータ残留の実態
Accomplishの研究チームは、この仕組みを利用した実証実験を実施した。未使用のストレージ領域に4KBの小さなデータを書き込み、ファイルシステムを介さずに直接記録領域を読み出す生ディスク(RAWディスク)レベルで64KBのブロック全体を取得することで、未書き込みの60KB部分に残されていた過去のデータを抽出できることを実証した。
本番環境を用いたテストでは、Cloudflareが自動割り当てしたサーバーに対して24回の試行を行ったうち18回で残留データが検出された。さらに、4大陸に分散する22台の基盤マシンのうち20台でデータ残留が確認されたという。
回収されたブロックには、ディレクトリ構造やデータベースのページデータ、構造的に完全なSQLiteデータベースのほか、Chromiumブラウザのプロファイル、環境変数ファイル(.env)、認証情報ファイルなどが含まれていたと報告されている。なお、研究チームの解析スクリプトはファイル数やフォーマットの適合性のみを確認する仕様になっており、顧客データの内容自体は保存せず、Cloudflareへの報告提出後にすべて安全に消去されたとしている。
2段階での修正対応と悪用調査
Cloudflareは報告を受け、2段階に分けて修正を実施した。
まず第1段階として、新規に割り当てられるブロックに対する消去処理を再度有効化し、報告された手法によるデータ読み取りを遮断した。研究チームは9月14日の時点で、作成した実証コードが機能しなくなったことを確認している。
しかし、この変更だけではすでに稼働中のコンテナにマッピングされていたブロックや、サーバー上のキャッシュ(準備済みイメージレイヤー)に残る残留データまでは排除できなかった。そこで第2段階として、稼働中コンテナのディスク破棄、レイヤーキャッシュの消去、トラフィックの少ない時間帯を見計らったサーバーのドレイン(稼働中処理を安全に退避させて接続を切り離すこと)および再起動を実施した。この全面的なクリーンアップは9月19日に完了し、その5日後となる9月24日に情報が開示された。
Cloudflareは実証コードをもとに検知シグネチャを作成し、保持していたディスク操作ログを照合して悪用の有無を調査した。その結果、研究チームおよび自社エンジニアによる検証作業以外の不審なアクセスは見つからず、第三者によって悪用された証拠は確認されなかったとしている。ただし、ログの保持期間や危険な設定がいつから適用されていたのかについては明記されておらず、潜在的なリスクに晒されていた期間の詳細は明らかにしていない。
なお、Accomplish側は同様のディスク設定が同社の「Browser Run」機能にも影響していたと指摘しているが、Cloudflareの公式発表ではContainersとSandboxesのみが対象として挙げられている。本件は、Accomplishの研究チームが2026年7月以降に報告してきたAI・コード実行サンドボックス環境(Claude Cowork/Code、Cursor CLI、Docker、OpenAI Codexなど)における一連のサンドボックス脱出事例の1つとなった。