文章总结: Nginx曝出潜伏15年的严重漏洞CVE-2026-42533,CVSS评分9.2,影响2011年至今几乎所有版本。漏洞源于脚本引擎中LEN轮与VALUE轮之间共享数组状态未保存,导致堆缓冲区溢出和信息泄露。攻击者无需认证,通过一次GET请求即可绕过ASLR并实现远程代码执行。建议立即升级至最新版本,使用官方配置扫描器审计配置,并重构避免正则捕获与map变量组合。 综合评分: 90 文章分类: 漏洞分析,应急响应,WEB安全,红队,安全工具
潜伏15年!Nginx核心漏洞曝光,无需密码即可远程拿下服务器
看雪学苑 看雪学苑
看雪学苑
2026年7月20日 18:05 上海
在小说阅读器读本章
去阅读
这是一个潜伏了15年的漏洞,影响范围覆盖几乎所有Nginx版本,攻击者无需任何认证就能实现远程代码执行。更令人担忧的是,此前修复的其他Nginx漏洞并不能解决这个问题。
01
紧急:Nginx曝出“高龄”漏洞
2026年7月15日,F5官方发布安全公告,一次性修复了Nginx开源版与商业Plus版共计三个高危内存漏洞。其中最引人关注的,是一个编号为CVE-2026-42533的严重漏洞——它已经在Nginx代码中潜伏了整整15年。
该漏洞由安全研究员Stan Shaw(网名cyberstan)报告给F5安全应急响应团队(SIRT),目前已在新版Nginx中得到修复。CVSS v4评分高达9.2分,属于“严重”级别。
⚠️影响范围极广:从Nginx 0.9.6到1.30.3(稳定版)及1.31.2(主线版)的所有版本均受影响。换言之,2011年3月至今几乎所有Nginx版本都存在此漏洞。
02
漏洞是怎么一回事?
这个漏洞的根源,藏在Nginx内部脚本引擎的一个“历史遗留问题”里。
Nginx在处理请求时,会通过两轮评估来构造字符串表达式:
LEN轮(测量轮):先测量结果需要多大缓冲区
VALUE轮(写入轮):再往缓冲区里写入实际数据
这两轮评估都依赖一个名叫 r->captures 的共享数组来存储正则捕获组(比如 $1、$2)的内容。问题在于——Nginx没有在两次评估之间保存和恢复这个数组的状态。
当map指令的正则表达式在两次对捕获组的引用之间被执行时,它会悄悄覆盖掉这个共享状态。结果就是:LEN轮测出来的缓冲区大小,和VALUE轮实际写入的数据大小,对不上了。
03
两种攻击方式:信息泄露 + 堆溢出
这种“大小对不上”的局面,给了攻击者两种完全不同的攻击手段:
堆缓冲区溢出
当被覆盖的捕获组比原始捕获组更大时,VALUE轮写入的数据会超过缓冲区边界,造成堆内存溢出。溢出的长度和内容完全由攻击者通过HTTP请求控制。
信息泄露
反过来,当被覆盖的捕获组比原始捕获组更小时,缓冲区被分配得过大了——响应中会泄露未初始化的堆内存数据,其中就包含libc指针和堆指针。
💡关键点:这两个漏洞组合起来,攻击者只需一次未认证的GET请求就能窃取足以绕过ASLR(地址空间布局随机化)的内存指针。再配合约40个“喷射”连接和一次触发溢出的请求,就能在启用完整ASLR的Ubuntu 24.04上实现100%可靠的远程代码执行。
04
不只是某个指令的问题
这个漏洞的影响面比想象中更广。
根据Cyberstan的技术报告,该漏洞涉及 9个源文件中的至少13个独立调用点,同时影响HTTP模块和Stream模块。
任何将正则表达式捕获源与后续基于正则的map变量相结合的配置,都有可能被利用。
常见受影响指令包括:
⚠️特别注意:捕获引用和map变量不需要在同一条指令中——同一个location块里的不同指令组合,就足以触发漏洞。
05
额外风险:命名捕获组变体
还有一个更棘手的问题:通过命名捕获组((?P<name>...))触发的漏洞变体,由于缓存机制不同,仅修复编号捕获的补丁无法解决。这意味着即使打了补丁,使用命名捕获组的配置可能仍然存在风险。
这件事尤其值得警惕——近期针对其他Nginx漏洞的修复(CVE-2026-42945、CVE-2026-9256、CVE-2026-42055和CVE-2026-48142),并不能解决CVE-2026-42533的问题。
也就是说,即使你之前打了补丁,依然暴露在这个漏洞之下。
F5在官方公告中表示,在ASLR被禁用或可被绕过的情况下,该漏洞可能允许远程代码执行。
但研究员Stan Shaw给出了更严重的判断:
“阅读F5安全公告的人可能会合理地认为,在默认系统上该漏洞仅导致拒绝服务。但事实并非如此。”
Shaw指出,该漏洞本身就提供了绕过ASLR的手段——在默认的Ubuntu 24.04系统上,一次未认证的GET请求就能恢复攻击所需的内存地址。他在自己的测试中达到了10/10的可靠性。
目前,Shaw暂不公开完整的PoC(概念验证)和利用细节,以便给管理员留出打补丁的时间。这一决定参考了此前CVE-2026-42945(“Nginx Rift”)PoC公开后迅速被武器化的教训。
06
立即行动:防御清单
✅第一优先级:升级
✅第二优先级:配置审计
研究员已发布静态配置扫描器(github.com/0xCyberstan/CVE-2026-42533-Config-Scanner)。
该工具可以:
-
自动识别存在漏洞的指令顺序
-
区分可利用顺序与安全顺序
-
支持JSON格式输出
-
**不会对运行中的服务器造成任何影响**
建议立即对生产环境配置运行扫描。
✅第三优先级:配置重构
审计所有location块,检查是否存在正则表达式捕获与基于正则的map变量的组合使用。如有发现,考虑重构配置以避免这种组合。
资讯来源:
- F5官方安全公告(K000162097)
- The Hacker News
- Stan Shaw(cyberstan)技术分析报告:cyberstan.co.uk/nginx-rce
球分享
球点赞
球在看
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:看雪学苑 看雪学苑 看雪学苑《潜伏15年!Nginx核心漏洞曝光,无需密码即可远程拿下服务器》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论