首页 > Web开发 > 详细

apache httpd多后缀解析漏洞复现

时间:2019-07-28 14:34:17      阅读:69      评论:0      收藏:0      [点我收藏+]

apache httpd多后缀解析漏洞复现

一、漏洞描述

Apache Httpd支持一个文件拥有多个后缀,不同的后缀执行不同的命令,也就是说当我们上传的文件中只要后缀名含有php,该文件就可以被解析成php文件,利用Apache httpd这个特性,就可以绕过上传文件的白名单。

该漏洞和apache版本和php版本无关,属于用户配置不当造成的解析漏洞

二、漏洞原理

由于管理员的错误配置, AddHandler application/x-httpd-php .php,在有多个后缀的情况下,只要一个文件含有.php后缀的文件即将被识别成PHP文件,没必要是最后一个后缀。利用这个特性,将会造成一个可以绕过上传白名单的解析漏洞。

三、漏洞环境搭建与复现

1、使用docker搭建漏洞环境,启动环境

docker-compose up -d

2、浏览器访问http://172.17.0.1/

  技术分享图片

3、直接上传一个php文件,提示Unsupported filetype uploaded

  技术分享图片

4、查看配置文件,下图即可看到,管理员错误配置导致解析漏洞

  技术分享图片

5、利用apache解析漏洞,上传一个phpinfo.php.jpg或者phpinfo.php.jpeg的文件,下图可以看到成功上传

  技术分享图片

6、浏览器访问http://172.17.0.1/uploadfiles/phpinfo.php.jpg,发现phpinfo被执行了,该文件被解析为php脚本

  技术分享图片

四、漏洞防御

1、使用SetHandler,写好正则

<FileMatch ".+\.php$">

SetHandler application/x-httpd-php

</FileMatch>

2、禁止.php这样的文件执行

<FileMatch ".+\.ph(p[3457]?|t|tml)\.">

Require all denied

</FileMatch>

apache httpd多后缀解析漏洞复现

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

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