Help Center

Home Help Center Technical Docs

Nginx Rift Vulnerability Warning: Troubleshooting and Upgrade Guide for Older Nginx Versions

近期 Nginx 相关安全更新中,CVE-2026-42945 被多个安全机构称为 NGINX Rift。该问题与 Nginx 对 HTTP/2 请求处理有关,攻击者可能通过构造异常请求触发服务异常,部分安全厂商将其列为需要优先处置的高风险项。对于承载官网、电商、API、站群、反向代理和业务入口的服务器,建议尽快完成版本核查与升级。

漏洞核心信息

  • 漏洞名称:NGINX Rift
  • 关联编号:CVE-2026-42945
  • 影响组件:Nginx HTTP/2 请求处理逻辑
  • 风险表现:远程攻击者可能通过恶意 HTTP/2 请求触发异常,造成服务不可用;在复杂部署环境中可能进一步放大业务影响
  • 重点关注场景:公网 Nginx、HTTPS 站点、反向代理、负载均衡入口、API 网关、静态资源节点、业务后台入口
  • 处置优先级:高,建议纳入紧急维护窗口

需要注意的是,官方公告与第三方安全通告对严重程度的表述并不完全一致。更稳妥的处理方式不是争论评分,而是先确认线上是否启用了 HTTP/2、是否暴露在公网、是否运行旧版本 Nginx,再按业务影响安排升级。

建议升级版本

建议客户将生产环境 Nginx 升级到 1.31.2 或更高版本。如果使用发行版仓库提供的 Nginx,也应确认系统厂商是否已经回补对应安全补丁,不能只看版本号。

  • 自编译或官方源安装:优先升级到 Nginx 1.31.2+
  • 宝塔、面板或一键环境:在面板中检查 Nginx 更新,并确认实际运行版本
  • Ubuntu、Debian、RHEL、Rocky、AlmaLinux:确认发行版安全公告是否已 backport 补丁
  • 容器环境:同步更新基础镜像,并重新构建、重新发布容器

如何快速排查当前版本

登录服务器后,可先执行以下命令确认当前 Nginx 版本和编译参数:

nginx -v
nginx -V

如果站点使用 systemd 管理服务,可继续确认当前正在运行的进程:

ps -ef | grep nginx
systemctl status nginx

如果使用 Docker 或 Kubernetes,需要检查镜像版本,而不是只检查宿主机:

docker ps | grep nginx
docker image ls | grep nginx

是否启用了 HTTP/2

本次风险与 HTTP/2 场景相关,建议检查 Nginx Configuration中是否存在 http2 Configuration项:

grep -R "http2" /etc/nginx/nginx.conf /etc/nginx/conf.d /etc/nginx/sites-enabled 2>/dev/null

如果短时间内None法升级,可在确认业务影响后临时关闭公网入口的 HTTP/2,仅保留 HTTP/1.1 访问,作为过渡缓解措施。此操作可能影响部分浏览器访问性能,但通常比暴露高风险入口更可控。

推荐处置流程

  1. 盘点入口:列出所有公网 Nginx、反向代理、负载均衡、面板站点和容器镜像。
  2. 确认版本:记录 nginx -vnginx -V 输出,区分官方源、系统源、面板环境和自编译环境。
  3. 判断暴露面:优先处理公网 HTTPS、启用 HTTP/2、承载登录入口或 API 的节点。
  4. 测试升级:在测试节点验证Configuration兼容性,执行 nginx -t,确认站点证书、反代、缓存、重写规则正常。
  5. 灰度发布:先升级非核心节点,再逐步升级核心入口,避免一次性变更导致业务中断。
  6. 复查日志:升级后观察 4xx、5xx、连接重置、CPU、Memory和访问延迟变化。

升级前后的检查命令

# 检查Configuration是否正确
nginx -t

# 平滑重载
systemctl reload nginx

# 确认版本
nginx -v

# 观察错误日志
tail -f /var/log/nginx/error.log

如果服务器承载高并发业务,建议先创建快照或备份Configuration目录,再执行升级。常见需要备份的位置包括 /etc/nginx/、站点Configuration目录、证书目录、反向代理规则和自定义模块编译参数。

IDCY Global建议

对于Cloud Servers、Dedicated Servers、Multi-IP Servers和高防业务,Nginx 往往处于业务入口位置。一旦入口层异常,后端应用、数据库和缓存正常也None法对外服务。因此建议客户不要等到被动故障后再处理,而是按以下优先级推进:

  • 公网 HTTPS 入口优先升级
  • 启用 HTTP/2 的站点优先升级
  • 登录后台、支付回调、API 网关优先升级
  • 多节点业务先灰度,再全量
  • None法立即升级的节点,先评估临时关闭 HTTP/2

如果你不确定当前服务器是否受影响,可以联系技术支持协助检查 Nginx 版本、HTTP/2 Configuration、站点入口和升级窗口,避免因为错误升级方式造成业务中断。