NGINX 核心组件告急:CVE-2026-9256 堆缓冲区溢出漏洞全景解析

明确结论:Nginx 1.30.2 已经完整修复 CVE-2026-9256(rewrite 模块堆溢出漏洞)

关键信息

官方同步发布补丁(2026-05-22)

稳定分支:1.30.2(修复此高危漏洞)

主线分支:1.31.1(你当前在用版本,同样修复)

受影响版本:1.0.0 ~ 1.30.1、1.31.0全部带漏洞

漏洞出处就是 rewrite 重写模块

漏洞成因:rewrite正则出现嵌套 / 重叠捕获组(如((.*)))+ 替换参数多次引用 $1/$2,缓冲区计算偏小导致堆溢出、远程 RCE 风险;1.30.2 源码变更里专门针对ngx_http_rewrite_module做了内存分配逻辑修正。

选型建议

生产环境优先用 1.30.2:稳定版,只补安全漏洞、不加新功能,无额外新 BUG;

测试环境可用 1.31.1:最新主线,带新特性,同样已堵死该漏洞。

临时规避(不升级也能用)

把配置里重叠匿名捕获$1$2改成命名捕获组(?<name>xxx),即可临时防漏洞触发。

把CVE-2026-9256漏洞的信息,详细的写成一篇文章

搜索 4 个关键词,参考 24 篇资料

NGINX CVE-2026-9256(Nginx-Poolslip)重写模块堆溢出高危漏洞全解析

一、漏洞基础信息

1. 漏洞标识

CVE 编号:CVE-2026-9256

漏洞代号:Nginx-Poolslip(池溢出漏洞)

漏洞类型:堆缓冲区溢出(CWE-122 Heap-based Buffer Overflow)

风险评级:CVSS3.1=8.1(高危)、CVSS4.0=9.2(严重级)

攻击属性:远程无认证漏洞(AV:N/PR:N/UI:N),无需登录、无需用户交互,公网即可发起攻击

披露与修复时间:安全研究员 2026 年 5 月协同披露,F5(NGINX 官方)2026 年 5 月 22 日正式发布补丁版本,5 月 23 日上线修复版安装包

发现者:Winfunc Research、Nebula Security、Vexera AI 联合安全研究员 Mufeed VH 发现并协调厂商修复

2. 受影响产品与版本

(1)开源 NGINX(Open Source)

全量受影响:0.1.17 ~ 1.30.1(稳定分支)、1.31.0(主线分支)

修复版本:稳定版≥1.30.2、主线版≥1.31.1

0.9.7 及更早老旧 0.x 分支官方停止维护、不再发布补丁,必须升级新版本规避风险。

(2)商业版 NGINX Plus

R32 系列:≤R32 P7;R36 系列:≤R36 P5;37.0.0 初始版存在漏洞;

修复:NGINX Plus R32≥P7、R36≥P5、37.x≥37.0.1。

(3)衍生产品

基于 NGINX 内核的 Ingress Controller、NGINX App Protect、F5 WAF、容器化 Nginx 镜像、Alpine/Docker 官方 Nginx 镜像均受牵连,需同步升级底层 Nginx 二进制包。

二、漏洞成因与底层原理

漏洞根源位于 Nginx 核心组件ngx_http_rewrite_module(URL 重写模块),是 Nginx 近一月内第二款同模块高危堆溢出漏洞(前序 CVE-2026-42945),隐患在代码库中潜伏近 18 年。

1. 触发必备两个配置条件(缺一不可)

正则存在嵌套 / 重叠 PCRE 捕获组:形如^/((.*))$双层括号嵌套,内层(.*)与外层括号构成重叠捕获,正则匹配后生成$1、$2两个捕获变量,二者指向同一段 URI 原始内容;

替换语句多次引用重叠捕获变量:rewrite跳转 / 参数拼接中使用$1$2、$1&$2等多变量拼接写法,用于 URL 跳转、GET 参数拼接场景。

漏洞示例危险配置:

nginx

