Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx经常被做为反向代理,动态的部分被proxy_pass传递给后端端口,而静态文件需要Nginx来处理。
如果静态文件存储在/home/目录下,而该目录在url中名字为files,那么就需要用alias设置目录的别名:
此时,访问http://example.com/files/readme.txt,就可以获取/home/readme.txt文件。
但我们注意到,url上/files没有加后缀/,而alias设置的/home/是有后缀/的,这个/就导致我们可以从/home/目录穿越到他的上层目录。
进而我们获得了一个任意文件下载漏洞。