CVE-2026-42945: 堆缓冲区溢出漏洞在 NGINX Plus/Open Source
平台
nginx
组件
ngx_http_rewrite_module
修复版本
R36 P4
NGINX Plus 和 NGINX Open Source 的 ngxhttprewrite_module 模块存在一个堆缓冲区溢出漏洞。该漏洞源于 rewrite 指令后紧跟 rewrite、if 或 set 指令,且包含未命名的 PCRE 捕获(例如,$1、$2)以及包含问号 (?) 的替换字符串。攻击者可以通过发送精心构造的 HTTP 请求利用此漏洞,可能导致 NGINX 工作进程重启,影响服务可用性。受影响的版本包括 NGINX Plus 和 NGINX Open Source ≤R36 P4。建议尽快升级到 R36 P4 以缓解风险。
影响与攻击场景
该漏洞允许未经身份验证的攻击者通过发送精心构造的 HTTP 请求触发堆缓冲区溢出。成功利用该漏洞可能导致 NGINX 工作进程崩溃并重启,从而导致服务中断。虽然目前未公开已知利用此漏洞的具体攻击链,但堆缓冲区溢出通常被认为是高危漏洞,可能被进一步利用以实现代码执行或其他恶意行为。如果攻击者能够控制请求的参数,则可能导致更严重的后果,例如远程代码执行。此漏洞的潜在影响范围取决于 NGINX 在系统中的作用以及其与其他服务的集成程度。如果 NGINX 负责处理关键业务流量,则该漏洞的影响将更加严重。
利用背景
该漏洞已于 2026 年 5 月 13 日公开披露。目前尚无公开的利用代码 (POC),但由于该漏洞属于堆缓冲区溢出,且影响广泛使用的 NGINX 产品,因此存在被利用的风险。该漏洞的 EPSS 评分尚未明确,但考虑到其潜在影响和公开披露时间,应将其视为中等至高风险。建议密切关注安全社区的动态,及时获取最新的威胁情报。
威胁情报
漏洞利用状态
CISA SSVC
CVSS 向量
这些指标意味着什么?
- Attack Vector
- 网络 — 可通过互联网远程利用,无需物理或本地访问。攻击面最大。
- Attack Complexity
- 高 — 需要竞态条件、非默认配置或特定情况。难以可靠利用。
- Privileges Required
- 无 — 无需认证,无需凭证即可利用。
- User Interaction
- 无 — 攻击自动且无声,受害者无需任何操作。
- Scope
- 未改变 — 影响仅限于脆弱组件本身。
- Confidentiality
- 高 — 完全丧失机密性,攻击者可读取所有数据。
- Integrity
- 高 — 攻击者可写入、修改或删除任何数据。
- Availability
- 高 — 完全崩溃或资源耗尽,完全拒绝服务。
受影响的软件
弱点分类 (CWE)
时间线
- 已保留
- 发布日期
- 修改日期
缓解措施和替代方案
最有效的缓解措施是升级到已修复的版本 R36 P4。在升级之前,务必备份 NGINX 配置文件,以防升级过程中出现问题。如果无法立即升级,可以考虑以下临时缓解措施:严格限制对 NGINX 的访问,仅允许来自受信任来源的请求。审查 NGINX 配置文件,确保 rewrite 指令的配置正确,避免使用包含未命名 PCRE 捕获和问号 (?) 的替换字符串。如果可能,使用 Web 应用防火墙 (WAF) 或反向代理来过滤恶意 HTTP 请求。监控 NGINX 日志,查找异常活动或错误信息。升级后,使用 nginx -t 命令测试配置文件,并使用 nginx -s reload 命令重新加载配置,确认修复已成功应用。
修复方法翻译中…
Actualice NGINX Plus a la versión R36 P4 o superior, NGINX Open Source a la versión 1.31.1 o superior, o a las versiones especificadas en el aviso de seguridad de F5 para mitigar el riesgo de desbordamiento del búfer de la pila y posible ejecución de código.
常见问题
什么是 CVE-2026-42945 — 堆缓冲区溢出漏洞在 NGINX Plus/Open Source?
CVE-2026-42945 是 NGINX Plus 和 NGINX Open Source 的 ngxhttprewrite_module 模块中的一个堆缓冲区溢出漏洞,攻击者可以通过构造 HTTP 请求触发,可能导致 NGINX 工作进程重启。
我是否受到 CVE-2026-42945 在 NGINX Plus/Open Source 中的影响?
如果您的系统运行 NGINX Plus 或 NGINX Open Source 版本 ≤R36 P4,则可能受到影响。请立即检查您的 NGINX 版本并升级。
如何修复 CVE-2026-42945 在 NGINX Plus/Open Source 中的漏洞?
升级到 NGINX Plus 或 NGINX Open Source R36 P4 或更高版本以修复此漏洞。在升级前备份配置文件。
CVE-2026-42945 是否正在被积极利用?
目前尚无公开的利用代码,但由于漏洞的严重性和公开披露,存在被利用的风险。建议密切关注安全动态。
在哪里可以找到官方 NGINX Advisory for CVE-2026-42945?
请访问 NGINX 官方安全公告页面查找有关 CVE-2026-42945 的详细信息:[https://www.nginx.com/resources/security/](https://www.nginx.com/resources/security/)
立即试用 — 无需账户
上传任意清单文件(composer.lock、package-lock.json、WordPress插件列表等)或粘贴组件列表,即可立即获得漏洞报告。上传文件只是开始:注册账号后,您将获得持续监控、Slack/邮件提醒、多项目管理和白标报告等功能。
拖放您的依赖文件
composer.lock、package-lock.json、requirements.txt、Gemfile.lock、pubspec.lock、Dockerfile...