wzsc_檔案上傳
題目來源
攻防世界 NO.GFSJ0997
題目描述
經典上傳頁面
用御劍掃出upload
資料夾
/upload
路徑下是上傳的檔案
題解
新建幾個空檔案,發現字尾為txt的檔案可以上傳,且在/upload
下能看到
php檔案上傳後在/upload
下無法看到,懷疑是上傳後立馬被刪除。
先進行測試是否上傳成功。
寫一個test.php
內容如下:
<?php phpinfo(); ?>
將其進行上傳,將上傳的報文傳送到intruder
模組中,接下來將訪問/upload/test.php
的報文也傳送到intruder
模組中
上傳的報文如下:
訪問的報文如下:
將這兩個payload都選擇為null,上傳的報文無限傳送,訪問/upload/test.php
的報文傳送1000遍
讓上傳的報文先啟動攻擊,然後啟動訪問/upload/test.php
的報文,看到確實可以訪問到test.php
說明上傳的php檔案是可以成功被解析的,只是在短時間內被刪除了。
接下來進行攻擊
寫檔案shell1.php
,內容如下:
phpinfo(); ?>
若該檔案解析成功則會寫入shell2.php
,這樣寫入的檔案不是透過上傳頁面上傳的,也就不會被刪除。
使用上面相同的方法,同時上傳並訪問shell1.php
檔案
訪問的報文就不貼圖了,貼一張訪問結果的。成功執行phpinfo(),前面寫入shell2.php
的操作應該也是成功執行了。
果然在/upload
下已經出現shell2.php
接下來就是用蟻劍進行連線,就能獲取flag了。