圧縮のBrotliに乗っ取りの穴 Node.jsやPythonの修正版へ早めの更新を
圧縮の仕組みBrotliの復号に、細工したデータでメモリーを壊し、外からコードを動かされうる穴(CVE-2026-111497)が見つかった。Node.jsは22・24・26の各系統で修正版を出し、Brotli本体とPythonのパッケージも直した版が出ている。
記事の内容を自社でどう進めるか、内容が固まっていない段階でも相談できます。仕事の相談
毎週 1 回、その週の記事から 5 本と実践の 1 本を選んでメールで届けます。ニュースレターを購読する(無料)

Webでよく使われる圧縮の仕組み「Brotli」の復号の処理に、外から送った細工データでメモリーを壊せる穴(CVE-2026-111497)が見つかった。認証なしで、処理の停止やメモリーの中身の漏えい、場合によってはコードの実行につながる。Node.jsは10月21日(米国時間)に22・24・26の各系統で修正版を出し、Brotli本体とPythonのパッケージも直した版が出ている。Node.jsで動くサーバーや道具を持つ人は、今週のうちに版を上げておきたい。
細工した圧縮データで乗っ取り
米国立標準技術研究所(NIST)の脆弱性データベースNVDの記録によると、穴はGoogleのBrotliの1.0.3から1.2.0までの復号の処理にある。細工したBrotliの圧縮データを読み込ませると、復号の途中の状態を置いたメモリーを壊せる。結果として、処理を止めたり、メモリーの中身を読み出したり、条件によっては任意のコードを動かしたりできるという。攻撃にログインは要らない。
深刻度の点数(CVSS 4.0)は、登録元のGoogleの採点で10点満点の9.2、「緊急」の区分だ。直した版は、Brotliの1.0.10・1.1.1・1.2.1になる。
Node.jsは3つの系統で修正
Node.jsの10月のセキュリティ更新の告知では、この穴を「高」の扱いで直した。node:zlibでBrotliのデータを展開するアプリに、攻撃者がデータを渡せると、プロセスのメモリーを壊され、落ちる・中身が漏れる・コードを実行されるおそれがある。不正な区切りを「入力がまだ足りない」と誤って扱い、8バイトの内部の入れ物に書き足し続けていたのが原因だという。
直した版は、Node.js 22.23.4・24.22.1・26.12.1だ。告知は、報告した人として「OpenAI Codex Security」の2人の名前を挙げている。
Node.jsだけの話ではない
GitHubの勧告は、PythonのbrotliとbrotlicffiのパッケージもBrotliの同じ穴の影響を受けるとし、1.2.1(brotlicffiは1.2.1.0)で直したとしている。
セキュリティの情報を流すメーリングリスト「oss-security」では、ある投稿が、問題はNode.jsだけでなくBrotliを組み込んだ側全体に及ぶと注意を呼びかけた。例として通信の中継ソフトEnvoyを挙げ、Ubuntuがこの穴の優先度を「中」としている点も急ぎ方が足りないと書いている。続く投稿は、Brotli本体の1.2.1が出たことと、Node.jsのほかBun・Envoy・Istioが修正を取り込んだ版を出していることに触れた。
自分の環境で確かめる所
Node.jsのBrotliは本体に組み込まれているので、npmのパッケージを入れ替えても直らない。直すには、Node.jsそのものを上の版まで上げる必要がある。手元なら「node -v」で版を見て、22系なら22.23.4、24系なら24.22.1、26系なら26.12.1より前かを確かめる。
見落としやすいのは、手元より本番の側だ。サーバーやCIで使うDockerの土台のイメージ、ホスティングの実行環境の版の指定が古いままなら、手元を上げても穴は残る。Node.jsの版を固定している設定ファイルも合わせて見直したい。
Pythonでは、「pip show brotli」や「pip show brotlicffi」で入っている版を確かめられる。画像やWebの処理のライブラリが、知らないうちに依存として連れてきていることもある。BunやEnvoyを使っている人は、それぞれの公開元で修正を取り込んだ版が出ているかを確かめ、更新しておくとよい。
編集部の見方
Claude CodeやCodexで小さなサービスを作り、Node.jsやBunで動かしている人ほど、自分の版を確かめる価値がある。圧縮された応答やアップロードを受け取って展開する作りなら、外から細工したデータが届く入り口になりうる。手元の開発の道具だけでなく、本番のサーバー、Dockerの土台のイメージ、Pythonの依存に入ったbrotliまで、Brotliを抱えている所を一度洗い出しておきたい。
出典
に確認(日本時間)
- NVDの記録(nvd.nist.gov)
- Node.jsの10月のセキュリティ更新の告知(nodejs.org)
- GitHubの勧告(github.com)
- ある投稿(openwall.com)
- 続く投稿(openwall.com)
この記事は役に立ちましたか
ありがとうございます
ありがとうございます



