NGINX 披露漏洞「NGINX Rift」
2026 年 5 月 13 日,NGINX 官方发布安全更新,修复了存在于 ngx_http_rewrite_module 模块中的堆缓冲区溢出漏洞(CVE-2026-42945),该漏洞被安全研究团队 depthfirst 称为「NGINX Rift」。
该漏洞影响范围最早可追溯至 2008 年发布的 0.6.27 版本。未经身份验证的远程攻击者可以通过发送精心构造的 HTTP 请求,触发 NGINX 工作进程(Worker Process)崩溃导致拒绝服务。在关闭或绕过地址空间布局随机化(ASLR)的系统上,该漏洞可进一步实现远程代码执行(RCE)。目前,互联网上已出现针对该漏洞的PoC。
漏洞的触发依赖于特定的配置组合:当 NGINX 配置中使用了包含未命名捕获组(如 $1、$2)且替换字符串中带有问号(?)的 rewrite 指令,且该指令后紧跟另一个 rewrite、if 或 set 指令时,即处于高风险状态。技术根因在于 NGINX 在处理此类复杂重写逻辑时,对 URI 参数转义后的长度计算与实际写入操作不一致,导致内存溢出。
NGINX 开源版 1.30.1(稳定版)和 1.31.0(开发版)已修复此问题。NGINX Plus R32 P6、R36 P4 及相关 F5 产品也已发布补丁。对于无法立即升级的系统,官方建议将配置中的「未命名捕获组」修改为「命名捕获组」以缓解风险。
(综合媒体报道)
2026 年 5 月 13 日,NGINX 官方发布安全更新,修复了存在于 ngx_http_rewrite_module 模块中的堆缓冲区溢出漏洞(CVE-2026-42945),该漏洞被安全研究团队 depthfirst 称为「NGINX Rift」。
该漏洞影响范围最早可追溯至 2008 年发布的 0.6.27 版本。未经身份验证的远程攻击者可以通过发送精心构造的 HTTP 请求,触发 NGINX 工作进程(Worker Process)崩溃导致拒绝服务。在关闭或绕过地址空间布局随机化(ASLR)的系统上,该漏洞可进一步实现远程代码执行(RCE)。目前,互联网上已出现针对该漏洞的PoC。
漏洞的触发依赖于特定的配置组合:当 NGINX 配置中使用了包含未命名捕获组(如 $1、$2)且替换字符串中带有问号(?)的 rewrite 指令,且该指令后紧跟另一个 rewrite、if 或 set 指令时,即处于高风险状态。技术根因在于 NGINX 在处理此类复杂重写逻辑时,对 URI 参数转义后的长度计算与实际写入操作不一致,导致内存溢出。
NGINX 开源版 1.30.1(稳定版)和 1.31.0(开发版)已修复此问题。NGINX Plus R32 P6、R36 P4 及相关 F5 产品也已发布补丁。对于无法立即升级的系统,官方建议将配置中的「未命名捕获组」修改为「命名捕获组」以缓解风险。
(综合媒体报道)