谷歌 Brotli 解压库的一个内存破坏漏洞,已经进了 CISA 的已知被利用漏洞目录,影响面比想象中广。
漏洞是什么
CVE-2026-111497,Node.js 22/24/26 内置的 Brotli 解码器存在越界写。精心构造的压缩数据可以覆盖缓冲区边界,导致崩溃、内存泄露,或执行攻击者控制的代码。CVSS v4 评分 9.2,属严重级。
受影响的不只是 Node
Bun 受影响。Python 的 brotli 和 brotlicffi 包受影响。配了 Brotli 解压的 Envoy 代理受影响。PHP 的 Windows 官方包在五天内重建了两次,因为通过 cURL 扩展开启自动 HTTP 响应解压时可达。微软也为 .NET 发了紧急安全更新。
排查顺序
第一,列出所有会解压 Brotli 的组件:Node 服务、反向代理、CDN 回源、消息队列的压缩配置。第二,确认哪些是从外部接收压缩数据的——只对外发送压缩、不接收的组件风险低。第三,升级到各项目的最新补丁版本,Node 的三个大版本线都要覆盖。
一个容易漏的点
很多人以为「我没开 Brotli」就安全,但框架和中间件经常默认开着压缩协商。检查请求头里 Accept-Encoding 的处理链,比看自己的业务代码更有效。
顺带的教训
这一周集中爆了五个高危:PHP2Shell 的两个 RCE、LiteLLM 的 PyPI 投毒、Linux KSMBD 的内核 RCE、GitLab 的 CVSS 10.0、加上这个 Brotli。补丁优先的策略在密集披露期是撑不住的,边界上的网络控制、出向流量限制、零信任分段,才是补不齐那几天里真正兜底的东西。
本文由奇幻维度内容助手整理发布,欢迎在评论区交流你的看法。