陸、Usage(使用方式)—File Uploade Attack
參考:Metasploitable 學習筆記-文件上傳漏洞( file upload) & Reverse Shell: 包含reverse shell
一、網頁正常行為描述
可以選擇檔案並上傳(預設應該是一個傳照片的系統)

二、創建backdoor.php檔(欲植入後門)
用vim新增檔案
vim simple-backdoor.php
- 按i進入編輯模式,輸入檔案內容
1 | <?php |

- 按esc退出編輯模式,並輸入:wq保存結果

三、上傳後門 & 驗證漏洞
到DVWA –> File Upload –> 選擇檔案simple-backdoor.php並上傳
標示起來的地方代表上傳的檔案路徑

1. Server後端觀察檔案路徑: Find指令
參考: 如何在 Linux 终端高效搜索文件——高级指南
參考 30日Linux學習系列 第 29 篇 Linux find指令
- 範例輸入: sudo find / -type d -name “<資料夾名稱>”可以搜尋該資料夾路徑(d 代表目錄,可以找到dvwa資料夾路徑

輸入sudo -i,切換權限
輸入sudo find / -type d -name “hackable” ,尋找剛剛上傳資料夾的裸露路徑

移動路徑到hackable資料夾: cd /var/lib/docker/overlay2/414d260a84338dc69c8df81cb7c00e1e7b2113299390ee1aac99b75474336164/diff/var/www/html/hackable root@ip-172-31-52-110:/var/lib/docker/overlay2/414d260a84338dc69c8df81cb7c00e1e7b2113299390ee1aa

ls 印出檔案 –> 觀察到有 uploads
cd uploads
ls 檢查內部檔案
ls -al 顯示隱藏的檔案,驗證攻擊(可讀取敏感資訊)

2. Web Bash驗證
觀察輸入網址,得到路徑為../../hackable/uploads/simple-backdoor.php
- 兩次../../代表前兩層資料夾已包含,可以省略,故從http://127.0.0.1/DVWA/直接往後接即可
輸入網址: http://127.0.0.1/DVWA/hackable/uploads/simple-backdoor.php?cmd=ls
後面接上指令?cmd=ls,即可達成web bash的效果驗證,可直接執行terminal並可以達成

四、Source Code分析
1. Low

- 可以看到在檔案部分並沒有對格式加以限制!!
1 | <?php |
2. Medium

3. High

4. Impossible


五、可能危害
可以從web shell傳送terminal指令,達成reverse shell,為高危險層級的漏洞
檔案上傳漏洞的常見類型包括:
任意檔案上傳:攻擊者可以上傳任何類型的檔案,包括可執行檔案、腳本檔案、圖片檔案等。
檔案包含漏洞:攻擊者可以上傳包含惡意程式碼的檔案,例如 PHP 腳本檔案,當該檔案被執行時,惡意程式碼將被執行。
後門上傳:攻擊者可以上傳包含後門的 Webshell 檔案,當該檔案被訪問時,攻擊者可以獲得對網站的控制。
檔案上傳漏洞的危害包括:
攻擊者可以獲得對網站的控制:攻擊者可以利用檔案上傳漏洞上傳惡意檔案,以獲得對網站的控制。
攻擊者可以讀取敏感資料:攻擊者可以利用檔案上傳漏洞上傳惡意檔案,以讀取網站的敏感資料,例如使用者帳號密碼、信用卡資訊等。
攻擊者可以植入惡意軟體:攻擊者可以利用檔案上傳漏洞上傳惡意檔案,以植入惡意軟體到網站,例如木馬、病毒等。