location/vuln{# 条件1:嵌套重叠捕获组rewrite^/vuln/((.*))$ /target.php?param=$1$2last;#条件2:同时引用$1、$2}

2. 内存计算 BUG 核心逻辑

Nginx 在预分配重定向输出缓冲区时,错误忽略 URL 特殊字符转义扩容开销

正常逻辑:+、空格、#等字符 URL 编码后变为%2B、%20、%23,1 字节原始字符占用 3 字节输出空间;

BUG 逻辑:源码ngx_http_script.c缓冲区预算仅按原始 URI 长度计算,未叠加多次变量拼接 + URL 转义带来的额外存储空间,分配内存尺寸远小于实际输出所需长度;

攻击者传入携带大量需要 URL 转义字符(+、空格)的恶意 URI,Nginx 执行字符串拼接 + 转义时,数据超出预分配堆内存边界,形成可控堆越界写入(堆溢出)。

3. 漏洞利用底层条件

溢出同时附带堆内存信息泄露 + 可控堆写入双原语:

溢出时覆盖相邻堆内存字段(进程内存池指针、函数指针、环境变量数据),部分内存数据直接泄露至 HTTP 响应报文,实现 ASLR 地址泄露;

Linux 系统关闭 ASLR 防护,或攻击者借助泄露数据绕过 ASLR 随机化后,可修改堆上函数指针,最终实现远程无代码执行 RCE

无法绕过 ASLR 时,可精准覆写内存造成 Worker 进程崩溃,触发持续性拒绝服务 DoS 攻击。

三、攻击利用方式

1. 攻击链路

攻击者公网发送恶意 HTTP GET 请求,URI 携带大量+、空格等需转义字符,匹配目标站点危险 rewrite 规则;

Nginx 解析正则生成重叠捕获变量,计算缓冲区空间偏小;

拼接$1$2+URL 转义后数据超长,堆内存越界写入;

低难度:进程异常退出(502 报错、站点瘫痪);高难度:泄露内存地址→绕过 ASLR→远程命令执行,拿下服务器权限。

2. 恶意请求样例

http

GET/vuln/++++++++++++++++++++++++++++++++++++HTTP/1.1Host:target.comUser-Agent:Mozilla/5.0

大量+会在参数拼接时被转义为%2B,成倍膨胀字符串长度,快速触发缓冲区溢出边界。

四、漏洞危害分级

高危(DoS):全量受漏洞影响服务器

无论系统是否开启 ASLR,均可被远程触发 Nginx Worker 进程频繁崩溃、站点间歇性 502,业务中断,中小站点极易被批量打瘫;

严重(RCE 远程控权):关闭 ASLR / 可绕过 ASLR 的 Linux 服务器

攻击者无任何前置权限,公网直接拿到服务器系统权限,窃取网站源码、数据库配置、用户隐私数据,植入木马、挖矿程序、webshell,入侵内网横向渗透;

衍生风险:CDN、反向代理集群沦陷

大量企业使用 Nginx 作为负载均衡、API 网关,漏洞被利用后可穿透代理直接入侵后端应用服务器。

五、官方修复方案与临时应急规避

方案一:彻底修复(首选,生产环境必做)升级 Nginx 版本

稳定版升级至 1.30.2(企业生产首选,只补漏洞、无新增功能,稳定性最优);

主线版升级至 1.31.1(测试环境、尝新环境,附带新特性 + 漏洞修复);

注:你当前日志 Nginx 1.31.1、1.30.2 均已完成此漏洞源码修复,不再受 CVE-2026-9256 影响。

源码修复改动:官方修改ngx_http_script.c缓冲区计算逻辑,在分配内存时自动预计算变量拼接长度 + URL 转义最大占用空间,从根源杜绝空间低估问题。

方案二:临时配置规避(无法立刻升级版本时应急)

禁用所有未命名数字捕获组($1/$2/$3),替换为 PCRE 命名捕获组,彻底切断漏洞触发代码路径,修改前后示例:

nginx

# 原危险写法(禁用)rewrite^/user/([0-9]+)/(.*)$ /info.php?id=$1&name=$2last;# 安全改写(命名捕获,完全免疫漏洞)rewrite^/user/(?[0-9]+)/(?.*)$ /info.php?id=$uid&name=$nicklast;

配置排查要点:全局检索 nginx.conf、vhost 站点配置中所有rewrite、if+~正则片段,清理嵌套((.*))+$1$2组合写法。

方案三:WAF 防护兜底

在前置 WAF(Nginx-WAF、云 WAF、硬件防火墙)添加规则:拦截 URI 携带超长连续特殊符号、多层嵌套括号((()))的异常访问请求,临时拦截漏洞利用流量。

六、运维自查清单

版本自查:执行nginx -v核对版本,低于 1.30.2(稳定)、1.31.1(主线)即处于漏洞风险;

配置自查:全局检索所有站点配置,查找rewrite指令内((.*))嵌套正则 +$1$2多变量拼接;

容器环境自查:Docker Nginx 镜像需重新拉取最新官方镜像,旧版 Alpine、Debian 镜像内置 Nginx 大概率受漏洞影响;

日志自查:观察 Nginx 错误日志是否频繁出现 worker 进程异常退出、sigsegv 段错误,大概率已被漏洞探测攻击。

七、总结

CVE-2026-9256 是覆盖面极广的 Nginx 经典堆溢出漏洞,漏洞依赖特定 Rewrite 配置触发,但互联网大量 CMS、建站程序、自定义反向代理规则普遍存在嵌套捕获 + 多变量引用写法,全网受影响服务器量级超百万台。

已升级 1.30.2/1.31.1:永久修复,无需额外配置修改;

暂未升级:优先替换命名捕获组临时防护,择机完成版本升级,杜绝公网 RCE 入侵风险。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容