檔案上傳漏洞例項
下面例項都是在墨者學院靶場做的,幾種常見的上傳姿勢
1.結合iis5.x/6.0解析漏洞上傳檔案
先上傳一個asp檔案,抓包看看返回結果是什麼
由上圖我們可以知道伺服器是iis6.0,接下來我們利用iis6.0解析漏洞來上傳我們的一句話,新增一個asp目錄
2.一句話木馬圖片
分析上圖,先上傳php檔案,不允許,那麼改下字尾名為png,還是不行,看來是對檔案內容做了檢查,做個圖片馬,上傳
菜刀連線
3.繞過前端驗證
先上傳php檔案
從上圖可以看到上傳的時候彈出一個彈窗,只讓我們上傳上面格式的檔案,那麼我們把我們的檔名字尾改成png,上傳抓包,在包裡將我們的檔案再改回php檔案
上圖顯示我們上傳成功,那麼最後就是菜刀拿shell了
4.修改Content-Type繞過
上傳一句話抓包
從上圖可以指看到,Content-Type欄位是application/octet-stream,來到Repeater,將Content-Type: application/octet-stream改成Content-Type: image/jpeg
成功上傳,菜刀連線,getshell
5.這種上傳方式,挺刺激的。。。。。
沒有任何可以上傳的頁面,但是頁面顯示的是有上傳的地址的,所以掃描一下,或者可以猜一下路徑
沒有顯示錯誤,說明這個目錄下應該可以找到我們想要的的
猜一下上傳目錄,我一開始寫的是upload.php,進入之後就直接跳轉到upload1.php,並且提示無權訪問,抓包看一下吧
下面就是無限的抓包重放,看返回包中有沒有什麼我們需要的東西
下圖這個返回包中我們可以看到upload.php下一跳應該是upload_file.php,但是由於許可權問題,不能進去
但是,forward之後就出現了上傳介面,神奇啊,那就上傳一句話
接下來只要知道絕對路徑就可以上傳我們的一句話了,這個cookie挺讓我在意的,把它改成upload_file.php,go一下,返回包直接顯示了上傳路徑,檔案上傳之後被重新命名了,命名規則也很簡單:verify_當天日期_你上傳的檔名,前面我們上傳檔案的時候,有個verify,它的值就在下面
成功getshell