Nginx-Rift 漏洞

漏洞参考文档:https://github.com/DepthFirstDisclosures/Nginx-Rift

触发条件

先明确漏洞触发必备3个条件(缺一不可)

  1. 一条rewrite后面紧跟着另一条rewrite/if/set指令;
  2. 前一条 rewrite 用了匿名捕获组1 2 $3...;
  3. rewrite 替换字符串里包含问号?。

有问题举例:

条件1:

powershell 复制代码
rewrite ^/(.*)$ /api/$1?a=1;
set $test 1; # 紧跟,触发条件1

条件2:

powershell 复制代码
# 第一条重写用了 $1 $2 这种匿名取值
# 就是正则里用了小括号 () 抓内容,后面用 $1 拿出来用。

rewrite ^/(user)/(.*)$ /$1/$2

条件3:

powershell 复制代码
# 重写 携带了?
rewrite ^/(.*)$ /api/$1?a=1;

快速自查 & 修复

  1. 检查配置里有没有连续 rewrite+rewrite/if/set
  2. 重写里别用 1 2,改用命名捕获组
  3. 重写 URL 里尽量避免直接带 ?
相关推荐
骇客野人3 小时前
Redis 完整安装部署方案(Linux,分【源码编译】+【Docker】两种,推荐生产用源码,测试快速用 Docker)
运维
蓝速科技6 小时前
会议室门牌公告通知发布选型与落地指南丨蓝速科技
大数据·运维·数据库·人工智能·科技
chicheese7 小时前
Linux 面试速查表:从初级到高级,附高频场景答题模板
linux·运维
Linux-lucky7 小时前
32-38-Linux学习之旅之MySQL综合
linux·运维·学习·mysql·ubuntu
智能运维指南8 小时前
2026年ITSM系统怎么选?四款主流方案与五维评估模型
运维·itsm·嘉为蓝鲸
我命由我123458 小时前
Git 推送报错:error: src refspec main does not match any
运维·git·gitee·github·运维开发·学习方法·版本控制
骇客野人8 小时前
测试环境MySQL迁移Vastbase(海量数据库)完整改造与落地实施方案
运维·服务器
迪康Defender8 小时前
终端安全实战:如何高效解决企业U盘泄密与管控难题
运维·网络·安全·web安全·终端安全管理
zly35009 小时前
VMware Converter Standalone 物理机转化为虚拟机后源1硬盘变成了2个硬盘(2个硬盘文件)虚拟机无法启动。
linux·运维·服务器
智能运维指南9 小时前
2026 企业智能运维平台选型:私有化、信创、全链路打通该怎么权衡?
运维·嘉为蓝鲸·aiops平台·一体化运维平台