← 回總覽

15 年历史的 NGINX 漏洞可致 Worker 崩溃并实现远程代码执行

📅 2026-07-20 16:37 FreeBuf 软件编程 1 分鐘 1240 字 評分: 87
NGINX CVE-2026-42533 堆溢出 远程代码执行 网络安全
📌 一句话摘要 NGINX 存在一个长达 15 年的严重堆溢出漏洞 (CVE-2026-42533),可能导致工作进程崩溃或远程代码执行,建议用户立即升级。 📝 详细摘要 本文报道了 NGINX 中一个严重的堆缓冲区溢出漏洞 CVE-2026-42533。该漏洞存在于 NGINX 的脚本引擎中,特别是在使用正则表达式的 map 指令时,由于其“双遍评估”机制(第一遍测量缓冲区大小,第二遍进行写入)在处理捕获状态时存在逻辑缺陷,导致第二遍写入时会覆盖第一遍测量时使用的状态,从而引发缓冲区溢出。该漏洞影响范围极广,从 2011 年起的几乎所有版本均受影响。攻击者可通过构造特定 HTTP 请求触

📌 一句话摘要

NGINX 存在一个长达 15 年的严重堆溢出漏洞 (CVE-2026-42533),可能导致工作进程崩溃或远程代码执行,建议用户立即升级。

📝 详细摘要

本文报道了 NGINX 中一个严重的堆缓冲区溢出漏洞 CVE-2026-42533。该漏洞存在于 NGINX 的脚本引擎中,特别是在使用正则表达式的 map 指令时,由于其“双遍评估”机制(第一遍测量缓冲区大小,第二遍进行写入)在处理捕获状态时存在逻辑缺陷,导致第二遍写入时会覆盖第一遍测量时使用的状态,从而引发缓冲区溢出。该漏洞影响范围极广,从 2011 年起的几乎所有版本均受影响。攻击者可通过构造特定 HTTP 请求触发拒绝服务(DoS)或在特定条件下实现远程代码执行(RCE)。文章详细分析了技术原理,提供了官方修复版本建议、临时缓解措施(使用命名捕获)以及研究人员对漏洞深层设计缺陷的洞察。

💡 主要观点

- 漏洞成因在于脚本引擎的双遍评估机制存在逻辑缺陷。 在处理 map 指令时,第一遍测量缓冲区大小时使用的捕获状态,在第二遍写入时会被正则评估覆盖,导致分配的缓冲区过小,从而引发溢出。

受影响版本跨度极大,可追溯至 2011 年。 从 NGINX 0.9.6 到 1.31.2 的版本均受影响,这与 2011 年 map 指令开始支持正则表达式的时间点吻合。
除了拒绝服务,该漏洞还具备实现远程代码执行(RCE)的潜力。 虽然 F5 强调需绕过 ASLR,但研究人员指出该漏洞本身可能提供绕过手段,在特定构建环境下可实现高危攻击。
官方建议立即升级,并提供了临时缓解方案。 应升级至 1.30.4 或 1.31.3 等修复版本;若无法立即升级,可尝试将正则 map 中的编号捕获替换为命名捕获。

💬 文章金句

- 阅读 F5 安全公告的人可能会合理地认为,在默认系统上该漏洞仅导致拒绝服务。但事实并非如此。

  • 共同弱点是信任自身测量的双遍设计。

📊 文章信息

AI 初评:87

来源:FreeBuf

作者:FreeBuf

分类:软件编程

语言:中文

阅读时间:9 分钟

字数:2154

标签: NGINX, CVE-2026-42533, 堆溢出, 远程代码执行, 网络安全

阅读完整文章

查看原文 → 發佈: 2026-07-20 16:37:00 收錄: 2026-07-21 00:00:34

🤖 問 AI

針對這篇文章提問,AI 會根據文章內容回答。按 Ctrl+Enter 送出。