大家好,我是阿遠(yuǎn),今天給大家分享一下Apache解析漏洞的原理
Apache解析漏洞
在Apache中,訪問(wèn):liuwx.php.360會(huì)從右往左識(shí)別后綴,存在解析漏洞的時(shí)候,會(huì)從右往左識(shí)別哪個(gè)能解析,360是不能被解析,然后往左識(shí)別到php就識(shí)別能解析,這就是Apache的解析漏洞
漏洞復(fù)現(xiàn)環(huán)境
windows Server 2003_x64 Apache PhpStudy

提示:如果物理主機(jī)Ping不通2003,那么就吧2003的防火墻關(guān)閉就可以了!
網(wǎng)絡(luò)環(huán)境安裝完后,直接安裝Phpstudy:

安裝完P(guān)hpstudy用到的版本是:
Apache + PHP 5.2

用Apache搭建的網(wǎng)站,默認(rèn)的玩這個(gè)更目錄是:C:phpstudyWWW

打開(kāi):http://192.168.119.134/1.txt

OK!這個(gè)時(shí)候我們的網(wǎng)站已經(jīng)環(huán)境都已經(jīng)安裝完畢了!

服務(wù)器域名/IP地址 :192.168.119.134(192.168.119.134) 服務(wù)器解譯引擎:Apache/2.4.10 (Win32) OpenSSL/0.9.8zb PHP/5.2.17 服務(wù)器端口:80 服務(wù)器主機(jī)名:HACKER 絕對(duì)路徑:C:/phpstudy/WWW 探針路徑:C:/phpstudy/WWW/l.php
漏洞原理
Apache文件解析漏洞與用戶的配置有密切的關(guān)系,嚴(yán)格來(lái)說(shuō)屬于用戶配置問(wèn)題。Apache文件解析漏洞涉及到一個(gè)解析文件的特性。Apache默認(rèn)一個(gè)文件可以有多個(gè)以點(diǎn).分割的后綴,當(dāng)右邊的后綴無(wú)法識(shí)別,則繼續(xù)向左識(shí)別,發(fā)現(xiàn)后綴是php,交個(gè)php處理這個(gè)文件。
漏洞復(fù)現(xiàn)
首先創(chuàng)建了一個(gè)liwux.shell的文件:

很顯然.shell的文件后綴是未知的后綴名,但是瀏覽器還是把它當(dāng)做php執(zhí)行解析了!

我們把后綴換成熟悉的格式:liwux.php.aaa:

可以看到,任然能夠正常的解析php
漏洞防御
1、修改Apache的主配置文件:C:phpstudyApacheconfhttpd.conf
對(duì)apache的配置文件做適當(dāng)修改,在文件中添加下面幾行代碼
<FilesMatch ".(php.|php3.|php4.|php5.)"> Order Deny,Allow Deny from all </FilesMatch>
2、禁止.php.文件的訪問(wèn)權(quán)限