Nginx 配置错误导致漏洞(目录遍历漏洞)

一、漏洞描述

Nginx在配置别名(Alias)的时候,如果忘记加/,将造成一个目录穿越漏洞。

二、漏洞原理

1、 修改nginx.conf,在如下图位置添加如下配置
Nginx 配置错误导致漏洞(目录遍历漏洞)
在如下配置中设置目录别名时/files配置为/home/的别名,那么当我们访问/files…/时,nginx实际处理的路径时/home/…/,从而实现了穿越目录。

三、环境搭建

Nginx 配置错误导致漏洞(目录遍历漏洞)
运行成功后,Nginx将会监听8080/8081/8082三个端口,分别对应三种漏洞。

四、漏洞复现

Payload: http://your-ip:8081/files…/ ,成功穿越到根目录:
Nginx 配置错误导致漏洞(目录遍历漏洞)
Nginx 配置错误导致漏洞(目录遍历漏洞)

五、漏洞防御

1、修改/usr/local/nginx/conf/nginx.conf,使用/闭合/files,形成/files/。
Nginx 配置错误导致漏洞(目录遍历漏洞)