驗證碼機制之驗證碼重複使用

水中煮魚冒氣發表於2020-11-02

介紹

  • 通常在網站的註冊、登入、留言板以及評論區等頁面會設計有驗證碼。
  • 如果設計不合理,將會導致驗證碼在驗證成功一次之後,下次使用的時候就不再重新整理也就是可重複使用。

驗證碼重複使用的危害

  • 惡意註冊
  • 暴力破解
  • 無限刷帖

漏洞原理

  • 通常情況下,驗證碼校驗流程如下所示,當伺服器端受理請求後,沒有將上一次儲存的session及時清空,將會導致驗證碼可重複使用
    在這裡插入圖片描述

測試案例

案例

通過重複使用驗證碼實現登入頁面暴力破解。

測試方法:通過重放請求,觀察返回的資訊提示來進行判斷。如果通過重放沒有提示

驗證碼錯誤″之類的資訊,而只是提示“使用者名稱密碼錯誤″這些資訊,就說明存在漏洞

第一步 抓取驗證碼驗證資料包
在這裡插入圖片描述
第二步 將資料包重複使用,
在這裡插入圖片描述

防禦方案

當伺服器端處理完一次使用者提交的請求之後,及時將 session域中的驗證碼清除,並生成新的驗證碼。

摘抄


人生最大的幸福,就是確信有人愛你,

有人因為你是你而愛你,或更確切地說,

儘管你是你,有人仍然愛你。

–雨果《悲慘世界》


相關文章