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 里尽量避免直接带 ?
相关推荐
元Y亨H10 分钟前
生产环境监控与故障应急处理(5-5-5 标准)指南
运维
观山岳五楼1 小时前
Ubuntu 24 怎么使用Ubuntu 20 的镜像源
linux·运维·ubuntu
寒晓星2 小时前
[linux]线程及多线程
linux·运维
慧一居士2 小时前
Linux如何设置固定的静态ip
运维
国服第二切图仔4 小时前
13其他工具 - Skill/LSP/Sleep等
linux·运维·里氏替换原则
暴力求解5 小时前
Linux ---线程控制(二)
linux·运维·服务器·操作系统
梦痕长情5 小时前
等保三级三权账户
linux·运维·服务器
jiecy6 小时前
为Linux系统双网卡配置静态路由
linux·运维
weixin_307779137 小时前
Linux下Jenkins数据故障的系统化排查Shell脚本
linux·运维·服务器·jenkins
荒--7 小时前
Burp Suite(二)
linux·运维·服务器