短信驗證碼被刷常見防范策略
2021-06-17 10:22:48
admin
1、網(wǎng)站或者APP注冊頁面添加個隱藏的[input],value為隨機(jī)驗證碼(保存在session),短信發(fā)送前驗證一下,保證在當(dāng)前頁面點擊。
2、加檢測邏輯,屏蔽非手機(jī)號的亂碼等無效數(shù)字。
3、前端加好校驗碼(圖形驗證或二次確認(rèn))防機(jī)器人批量刷,下圖是幾種常見的圖文驗證碼,可以結(jié)合自身平臺特點進(jìn)行選擇。
4、設(shè)置驗證碼時效性-數(shù)據(jù)庫保存生成的驗證碼時間,表單提交時,判斷該驗證碼是否正確(是否在表中存在同時驗證碼是否失效,一般是五分鐘內(nèi)失效)。
5、同號碼請求次數(shù)限制,根據(jù)業(yè)務(wù)的需要,設(shè)置每個手機(jī)號碼每天的最大發(fā)送量。
6、頻率限制-同一號碼重復(fù)發(fā)送的時間間隔,建議設(shè)置為60-120秒。
7、場景流程限定——將手機(jī)短信驗證和用戶名密碼設(shè)置分成兩個步驟,用戶在設(shè)置成功用戶名密碼后,下一步才進(jìn)行手機(jī)短信驗證,并且需要在獲取第一步成功的回執(zhí)之后才可進(jìn)行校驗。
8、IP限定——根據(jù)自己的業(yè)務(wù)特點,設(shè)置每個IP每天的最大發(fā)送量。
9、傳輸https加密。