本文へ移動
English version →
重大 9.2 急ぎ度: 早めに

Google Brotli、細工データでコード実行の恐れ 修正版あり

圧縮形式 Brotli の解凍処理(デコーダー)に、細工された圧縮データでメモリを壊せる弱点が見つかりました。認証なしでネットワーク越しに狙われる可能性があり、情報漏えい、サービス停止、任意のコード実行に至るおそれがあります。1.0.10、1.1.1、1.2.1 のいずれかへ更新し、Brotli を組み込んだ製品も含めて棚卸しをしてください。

GHSA-9v8h-qqgm-4m35 公開 生成 AI で作成
画像は生成 AI で作成したイメージです

急ぎ度: 早めに

認証なしでネットワーク越しに悪用でき、深刻度は最高クラス(CVSS v4で9.2)ですが、実際の攻撃で悪用されたという情報は現時点で公表されていません。

関係があるか

Brotliのライブラリや実行ファイルを自社で使っている、またはBrotliを同梱するソフトウェア(Node.jsなど)を運用している組織が対象です。外部から受け取ったBrotli圧縮データを解凍する環境は特に注意が必要です。

製品影響を受ける版直った版
Google Brotli(1.0 系) 1.0.3以上1.0.10未満 1.0.10
Google Brotli(1.1 系) 1.1.0以上1.1.1未満 1.1.1
Google Brotli(1.2 系) 1.2.0以上1.2.1未満 1.2.1
Node.js(Brotli を内蔵) 該当する版はNode.jsの2026年10月のセキュリティリリース告知を参照してください 告知に記載された修正版を参照してください

確かめ方

  1. 1OSのパッケージ管理でBrotliのライブラリやbrotliコマンドの版を調べ、上の表の範囲に入っていないか確認します。
  2. 2Node.jsを使っている場合は、内蔵されているBrotliの版を確認し、あわせてNode.js自体の版を公式告知と照らし合わせます。
  3. 3自社開発のアプリケーションやコンテナイメージがBrotliを静的に組み込んでいないか、依存関係の一覧(SBOMやロックファイル)で確認します。
  4. 4市販製品やアプライアンスがBrotliを内蔵している場合は、各ベンダーの告知で対応状況を確認します。

何が起きたか

Googleが公開している圧縮ライブラリBrotliの解凍処理に、バッファオーバーフローの弱点が見つかりました。細工されたBrotli圧縮データを解凍させると、本来書き込んではいけないメモリ領域が壊されます。その結果、メモリの内容が外に漏れる、プログラムが止まる、最悪の場合は攻撃者の指示したコードが実行されるおそれがあります。

問題があるのは c/dec/decode.c にあるデコーダーで、1.0.3から1.2.0までが対象です。プラットフォームは問わず、すべての環境が該当します。修正版は1.0.10、1.1.1、1.2.1で、使っている系統に合わせて更新します。

この弱点はCWE-252(戻り値の未確認)に分類されています。Node.jsプロジェクトは、同プロジェクトの2026年10月のセキュリティリリース告知の中で、この件をBrotliデコーダーの範囲外書き込みによるリモートコード実行の問題として扱っています。

攻撃の流れ

  1. 1

    細工データ送付

    攻撃者が、特殊に作ったBrotli圧縮データを標的のシステムに届けます。

  2. 2

    解凍処理が実行

    標的側のアプリケーションが、そのデータをBrotliデコーダーで解凍します。

  3. 3

    メモリが壊れる

    デコーダー内部の状態を保つメモリ領域が、想定外の書き込みで壊されます。

  4. 4

    被害が発生

    情報の漏えい、サービス停止、条件次第でコード実行につながります。

公開されている情報をもとにした流れの例です。

どう悪用されるか

攻撃にはネットワーク越しにデータを届けられることが必要で、ログインなどの認証や利用者の操作は不要です。深刻度の評価(CVSS v4のベクター)では、攻撃条件の複雑さは低いとされていますが、攻撃が成立するための前提条件が一部あるとされています。その具体的な内容は公表されていません。

成功した場合、機密性・完全性・可用性のいずれにも大きな影響があると評価されています。具体的には、メモリ上の機密情報の漏えい、プロセスの停止によるサービス拒否、そして条件によっては任意のコード実行です。ただし、コード実行が実際にどの程度容易かは公表されていません。実際の攻撃での悪用が確認されたという情報も、現時点では公表されていません。

