DVWA 全等級檔案上傳

2022-06-22 09:39:09 字數 3012 閱讀 4065

dvwa簡介

dvwa共有十個模組,分別是brute force(暴力(破解))、command injection(命令列注入)、csrf(跨站請求偽造)、file inclusion(檔案包含)、file upload(檔案上傳)、insecure captcha(不安全的驗證碼)、sql injection(sql注入)、sql injection(blind)(sql盲注)、xss(reflected)(反射型跨站指令碼)、xss(stored)(儲存型跨站指令碼)。

需要注意的是,dvwa 1.9的**分為四種安全級別:low,medium,high,impossible。初學者可以通過比較四種級別的**,接觸到一些php**審計的內容。

file upload

file upload,即檔案上傳漏洞,通常是由於對上傳檔案的型別、內容沒有進行嚴格的過濾、檢查,使得攻擊者可以通過上傳木馬獲取伺服器的webshell許可權,因此檔案上傳漏洞帶來的危害常常是毀滅性的,apache、tomcat、nginx等都曝出過檔案上傳漏洞。

low:

**:

<?php 

if( isset( $_post[ '

upload

'] ) )

else

succesfully uploaded!

"

; }

} ?>

可以看到,伺服器對上傳檔案的型別、內容沒有做任何的檢查、過濾,存在明顯的檔案上傳漏洞,生成上傳路徑後,伺服器會檢查是否上傳成功並返回相應提示資訊。

檔案上傳漏洞的利用是有限制條件的,首先當然是要能夠成功上傳木馬檔案,其次上傳檔案必須能夠被執行,最後就是上傳檔案的路徑必須可知。這裡三個條件全都滿足。

php版本的一句話木馬,檔案格式記得改成php:

上傳成功,並且顯示上傳的路徑。

利用中國菜刀登入:

級別的**對上傳檔案的型別、大小做了限制,要求檔案型別必須是

jpeg

或者png

,大小不能超過

100000b

(約為97.6kb

)。漏洞利用1:檔案包含+檔案上傳

首先我們把之前的php檔案改成png檔案上傳

然後再普通情況下菜刀肯定連線不上,因為不能解析成php檔案。

然後拿到webshell

漏洞利用2:抓包上傳檔案的資料,然後修改其為php檔案

然後上傳檔案:

上菜刀連線:

漏洞利用三:截斷繞過規則

在php版本小於

5.3.4

的伺服器中,當

magic_quote_gpc

選項為off

時,可以在檔名中使用

%00截斷

修改檔案字尾名為.php%00.png

抓包可以看到型別符合要求,並且上傳成功

使用菜刀連線即可。

high:

**:

<?php 

if( isset( $_post[ '

upload

'] ) )

else

succesfully uploaded!

"

; }

} else }

?>

strrpos(string,find,start)函式返回字串find在另一字串string中最後一次出現的位置,如果沒有找到字串則返回false,可選引數start規定在何處開始搜尋。

getimagesize(string filename)函式會通過讀取檔案頭,返回的長、寬等資訊,如果沒有相關的檔案頭,函式會報錯。可以看到,high級別的**讀取檔名中最後乙個」.」後的字串,期望通過檔名來限制檔案型別,因此要求上傳檔名形式必須是」*.jpg」、」*.jpeg」 、」*.png」之一。同時,getimagesize函式更是限制了上傳檔案的檔案頭必須為影象型別。

漏洞利用1:採取%00截斷

首先使用一張真正的檔案,把字尾名改成txt然後開啟,在最後加入一句話木馬。萬物皆可txt。

然後成功上傳:

菜刀連線,位址列變成:

連線成功拿到webshall。

DVWA 之 檔案包含漏洞 全等級

一 漏洞概述 file inclusion 檔案包含漏洞 是指服務端將包含的檔案設定為變數,利用url動態呼叫。若沒有對包含檔案進行有效的過濾,就會導致惡意檔案或 被呼叫執行,造成檔案包含漏洞。php檔案包含的四個函式 include 包含檔案錯誤時返回一條警告,繼續向下執行。常用於動態包含。req...

DVWA 全等級XSS儲存型(Stored)

接下來我們進入正題 low 原始碼 1 if isset post btnsign 2122 相關函式介紹 trim string,charlist 函式移除字串兩側的空白字元或其他預定義字元,預定義字元包括 t n x0b r以及空格,可選引數charlist支援新增額外需要刪除的字元。mysql...

DVWA 檔案上傳

低中高步驟截圖及說明 低 未做任何過濾,可以上傳一句話並用菜刀連線 然後,記得一句話木馬中post要完全大寫 終於,不是很愉快的連線到了目標主機 中 中等級限制了檔案型別和檔案大小 可以burpsuite抓包更改型別 在進行菜刀連線 高 可以在乙個中加入一句話木馬,然後在菜刀連線 然後菜刀走一波 2...