網(wǎng)站短信驗證碼接口被刷是一件很嚴(yán)重的事情,最直接的危害就是消耗大量的短信,導(dǎo)致運營成本增加,另外由于用戶在無任何操作情況下,莫名收到大量短信驗證碼,對用戶造成嚴(yán)重的騷擾,影響企業(yè)的形象,那么網(wǎng)站短信驗證碼接口被刷怎么辦呢?
網(wǎng)站短信驗證碼接口被刷,可以采取以下八種措施:
①手機號碼邏輯檢測
在獲取短信驗證碼”頁面,增加手機號有效性判斷,防止惡意攻擊者使用無效或非法的號碼,從而在第一窗口屏蔽非手機號的亂碼等無效數(shù)字。
②隨機校驗
在獲取短信驗證碼”頁面添加個隱藏的<input>,設(shè)置保存在session中的隨機驗證碼,發(fā)短信前驗證一下,保證發(fā)驗證碼短信請求是在業(yè)務(wù)頁面點擊。
③增加友好的圖形驗證碼
在獲取短信驗證碼”前,設(shè)置圖形驗證碼,要求用戶輸入驗證碼后,服務(wù)器端再發(fā)送動態(tài)短信到用戶手機上,該方法可有效緩解短信轟炸問題。
需要提醒大家的是,當(dāng)前驗證碼在攻防對抗中逐步被成功自動化識別破解,我們在選用安全的圖形驗證碼也需要滿足一定的防護要求。
④同號碼短信發(fā)送頻率限制
采用限制重復(fù)發(fā)送動態(tài)短信的間隔時長, 即當(dāng)單個用戶請求發(fā)送一次動態(tài)短信之后,服務(wù)器端限制只有在一定時長之后(此處一般為60秒),才能進行第二次動態(tài)短信請求。該功能可進一步保障用戶體驗,并避免包含手工攻擊惡意發(fā)送垃圾驗證短信。
⑤不同號碼請求數(shù)量限制
根據(jù)業(yè)務(wù)特點,針對不同手機號碼、不同訪問源IP訪問請求進行頻率限制,防止高并發(fā)非法請求消耗更多的短信包和服務(wù)器性能,提高業(yè)務(wù)穩(wěn)定性。
⑥場景流程限定
將手機短信驗證和用戶名密碼設(shè)置分成兩個步驟,用戶在填寫和校驗有效的用戶名密碼后,下一步才進行手機短信驗證,并且需要在獲取第一步成功的回執(zhí)之后才可進行校驗。推薦閱讀:短信驗證碼接口被DDos攻擊怎么辦
⑦啟用https協(xié)議
為網(wǎng)站配置證書,啟用https加密協(xié)議,防止傳輸明文數(shù)據(jù)被分析。
⑧單IP請求限定
使用了圖片驗證碼后,能防止攻擊者有效進行動態(tài)短信”功能的自動化調(diào)用。但若攻擊者忽略圖片驗證碼驗證錯誤的情況,大量執(zhí)行請求會給服務(wù)器帶來額外負擔(dān),影響業(yè)務(wù)使用。建議在服務(wù)器端限制單個 IP 在單位時間內(nèi)的請求次數(shù),一旦用戶請求次數(shù)(包括失敗請求次數(shù))超出設(shè)定的閾值,則暫停對該 IP 一段時間的請求。
若情節(jié)特別嚴(yán)重,可以將 IP 加入黑名單,禁止該 IP 的訪問請求。該措施能限制一個 IP 地址的大量請求,避免攻擊者通過同一個 IP 對大量用戶進行攻擊,增加了攻擊難度,保障了業(yè)務(wù)的正常開展。