トップ > 社会
社会Brotli脆弱性「HTTP2Shell」、.NETに定例外更新 VSなども対象

内容
HTTP2Shellとはどんな脆弱性か
「HTTP2Shell」は、Googleのデータ圧縮形式「Brotli」で、圧縮データを元に戻す展開処理に見つかったメモリ破壊の脆弱性です。識別番号はCVE-2026-111497で、「Node2Shell」とも呼ばれています。悪用されると、認証を経ていない攻撃者がプロセスのメモリを読み取ったり壊したりできるおそれがあります。その結果、情報漏洩やサービス拒否(DoS)、権限昇格が起こる可能性があります。JPCERT コーディネーションセンターも、BrotliのC言語実装にある境界外書き込みの脆弱性として注意を呼びかけています。深刻度を示すCVSSは8.1と報じられています。
影響を受ける製品
この脆弱性はWeb関連の幅広い分野に影響するとされ、PHPやNode.jsでも対応が求められています。.NETの今回の脆弱性は、Node.jsと同じCVEです。.NETはWindows、Mac、LinuxのすべてでBrotliを採用しています。そのため、ASP.NET Coreでのリクエスト展開、HttpClientでのレスポンス自動展開、System.IO.CompressionのBrotli APIのいずれかでBrotli圧縮データを扱うアプリは、影響を受ける可能性があります。
このうち、リクエスト展開とレスポンス自動展開は初期設定で無効になっています。自分で有効にしていなければ問題はありません。ただし、アプリやライブラリがBrotli APIを直接呼び出している場合は影響を受ける可能性があり、開発者自身による確認が必要です。Windows専用の.NET Frameworkは対象外です。
今回の更新で修正された内容
Microsoftは.NET 8・9・10向けに定例外(OOB)のセキュリティ更新を公開しました。次期版.NET 11のリリース候補版RC3も出ています。修正済みのバージョンは8.0.33、9.0.22、10.0.14、11 RC3です。関連製品のVisual StudioとPowerShellでもセキュリティ更新が行われました。
今回の更新で修正された脆弱性は全部で4件です。HTTP2Shellのほかに、Linux環境向けのCVE-2026-114148も修正されました。これは、一部のtarballに含まれる所有権の情報に問題があり、ローカルの攻撃者がファイルを書き換えて権限を昇格できるおそれがあったものです。さらに、10月13日の定例更新で修正が不十分だったCVE-2026-70197(SocketAsyncEventArgsのメモリ破壊)とCVE-2026-102870(Blazor WebAssemblyデバッガー)にも、追加の修正が加えられました。
利用者に必要な対応
基本の対応は、更新済みの.NETランタイムをOSに入れてから、アプリを再起動することです。ランタイムを同梱した自己完結型アプリは、OS側のランタイムを更新しても効果がありません。新しいランタイムで再ビルドし、配布し直す必要があります。コンテナーで動かしている場合も、更新済みの.NETイメージで作り直してから再デプロイします。いまどのランタイムが入っているかは、「dotnet --list-runtimes」を実行すると一覧で確かめられます。Microsoftはできるだけ早く更新するよう勧めています。
定例外の更新になった理由
Microsoftが定例日を待たずに更新した理由は、公式には説明されていません。今回の更新は、深刻度の高いHTTP2Shellへの対処と、10月13日の更新で残っていた不備の修正を含む内容になっています。
注目ポイント
Brotliは多くのWeb技術で使われている圧縮形式で、Node.jsやPHPに続いて.NETにも影響が広がった点が関心を集めています。一方、.NETでは主な展開機能が初期設定で無効になっており、影響の有無は使い方によって分かれます。自己完結型アプリやコンテナーでは再ビルドが必要なため、開発・運用の現場でどこまで早く対応が進むかが焦点です。
参考記事
- 「Brotli」の脆弱性「HTTP2Shell」はMicrosoft製品にも影響、「.NET」に定例外更新窓の杜 2026年10月27日 09:50
- BrotliのC言語実装における境界外書き込みの脆弱性(CVE-2026JPCERT コーディネーションセンター 2026年10月27日 09:50
今話題の記事
ランキング登場履歴
この記事の内容に誤りを見つけた方は 情報の誤りを報告 からお知らせください。