开发者注意了:Node.js近日发布6月2026安全性更新公告,合计修补12个漏洞,其中包含2个高风险点、6个中风险以及4个低风险。由于涉及底层解析与安全相关组件,受影响的版本覆盖 Node.js 22、Node.js 24 与 Node.js 26。官方已经提供修补后的更新版本,建议尽快升级到 Node.js 22.23.0、Node.js 24.17.0、Node.js 26.3.1,避免把已知问题留在生产环境里。
此次更新不仅针对“漏洞本体”,还把多个随附元件一并拉进来做版本修正。比如负责解析HTTP协议数据的 llhttp 迎来 9.4.2;提供 HTTP/2 实现的 nghttp2 更新至 1.69.0;与 TLS/SSL 通讯实现相关的 OpenSSL 提升到 3.5.7;同时,面向Node.js开发的HTTP/1.1客户端库 undici 也分别包含了多个受影响版本并更新。
在两则高危漏洞中,CVE-2026-48933 指向 Node.js 的 WebCrypto 实作缺陷。问题出在 AES 加解密流程发生整数溢位,进而触发缓冲区溢位风险。更要命的是,当 subtle.encrypt() 的输入容量为 2 GiB 的倍数时,可能导致处理进程停摆,也就是典型的可被利用来造成服务不可用的破坏性风险。
另一处高危 CVE-2026-48618 则与 TLS 主机名称解析有关。攻击者可能借助 Unicode 间隔符(·)相关的解析差异,让“解析器”与“验证器”在对主机名进行正規化处理时出现不一致。结果就是:TLS 通配符在多层子域名的验证逻辑可能被绕过,从而造成机密性受损,甚至突破原本的安全边界。这类问题往往不靠“直接爆破”,而是利用校验逻辑的边界条件让证书或主机名校验失效。
安托特报员提醒:如果你正在使用 Node.js 的上述版本,别只盯应用层逻辑。优先把运行时升级到官方已修补的版本,并同步核查依赖组件是否也被打到对应安全版本,以降低绕过与拒绝服务带来的生产风险。