‘/’字符解析漏洞(和iis7/7.5漏洞利用方法一致)

url/xxx.gif/xx.php会被解析为php文件

前提条件:cgi.fix_pathinfo=1

目录遍历小洞

QQ截图20210219143839

前提条件: nginx-conf 把这个选项改为on即可

目录穿越

QQ截图20210219143859

前提概要:要用到别名alias
作用: 当设置别名时,location后面的路径没有用/闭合时,就会引起访问 url/xx../时返回的目录是当前文件夹的上层目录
可见返回的目录是上层目录

CRLF注入

前提条件与产生原因:
1.随着业务的发展,有些网站会把http://xxx 重定向为https://xxxhttp://x.com重定向为http://www.x.com,
那么这种重定向的原理在nginx上的实现方式是在location块里加入return 302 http://$host:81$uri;之类的语句,
这里的$host,$url都是变量。$host一般为请求头的host头部,$url一般为请求行里的路径部分 如 GET /url HTTP/1.1此处的/url部分. 2.http头部里,0d(cr)和0a(lf)字符是用来分割请求头部区域的字符。头部的行是以一个crlf来分割的,也就是说请求头部每个行之间都存在着一个crlf字符来分割它们,让他们成为多个独立的行。头部与body之间有两个crlf来分割
作用:当某台nginx设置了形如return 302 http://$host:80$uri; 这种配置时,url是我们完全可控的,所以可以在url中人为构造crlf字符来实现分行,从而在响应头中注入我们想要得到的响应头部。
QQ截图20210219144020

Nginx 文件名逻辑漏洞(CVE-2013-4547)

Nginx 0.8.41 ~ 1.4.3 / 1.5.0 ~ 1.5.7
url/xxxxx.gif%20 的文件
被 url/xxxxx.gif%20\0x00.php (\0x00须在burp里的hex里改)
需开启fastcgi

QQ截图20210219144109

然后发包请求这个文件,并且在请求时做点手脚
QQ截图20210219144302