0


Nginx漏洞修复之目录穿越(目录遍历)漏洞复现及修复

Nginx漏洞修复之目录穿越[目录遍历]漏洞复现及修复

漏洞描述

  • 前言Nginx是一个高性能的HTTP和反向代理服务器,经常被做为反向代理,动态的部分被proxy_pass传递给后端端口,而静态文件需要Nginx来处理。漏洞出现在服务器的静态文件中。如果静态文件存储在/home/目录下,而该目录在url中名字为files,那么就需要用alias设置目录的别名Nginx在配置别名(Alias)的时候,如果忘记加/,将造成一个目录穿越漏洞
  • 修改nginx.conf在如下配置中设置目录别名时/files配置为/home/的别名,那么当我们访问/files…/时,nginx实际处理的路径时/home/…/,从而实现了穿越目录Nginx漏洞穿越配置

漏洞复现

环境搭建

  • 安装Nginx环境:Ubuntu 16.04 + Nginx 1.11.3 # 获得root权限 sudo -i # 安装nginx依赖库和gcc g++的依赖库 apt-get install build-essential apt-get install libtool # 安装pcre依赖库 apt-get install libpcre3 libpcre3-dev # 安装zlib依赖库 apt-get install zlib1g-dev # 安装ssl依赖库 apt-get install openssl # 安装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 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
  • 验证搭建是否成功访问nginx

漏洞验证

  • 修改Nginx配置文件 apt-get install vim vim /usr/local/nginx/conf/nginx.confNginx漏洞配置
  • 重启Nginx cd /usr/local/nginx ./sbin/nginx -s reload
  • 正常访问Nginx正常访问
  • 目录穿越(遍历)Nginx漏洞穿越

漏洞修复

  • 修改Nginx配置文件修改/usr/local/nginx/conf/nginx.conf,使用/闭合/files,形成/files/。Nginx漏洞修复配置修改
  • 重启Nginx cd /usr/local/nginx ./sbin/nginx -s reload
  • 修复验证Nginx漏洞修复验证

参考链接

标签: nginx 安全 https

本文转载自: https://blog.csdn.net/weixin_42586723/article/details/122944781
版权归原作者 Charles Yan 所有, 如有侵权,请联系我们删除。

“Nginx漏洞修复之目录穿越(目录遍历)漏洞复现及修复”的评论:

还没有评论