社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  NGINX

紧急预警 | 关于 NGINX 缓冲区溢出漏洞 CVE-2026-9256 的风险说明与自查建议

网瑞达科技 • 1 月前 • 68 次点击  

点击蓝字关注我们

近期,我们监控到NGINX ngx_http_rewrite_module 模块相关缓冲区溢出漏洞CVE-2026-9256。该漏洞与rewrite 指令中特定PCRE捕获组和替换字符串组合有关。在满足特定配置条件时,未认证攻击者可能通过构造HTTP请求触发NGINX worker进程堆缓冲区溢出,导致worker进程异常崩溃;在特定编译条件和运行环境下,风险可能进一步扩大为远程代码执行

根据目前修复信息和POC分析,该漏洞并不是“只要使用 rewrite 就会触发”,而是依赖特定 rewrite 写法。典型风险场景包括:rewrite 指令的正则表达式中存在相互重叠的 PCRE 捕获组,例如 `^/((.*))$`,其中 `$1` 包含 `$2`;同时,替换字符串在重定向 redirect 或参数 arguments 上下文中同时引用多个重叠捕获组,例如 `$1$2`。这类组合可能造成NGINX 在计算替换结果长度和实际拷贝捕获内容时出现不一致,从而引发堆缓冲区溢出。

网瑞达反代/VPN产品在业务访问链路中使用 NGINX 作为统一入口能力,因此在漏洞披露后,我们对产品内置生成的反代/VPN NGINX 配置进行了专项排查。

经排查,自动生成的配置不存在此类风险。

对于使用了自定义配置的用户或者其他使用nginx的用户,我们建议重点检查以下场景:

  • 是否存在手动添加或自动生成的rewrite指令;

  • rewrite 正则中是否存在重叠捕获组,例如 ((.*))(.+(.*)) 等;

  • rewrite 替换字符串是否在参数部分拼接多个捕获变量,例如 ?$1$2

  • rewrite替换字符串是否为redirect URL,例如:

    http://.../$1$2、https://.../$1$2、$scheme://.../$1$2;

对于存在疑似风险配置的用户,我们建议尽快执行以下操作:优先升级 NGINX 到官方或发行版提供的修复版本;检查所有公网暴露入口的 NGINX 配置;避免在redirectarguments中拼接多个重叠捕获组;必要时改用非重叠捕获、命名捕获、提前保存变量、拆分rewrite逻辑,或移除不必要的 query string rewrite

不止网瑞达产品

多场景 NGINX 风险自检脚本开源上线

为帮助用户快速定位风险,我们已在 CVE-2026-42945 配置自检脚本中增加 CVE-2026-9256 检查能力。脚本会同时检查当前NGINX版本,并扫描配置中是否存在重叠捕获组与redirect / arguments上下文组合的高风险 rewrite 模式。

  • 如果当前版本处于受影响范围,且配置命中风险模式,应尽快升级 NGINX 或调整相关配置;

  • 如果版本处于受影响范围但未发现风险模式,也建议按照官方公告完成版本修复;

  • 如果发现疑似风险配置但版本不在受影响范围,也建议对配置进行人工复核,降低后续维护风险。


自检脚本地址


自检脚本地址(可更新):

https://github.com/friparia/NGINX_RIFT_SCAN_CVE_2026_42945

https://cnb.cool/bh1xaq/NGINX_RIFT_SCAN_CVE_2026_42945(国内镜像)

网瑞达将持续跟踪该漏洞的官方修复信息、利用条件变化及实际攻击风险。如后续发现新的影响场景或需要用户采取进一步措施,我们会及时发布更新说明。

往期精选

紧急预警 | 关于 NGINX 远程代码执行漏洞 CVE-2026-42945 的风险说明与自查建议

高校运维故事:用户抱怨网络不好,怎么办?

点击阅读原文获取联系方式

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/197067