今すぐやること

  1. 1

    Brotliを使っている箇所を洗い出す

    OSパッケージ、アプリケーションの依存関係、コンテナイメージ、Node.jsなどの内蔵ライブラリを対象に、Brotliの版を一覧にします。

    brotli --version
  2. 2

    修正版へ更新する

    1.0系は1.0.10、1.1系は1.1.1、1.2系は1.2.1へ更新します。OS標準のパッケージを使っている場合は、ディストリビューターが提供する更新を適用します。

  3. 3

    Node.jsの修正版を適用する

    Node.jsを運用している場合は、2026年10月のセキュリティリリース告知で該当する版と修正版を確認し、更新します。

    node -p "process.versions.brotli"
  4. 4

    外部データを解凍するシステムを優先する

    インターネットから圧縮データを受け取るWebサーバー、プロキシ、APIゲートウェイ、外部サイトへ通信するクライアントなどを先に更新します。

  5. 5

    組み込み製品のベンダー情報を確認する

    自社で更新できない製品やSaaS連携ソフトは、ベンダーに対応状況と修正版の提供時期を問い合わせます。

すぐ更新できないとき

ベンダーが公表した回避策は、現時点ではありません。更新までの暫定策としては、あくまで一般的な考え方ですが、外部からBrotli圧縮(Content-Encoding: br)のデータを受け付けないようにゲートウェイ側で制限する方法があります。ただし、他の経路で解凍される場合は防げず、正常な通信に影響する可能性もあるため、影響を確認してから実施してください。

背景

BrotliはGoogleが開発した圧縮方式で、Webの通信を小さくして速く届けるために広く使われています。ブラウザーとWebサーバーのやり取りのほか、各種言語のランタイムやライブラリ、配信基盤にも組み込まれています。社内の担当者がBrotliを直接入れた覚えがなくても、使っているソフトの内部で動いていることがあります。

解凍や展開のように、外部から来たデータを解釈する処理は、メモリ破壊の弱点が見つかりやすい領域です。細工されたデータで処理の想定が崩れ、メモリを壊されるという問題は、画像、圧縮、文書の各形式の処理系でこれまでも繰り返し報告されてきました。ライブラリ単体の更新だけでなく、それを内蔵する製品の更新も確認する必要があります。

よくある質問

Q.Brotliを自分で導入していなくても対象になりますか。
A.なる可能性があります。Node.jsなどのソフトウェアはBrotliを内蔵しています。使っている製品の版と、ベンダーの告知を確認してください。
Q.すでに攻撃に使われていますか。
A.実際の攻撃で悪用されたという情報は、現時点で公表されていません。ただし認証なしで外部から狙える種類の弱点のため、公開情報が増える前に更新を済ませておくのが安全です。
Q.どの版に更新すればよいですか。
A.使っている系統に合わせて、1.0系は1.0.10、1.1系は1.1.1、1.2系は1.2.1へ更新します。1.0.2以前など、対象範囲に入っていない版については、公表されている情報の範囲では影響の有無が示されていません。

まだ分かっていないこと

  • 攻撃が成立するための前提条件の詳細は公表されていません。
  • 実際の攻撃での悪用や、悪用コードの出回りについては、現時点で公表されていません。
  • Node.js以外に、Brotliを内蔵する製品のどれが影響を受けるかは明らかになっていません。各ベンダーの告知を確認してください。

この記事は、取得元の公開情報をもとに生成 AI で作成しています。誤りを含むことがあります。対応を決める前に、下の原文と参照先を確認してください。

影響パッケージ

種類パッケージ影響を受ける版直った版
Google Brotli
1.0.3 以上 1.0.10 未満
1.1.0 以上 1.1.1 未満
1.2.0 以上 1.2.1 未満
1.0.10
1.1.1
1.2.1
Bitnami node
22.23.4 未満
23.0.0 以上 24.22.1 未満
26.0.0 以上 26.12.1 未満
22.23.4
24.22.1
26.12.1
Bitnami node-min
22.23.4 未満
23.0.0 以上 24.22.1 未満
26.0.0 以上 26.12.1 未満
22.23.4
24.22.1
26.12.1
PyPI brotlicffi
1.0.3 以上 1.2.1.0 未満
1.2.1.0
PyPI brotli
1.0.3 以上 1.2.1 未満
1.2.1
pip brotli
1.2.1 未満
1.2.1
pip brotlicffi
1.2.1.0 未満
1.2.1.0

ディストリビューション別の修正状況

各ディストリビューションが公開している、この CVE の修正パッケージ

原文の説明 取得元が公開している説明をそのまま載せています (多くは英語)。

A buffer overflow vulnerability in the Brotli decoder (c/dec/decode.c) in Google Brotli versions 1.0.3 through 1.2.0 on all platforms allows a remote unauthenticated attacker to corrupt adjacent decoder state memory, disclose sensitive memory contents, cause a denial of service, or potentially execute arbitrary code using a crafted Brotli-compressed stream.

Users need to update any Brotli libraries or binaries between 1.0.3 through 1.2.0 to the latest available version: 1.0.10 or 1.1.1 or 1.2.1.

出典: Node.js Security Releases NVD GitHub Advisory

参照URL

当サイトでは、アクセス解析と広告の効果測定のために Cookie を使います。株式会社Game のサイト共通の設定です。 詳しく