大家好!

這篇文章我將和大家分享如何繞過某個網站中表單上傳的速率限制,讓我們開始吧!

關於速率限制:

這種功能的實現一般是通過檢查session緩存中的信息來識別某個用戶session或IP地址在短時間內訪問過多,應該限制訪問速率。

如果某個客戶端在特定時間段內發出過多請求,後端伺服器則會直接返回錯誤代碼429:請求過多。

偵察階段:

在前期偵察過程中,我注意到基本所有功能都有速率限制,所以我開始考慮如何繞過,一旦成功,我就可以對多個功能進行暴力攻擊,例如:

  • 瞬間創建多個新用戶
  • 暴力破解登錄密碼
  • 雙因素驗證繞過

第一次嘗試:

首先,我想先測試一下速率限制的具體機制,所以利用不同的IP通過不同的速度發送請求。最後我發現,短時間內相同IP在發送了4個請求後,再發送第五個請求就會被阻塞。

OK!通過這個測試,我感覺到速率限制主要是由IP進行標識。基本上每個IP在發送了4個請求後的第5個請求都會被阻塞,後端伺服器應該是有一個IP訪問計數器。

有趣…

我立刻想到:實現速率限制功能時的一個常見錯誤是,限制規則往往會把本地IP放在白名單,例如127.0.0.1(localhost)等。

第二次嘗試:

於是我在請求中添加了HTTP請求頭X-Remote-IP:127.0.0.1

然後…速率限制被成功繞過!

攻擊場景:

我很快就進行了幾種暴力攻擊,例如:暴力破解登錄密碼

利用密碼更改進行垃圾郵件攻擊:

當然,你也可以對雙因素身份驗證進行暴力破解。

提示:

有一個Burpsuite的插件可以自動把這個請求頭插入到所有的HTTP請求中,您可以在這裡找到它

具體頁面如下:

希望你喜歡這篇文章!

本文由白帽彙整理並翻譯,不代表白帽匯任何觀點和立場

來源:巧妙繞過網站訪問速率限制|NOSEC安全訊息平臺 - NOSEC.ORG

白帽匯從事信息安全,專註於安全大數據、企業威脅情報。

公司產品:FOFA-網路空間安全搜索引擎、FOEYE-網路空間檢索系統、NOSEC-安全訊息平臺。

為您提供:網路空間測繪、企業資產收集、企業威脅情報、應急響應服務。


推薦閱讀:
相關文章