一、告警邮件又来了
2026年5月发布紧急漏洞通告:
CVE-2026-42945:Nginx ngx_http_rewrite_module 缓冲区溢出漏洞,高危。
影响版本:0.6.27 ≤ Nginx < 1.30.1
触发条件很刁钻:
-
rewrite 指令后面紧跟另一条 rewrite、if 或 set
-
替换字符串里有 ?
-
用了未命名正则捕获组(如 $1、$2)
领导问:我们有多少台在用Nginx?哪些配置触发了这个条件?
我答不上来。于是写了这个脚本。
二、漏洞利用条件拆解
官方说\”困难\”,但\”困难\”不是\”不可能\”。我拆解了三个必要条件:
| 版本在影响范围 | nginx -v | 步骤2 |
| rewrite模块启用 | nginx -V 看模块列表 | 步骤3 |
| 配置文件存在风险模式 | rewrite.*\\$[0-9].*\\? | 步骤4 |
三个条件同时满足 = 可被利用。只要缺一个,风险降级。



