基於Pikachu平臺的暴力破解的繞過和防範

在暴力破解中,最常見的防範方法就是驗證碼。

驗證碼的認證流程:

客戶端request登錄頁面,後臺生成驗證碼:
1.後臺使用算法生成圖片,並將圖片response給客戶端
2.同時將算法生成的值全局賦值存到session中

然後校驗驗證碼:
1.客戶端將認證信息和驗證碼一同提交
2.後臺對提交的驗證碼與session裏面的進行比較

如果客戶端刷新頁面,再次生成新的驗證碼
驗證碼算法中一般包含隨機函數,所以每次刷新都會改變

不安全的驗證碼-on client常見問題

使用前端js實現驗證碼(紙老虎)
將驗證碼在cookie中泄漏,容易被獲取
將驗證碼在前端源代碼中泄漏,容易被獲取

不安全的驗證碼-onserver常見問題

驗證碼在後臺不過期。導致可以長期被使用
驗證碼校驗不合格,邏輯出現問題
驗證碼涉及的太過簡單和有規律,容易被猜解

防範措施

設計安全的驗證碼(安全的流程+複雜而又可用的圖形)
對認證錯誤的提交進行計數並給出限制,比如連續5次密碼錯誤,鎖定2小時
必要的情況下,使用雙因素認證。

token防爆破嗎

一般情況下,將token以type=hidden的形式輸出在表單中
在提交認證的時候一起提交,並在後臺對其進行校驗
但是,由於token值輸出在了前端源碼中,容易被獲取,因此也就失去了防暴力破解的意義,一般token在防止CSRF上會有比較好的功效

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章