文章总结: 该文档披露了NGINXCVE-2026-42945漏洞的PoC详情,这是一个存在于ngxhttprewrite_module中的严重堆缓冲区溢出漏洞,允许未经身份验证的远程代码执行。PoC通过结合溢出与本地文件读取原语构建ASLR绕过链,利用堆风水技术篡改内存结构,最终在池销毁时触发system()调用实现RCE。文档还提及该漏洞由depthfirst安全分析系统自动发现。 综合评分: 72 文章分类: 漏洞分析,漏洞POC,WEB安全,红队,恶意软件
针对 Nginx CVE-2026-42945 的 PoC
Ots安全
2026年5月19日 18:36 广东
在小说阅读器读本章
去阅读
威胁简报
恶意软件
漏洞攻击
RCE 概念验证CVE-2026-42945,NGINX 中ngx_http_rewrite_module于 2008 年引入的一个严重堆缓冲区溢出漏洞。该漏洞允许对使用rewriteandset指令的服务器执行未经身份验证的远程代码。
此分支扩展了原始 PoC,增加了一个 ASLR 绕过链,该链结合了 NGINX 溢出和常见的同主机 LFI/任意文件读取原语。文件读取原语用于恢复 nginx 工作进程映射、libc 和 live /proc/
早期版本的实验会故意使一个 nginx 工作进程崩溃,从而让服务生成核心转储文件,然后通过文件读取原语获取并解析该核心转储文件,以恢复对 ASLR 敏感的进程状态,包括堆目标。在本仓库中,“无核心”仅表示“没有可读的崩溃核心转储文件”:当前的默认路径使用实时 procfs 内存读取来替代崩溃核心转储文件依赖,而保留的传统核心引导路径仍然使用生成的工作进程核心转储文件。
该漏洞以及其他三个内存损坏问题(CVE-2026-42946、CVE-2026-40701、CVE-2026-42934)在只需单击一下即可将 NGINX 源代码纳入系统后,由depthfirst的安全分析系统自动发现:https://depthfirst.com/。
NGINX 的脚本引擎使用两遍处理:首先计算所需的缓冲区大小,然后将数据复制到缓冲区。当替换操作包含<value> 时,is_args主引擎会设置该标志,但长度计算过程是在一个刚刚清零的子引擎上运行的。因此:rewrite?
- 长度传递看到is_args = 0→ 返回原始捕获长度。
- 复制传递看到is_args = 1→ 调用ngx_escape_uri,NGX_ESCAPE_ARGS将每个可转义字节扩展为 3 个字节。
复制操作会将攻击者控制的 URI 数据溢出容量不足的堆缓冲区。利用跨请求堆的“风水”漏洞,攻击者会篡改相邻的ngx_pool_t’scleanup指针(由于 URI 字节不能包含空字节,因此数据会通过 POST 请求体喷洒),将其重定向到伪造的ngx_pool_cleanup_s调用system(),从而在池销毁时触发调用。
项目地址:
https://github.com/Hamid-K/nginx-rift-private-lab
END
公众号内容都来自国外平台-所有文章可通过点击阅读原文到达原文地址或参考地址
排版 编辑 | Ots 小安
采集 翻译 | Ots Ai牛马
公众号 | AnQuan7 (Ots安全)
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:Ots安全 《针对 Nginx CVE-2026-42945 的 PoC》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。




![暗网泄露:[70M]美国刑事案件](/images/random/titlepic/1.jpg)





评论