一·何為條件競爭
現代框架更能抵御此類攻擊,他們通常不會將檔案直接上傳到檔案系統上的預期目的地,相反,他們采取了預防措施,例如首先上傳到臨時的沙盒目錄并隨機命名以避免覆寫現有檔案,然后,他們對這個臨時檔案執行驗證,只有在認為安全的情況下才將其傳輸到目的地,也就是說,開發人員有時會獨立于任何框架來實作自己的檔案上傳處理,做好這件事不僅相當復雜,而且還可能引入危險的競爭條件,使攻擊者能夠完全繞過最強大的驗證,例如,一些網站直接將檔案上傳到主檔案系統,如果沒有通過驗證,則再次將其洗掉,這種行為在依賴防病毒軟體等檢查惡意軟體的網站中很常見,這可能只需要幾毫秒,但在檔案存在于服務器上的短時間內,攻擊者仍有可能執行它,這些漏洞通常非常微妙,因此在黑盒測驗期間很難檢測到,除非您能找到泄漏相關源代碼的方法,
簡單點說,條件競爭就是上傳成功后和洗掉檔案之間存在一個短的時間差(因為要執行檢查檔案和洗掉檔案的操作),攻擊者就可以利用這個時間差完成競爭條件的上傳漏洞攻擊,
二·實驗步驟
1.登錄發現有一個上傳頭像的功能,嘗試上傳頭像和.php檔案,發現不能上傳php檔案


2.打開burp開啟代理,然后上傳.php檔案抓取資料包,發送到intruder模塊
清除負載位置,然后隨便選擇一個位置標記負載,在playloads頁面playload type選擇NULL playload


3.然后訪問上傳的圖片,截取GET請求,同樣發送到intruder模塊,playload type選擇NULL playload


4.然后同時開始上面的兩個攻擊,也就是一邊上傳,一邊訪問,注意訪問攻擊里面有一個狀態碼是200的說明成功,然后提交完成實驗

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/469606.html
標籤:其他
