セキュリティ · 2026年10月29日

Microsoftが.NETのBrotliデコーダーにおける深刻な脆弱性を修正する緊急パッチを公開

A MacBook with lines of code on its screen on a busy desk
Christopher Gower / Unsplash

Microsoftは.NETのBrotliデコーダーに存在する深刻な脆弱性を修正するため、帯域外のセキュリティアップデートを公開しました。この脆弱性は、Broccoli2Shell、Node2Shell、またはHTTP2Shellとして知られています。

CVE-2026-111497として識別されるこの脆弱性は、Googleが開発し広く利用されているロスレス圧縮アルゴリズムであるBrotliのデコーダーにおける境界外書き込みによって発生します。この影響は、HTTPクライアントとサーバーの両方、および脆弱なBrotli実装を使用しているその他のアプリケーションやツールに及びます。

権限を持たない攻撃者が特別に作成されたBrotli圧縮ストリームを送信することで、システムのクラッシュやメモリリークを引き起こす可能性があります。また、脆弱なBrotliバイナリまたはライブラリを使用しているデバイス上では、リモートでコードを実行される恐れがあります。さらに、パッチが適用されておらず、デフォルト以外の設定を使用している.NETインストール済みシステムでは、リモートでの権限昇格が行われる可能性があるとMicrosoftの勧告に記載されています。

影響を受ける可能性があるのは、ASP.NET Coreのリクエスト解凍、HttpClientの自動レスポンス解凍、またはSystem.IO.Compression Brotli APIを通じてBrotliデータを処理するアプリケーションです。ただし、新規にインストールされた.NETまたはASP.NET Coreでは、Brotli解凍はデフォルトで有効になっていません。

Microsoftは.NET 8を8.0.33に.NET 9を9.0.22に.NET 10を10.0.14に、および.NET 11をリリース候補版3に更新するアップデートを提供しました。GitHub上でBroccoli2Shellの概念実証コードが公開されていますが、実際の攻撃報告はまだありません。また、アプリケーション自体にBrotliライブラリが同梱されている場合、システムのライブラリを更新してもリスクは解消されないと警告されています。直ちに更新できない組織は、プロキシやファイアウォールでBrotli圧縮リクエストをブロックするか、一時的にBrotliデコーディングを無効にすることが推奨されています。