檔案上傳漏洞

郑不胖發表於2024-08-31

預備知識

【BurpSuite】的基本使用

客戶端javascript檢測的原理

【中國菜刀】的基本使用

實驗目的

繞過JavaScript驗證檢測,上傳一句話木馬。

實驗工具

BurpSuite、中國菜刀、一句話木馬

實驗環境

伺服器一臺(Windows Server 2003)客戶機一臺(windows Server 2003)

實驗步驟

第一步:開啟下方網頁,上傳事先準備好的一句話木馬PHP.php(桌面-實驗工具資料夾內),發現失敗,設定了白名單校驗,只能允許白名單內設定好的型別

http://127.0.0.1/fileupload/fileupload_js.php

第二步:設定瀏覽器代理(右上方的選單-選項-高階-網路-設定)

第三步:在桌面實驗工具資料夾內開啟BurpLoader.jar工具(桌面-實驗工具資料夾內),並設定BurpSuite代理(Proxy-Options)

開啟Intercept(攔截)

第三步:將木馬檔案的字尾先改為“.jpg|.jpeg|.png|.gif|.bmp”中的任意一種格式,以“.jpg”為例。
修改為PHP.jpg,再次上傳,此時上傳資料被BurpSuite攔截,修改filename='PHP.php',點選Forward將資料包發回

此時返回網頁,發現上傳成功,檔案絕對路徑為:

http://127.0.0.1/fileupload/uploads/PHP.php

第四步:中國菜刀連線
將木馬地址新增到中國菜刀,連線菜刀的密碼是123,進行其他入侵操作。

 

 

 

檔案上傳漏洞——Content-Type

預備知識:

Content-Type,內容型別,一般是指網頁中存在的Content-Type,用於定義網路檔案的型別和網頁的編碼,決定檔案接收方將以什麼形式、什麼編碼讀取這個檔案,這就是經常看到一些Asp網頁點選的結果卻是下載到的一個檔案或一張圖片的原因

實驗目的

掌握通過修改資料包中Content-Type的值,進行檔案上傳。

實驗工具

Burp Suite中國菜刀

實驗環境

伺服器一臺(頁面:http://127.0.0.1/fileupload/fileupload_type.php)客戶機一臺

實驗步驟:

第一步:開啟上傳網頁,右擊選擇檢視頁面原始碼,頁面程式碼中並沒有對上傳檔案進行限制。

第二步:選擇木馬檔案進行上傳,上傳失敗,可能是後臺進行了判斷。

第三步:嘗試用Burp Suite抓包,通過修改包內的Content-Type值進行上傳,將application/octet-stream修改為image/jpeg。
上傳成功,右擊圖片,選擇複製影象地址,影象地址就是木馬檔案的地址。

第四步:將木馬地址新增到中國菜刀,密碼是123,進行其他入侵操作。

 

 

 

檔案上傳漏洞—副檔名繞過

預備知識

利用上傳漏洞可以直接得到webshell,危害非常高導致該漏洞的原因在於程式碼作者沒有對訪客提交的資料進行檢驗或者過濾不嚴,可以直接提交修改過的資料繞過副檔名的檢驗。

實驗目的

通過修改檔名,繞過黑名單,上傳一句話木馬,拿到webshell

實驗工具

一句話木馬、中國菜刀

實驗環境

伺服器一臺(Windows Server 2003)客戶機一臺(Windows Server 2003)

實驗步驟

第一步:開啟上傳介面127.0.0.1/fileupload/fileupload_name.php,上傳事前準備好的一句話木馬PHP.php,彈出“不能上傳php檔案”的提示,猜測是通過客戶端黑名單來限制上傳檔案的型別

 

第二步:修改檔名為PHP.phP,再次上傳,成功

第三步:圖片預覽下方的縮圖,右鍵-複製影象地址

http://127.0.0.1/fileupload/up/PHP.phP

第四步:在【中國菜刀】工具內輸入圖片絕對路徑,以及密碼’123’,確認木馬型別,成功拿到webshell

相關文章