大家好,我是阿远,今天给大家分享一下Apache解析漏洞的原理
在Apache中,访问:liuwx.php.360会从右往左识别后缀,存在解析漏洞的时候,会从右往左识别哪个能解析,360是不能被解析,然后往左识别到php就识别能解析,这就是Apache的解析漏洞
windows Server 2003_x64 Apache PhpStudy
提示:如果物理主机Ping不通2003,那么就吧2003的防火墙关闭就可以了!
网络环境安装完后,直接安装Phpstudy:
安装完Phpstudy用到的版本是:
Apache + PHP 5.2
用Apache搭建的网站,默认的玩这个更目录是:C:phpstudyWWW
打开:http://192.168.119.134/1.txt
OK!这个时候我们的网站已经环境都已经安装完毕了!
服务器域名/IP地址 :192.168.119.134(192.168.119.134) 服务器解译引擎:Apache/2.4.10 (Win32) OpenSSL/0.9.8zb PHP/5.2.17 服务器端口:80 服务器主机名:HACKER 绝对路径:C:/phpstudy/WWW 探针路径:C:/phpstudy/WWW/l.php
Apache文件解析漏洞与用户的配置有密切的关系,严格来说属于用户配置问题。Apache文件解析漏洞涉及到一个解析文件的特性。Apache默认一个文件可以有多个以点.分割的后缀,当右边的后缀无法识别,则继续向左识别,发现后缀是php,交个php处理这个文件。
首先创建了一个liwux.shell的文件:
很显然.shell的文件后缀是未知的后缀名,但是浏览器还是把它当做php执行解析了!
我们把后缀换成熟悉的格式:liwux.php.aaa:
可以看到,任然能够正常的解析php
1、修改Apache的主配置文件:C:phpstudyApacheconfhttpd.conf
对apache的配置文件做适当修改,在文件中添加下面几行代码
<FilesMatch ".(php.|php3.|php4.|php5.)"> Order Deny,Allow Deny from all </FilesMatch>
2、禁止.php.文件的访问权限