首页 > 其他 > 详细

nginx目录穿越漏洞复现

时间:2019-07-24 13:37:40      阅读:104      评论:0      收藏:0      [点我收藏+]

nginx目录穿越漏洞复现

一、漏洞描述

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

二、漏洞原理

1、 修改nginx.conf,在如下图位置添加如下配置

在如下配置中设置目录别名时/files配置为/home/的别名,那么当我们访问/files../时,nginx实际处理的路径时/home/../,从而实现了穿越目录。

  技术分享图片

三、漏洞环境搭建和复现

1、 在ubuntu 16.04安装nginx

1.1安装nginx依赖库

1.1.1安装gcc g++的依赖库

ubuntu平台可以使用如下命令:

apt-get install build-essential

apt-get install libtool

1.1.2安装pcre依赖库

apt-get install libpcre3 libpcre3-dev

1.1.3安装zlib依赖库

apt-get install zlib1g-dev

1.1.4安装ssl依赖库

apt-get install openssl

1.2安装nginx

#下载最新版本:

wget http://nginx.org/download/nginx-1.11.3.tar.gz

#解压:

tar -zxvf nginx-1.11.3.tar.gz

#进入解压目录:

cd nginx-1.11.3

#配置:

./configure --prefix=/usr/local/nginx

#编辑nginx:

Make

#安装nginx:

make install

#启动nginx:

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

1.3浏览器访问,测试nginx是否搭建成功

   技术分享图片

2、 修改/usr/local/nginx/conf/nginx.conf,在如下图位置添加如下内容:

  技术分享图片

3、重启nginx服务

./sbin/nginx -s reload

  技术分享图片

4、浏览器访问http://192.168.10.137/files/

  技术分享图片

5、浏览器访问http://192.168.10.137/files../,如下图所示,说明存在目录穿越漏洞

  技术分享图片

6、修改/usr/local/nginx/conf/nginx.conf,把files使用/闭合

  技术分享图片

7、重启nginx服务,再次访问http://192.168.10.137/files../,提示404,说明该漏洞不存在

  技术分享图片

四、漏洞防御

1、修改/usr/local/nginx/conf/nginx.conf,使用/闭合/files,形成/files/。

 

-------------------------------------------------------------------------------------------------

参考: ubuntu 16.04安装nginx https://www.cnblogs.com/piscesLoveCc/p/5794926.html

nginx目录穿越漏洞复现

原文:https://www.cnblogs.com/yuzly/p/11212078.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!