HTTP/2 会话拆除崩溃
24.x 和 26.x 提前响应时,会话拆除可能仍有已分配的请求头,导致进程终止。
Node.js 22.23.5、24.22.3 和 26.13.1 修复 11 月披露的 HTTP/2、HTTPS、TLS、代理及权限模型漏洞。HTTPS 泄露需要特定响应处理,以及可取得请求正文数据的途径。多项 HTTP/2 故障可远程触发。
这是与 10 月发布不同的批次。公告列出七项高危、六项中危及三项低危 Node.js 漏洞,其中通配权限问题已在 10 月披露,详情见原条目,并对指定版本线更新 llhttp、undici 和 sqlite。CVE-2026-123864 要求 Node.js HTTPS 处理器在请求正文结束前发送响应头,之后以非空内容结束响应。回显或存储请求正文的路由可暴露相关内存。明文 node:http 不涉及此路径。其他漏洞影响经 TLS 或明文的 HTTP/2、TLS 握手、mTLS 策略或本地功能。按公告逐项核对适用范围并确定优先级,为所有受支持版本线安装补丁。
24.x 和 26.x 提前响应时,会话拆除可能仍有已分配的请求头,导致进程终止。
22.x、24.x 和 26.x 提前发送响应头、随后以非空内容结束响应时,可能读取堆内存。需有回显或存储路由才能取得数据。
三个版本线在关闭期间遇到协议错误时,可能残留内存和文件描述符。
三个版本线在写入受背压时拆除流,可能发送已释放内存。纯远程拆除涉及自 24.22.0 和 26.9.0 起且未修补的版本。
24.x 和 26.x 的特定服务器握手钩子或 addContext 可能让延迟回调使用已销毁的套接字。
三个版本线的服务器若按主机使用不同客户端证书策略,已通过认证的客户端可能把原有授权带到策略更严格的主机。
24.x 和 26.x 中,respondWithFile 或 respondWithFD 有待完成写入时重置流,可残留对已释放流的引用。
24.x 和 26.x 将攻击者控制的长来源值传给 session.altsvc 时,可能越界写入一个字节。
三个版本线仅提供客户端 CA 的 SNI 上下文可能保留默认 CA,接受对应主机策略拒绝的证书。
24.x 和 26.x 的排队入站缓冲区可能不计入 maxSessionMemory 预算并持续增长。
三个版本线的部分 ERR_PROXY_INVALID_CONFIG 路径可能输出含凭据的原始代理 URL。
三个版本线中,省略 ca 和传入 ca: [] 的请求可能共享缓存键,使 TLS 1.3 恢复先前已授权的会话。
三个版本线取消 respondWithFile 或 respondWithFD 时,可能触发空指针解引用。
三个版本线的 macOS 和 Windows 上,仅有有限读取权限的递归监视器可能泄露后代路径名称及时间元数据。
三个版本线中,对端断开可使流式传输时调用 deflate.params 的应用崩溃。
| 产品 | 安全版本 | 备注 |
|---|---|---|
| Node.js 22.x | 22.23.5 | |
| Node.js 24.x | 24.22.3 | |
| Node.js 26.x | 26.13.1 |
2026年11月11日
Node.js 发布 11 月安全更新
公告列出 16 个 Node.js CVE,包括 10 月已披露的一项,并更新各活跃版本线的依赖。
我们列出每条说法和它的出处,并标出一手来源(厂商、研究人员、软件仓库)。各方说法不一致时,按最坏的可信情况定级。