apache的php副檔名解析漏洞

來源:互聯網
上載者:User

我們都知道windows2003 + IIS6.0下,如果目錄結構中有xxx.asp這樣的目錄,那麼所有這個目錄下的檔案不管副檔名為什麼,都會當作asp來解析。我們一般稱這個漏洞為windows2003+iis6.0目錄解析漏洞。但是大家可能不知道的是,apache伺服器也存在類似的解析漏洞
我們來做下實驗,我在本地搭建好了一個apache+php的測試平台

 

兩個檔案phpinfo.php  phpinfo.php.a ,我們來訪問下phpinfo.php.a
http://192.168.99.110/phpinfo.php.a

 

可以解析,換成其他尾碼仍然可以
不管檔案最後尾碼為什麼,只要是.php.*結尾,就會被Apache伺服器解析成php檔案,問題是apache如果在mime.types檔案裡面沒有定義的副檔名在諸如x1.x2.x3的情況下,最後一個x3的沒有定義,他會給解析成倒數第二個的x2的定義的副檔名。所以xxx.php.rar或者xxx.php.111這些預設沒在mime.types檔案定義的都會解析成php的。同樣如果是cgi或者jsp也一樣。。。
那麼如果涉及到web程式的上傳頁面,如果上傳的檔案名稱是我們可以定義的,那麼我們完全可以上傳一個xxx.php.jpg這樣名字的webshell,apache仍然會當作php來解析,我們再來測試下jpg

 


防禦方法:
apache設定檔,禁止.php.這樣的檔案執行,設定檔裡面加入
<Files ~ ".(php.|php3.)">
        Order Allow,Deny
        Deny from all
</Files>

 


儲存,從起apache以後,我們再來看看

 

 


OK,防禦方法就是這樣

 

 

 

 

 


 


 

 

 


 

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.