TGViewer
LoopDNS资讯播报 LoopDNS资讯播报 @dnspodt · 72.1K subscribers
Post #13865 9.57K
重要/漏洞:NGINX Rift / NGINX ngx_http_rewrite_module 堆缓冲区存在溢出漏洞

漏洞编号:CVE-2026-42945
重要等级:重要[需要关注的]
CVSS 分数:CVSS v4.0:9.2 Critical;CVSS v3.1:8.1 High
注:NGINX 官方安全页将该项标注为 medium,但 F5/CNA 与 NVD 记录显示其在特定条件下可导致高危影响。

影响范围:
NGINX Open Source 0.6.27 至 1.30.0 受影响,1.30.1 与 1.31.0 及以上版本不受影响。

NGINX Plus R32 至 R36 也在公开影响范围内;部分基于 NGINX 的 F5/NGINX 产品,如 NGINX Instance Manager、F5 WAF for NGINX、NGINX App Protect、NGINX Gateway Fabric、NGINX Ingress Controller 等也被列入影响范围。


触发条件:
受影响版本的 NGINX 配置中同时存在以下模式时风险较高:
1. 使用 rewrite 指令;
2. rewrite 的替换字符串中包含问号 ?;
3. 后续同一作用域内跟随 rewrite、if 或 set 指令;
4. 使用未命名 PCRE 捕获组变量,如 $1、$2。


漏洞原理:
该漏洞源于 NGINX ngx_http_rewrite_module 中脚本引擎的状态传递不一致。当 rewrite 的 replacement 中包含 ? 时,主脚本引擎会进入 query string 参数处理状态,即设置 is_args = 1。随后如果 set 等复杂值处理逻辑引用 $1、$2 这类捕获组,NGINX 会先进行长度计算,再进行实际拷贝。问题在于长度计算阶段使用的是一个重新初始化的子引擎,该子引擎没有继承 is_args 状态,因此按原始长度分配缓冲区;而实际拷贝阶段仍在主引擎上执行,会按 query args 转义规则写入数据,导致部分字符被扩展为 %XX 形式,最终写入长度大于分配长度,形成堆缓冲区溢出。


漏洞概述:
攻击者在无需认证的情况下,只要能够向满足触发条件的 NGINX 服务发送特制 HTTP 请求,就可能触发 NGINX worker 进程中的堆内存破坏。根据 NVD/F5 描述,该漏洞可导致 worker 进程堆缓冲区溢出和重启;在 ASLR 关闭的系统上,存在代码执行可能。

DepthFirst 的技术分析进一步说明,在特定实验环境中,该堆溢出可被构造成对 NGINX 内存池 cleanup 链表的劫持,从而证明其具备 RCE 可利用性;但在真实环境中,稳定 RCE 还依赖地址随机化绕过、堆布局控制等额外条件。


风险描述:
1. 攻击者可通过构造恶意 URI 触发 NGINX worker 进程堆溢出,造成 worker 崩溃或反复重启,影响业务可用性。
2. 在 ASLR 关闭或被绕过的环境中,漏洞存在进一步发展为远程代码执行的风险。
3. 暴露在公网的反向代理、API 网关、Ingress Controller、边缘代理服务风险更高,因为攻击面位于 HTTP 请求处理路径,不依赖控制台或管理面暴露。
4. 使用复杂 rewrite/set 配置、历史遗留 API 路由迁移配置、Ingress 自动生成 rewrite 规则的环境,需要重点排查。


影响组件:
NGINX ngx_http_rewrite_module,以及依赖该模块并满足触发配置条件的 NGINX Open Source、NGINX Plus 和相关 F5/NGINX 产品。


处置建议:
1. 优先升级至 NGINX Open Source 1.30.1 stable 或 1.31.0 mainline 及以上版本,并在升级后重启或 reload NGINX worker,确保新二进制生效。
2. 如暂时无法升级,建议将未命名捕获组 $1、$2 改为命名捕获组,并避免在同一 rewrite 作用域中让包含 ? 的 replacement 影响后续 complex value 处理。
3. 保持 ASLR 启用,ASLR 虽然不能修复漏洞本身,但可显著提高从 worker 崩溃进一步发展为稳定代码执行的难度。


参考来源: CVE-2026-42945
  • 🤯 25
  • ❤ 6
  • 👍 2
More from @dnspodt
  1. Sep 26, 2026中美达成八点成果共识 当地时间9月23日至25日,中国国家主席习近平对美国进行国事访问。其间,两国元首就中美建设性战略稳定关系及重大国际地区问题深入交换意见,达成八点成果共识,包括…
  2. Sep 26, 2026OpenAI内部研究模型训练出现DNS访问绕过事件 2026年9月20日,内部研究模型在强化学习搜索训练任务中,利用训练沙箱DNS过滤不足,通过公共聊天机器人服务发起查询。报告称,…
  3. Sep 26, 2026据华尔街日报:美国官员表示,美国总统特朗普已拒绝伊朗提出的七天停火提议计划,并告诉助手们,他预计将在11月中期选举后恢复对伊朗的轰炸。 来源:WSJ
  4. Sep 25, 2026据半岛电视台报道,美国和伊朗代表团在纽约的会谈已从初步外交接触转为技术层面磋商。在美方特使史蒂夫·威特科夫和伊朗总统贾里德·库什纳举行首轮会晤后,技术专家也加入了磋商。卡塔尔已为此…
  5. Sep 25, 2026压缩即智能:Part 2,究竟什么是交叉熵? #交叉熵损失 #信息论 #大模型 #模型蒸馏 ▎Source
  6. Sep 25, 2026存储涨价的阴霾仍然还在继续 123盘于近期修改了空间策略,将存储配额分为标准容量和专业容量。 其中标准容量123盘的描述为: 标准网络云存储空间,123云盘独创重复文件与回收站文件…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →