防止惡意頻繁發送短信驗證碼

短信接口驗證碼是網站,App,微信端校驗用戶手機號碼真實性的首要途徑,在爲用戶提供便利的同時,手機短信驗證功能也會被部分用戶進行惡意使用。惡意頻繁發送短信驗證碼,不僅會增加公司的運營成本,增加系統負載,也會給公司的形象造成極壞的影響(一般短信都會帶公司的簽名),所以必須要對這種行爲進行防範,那麼如何才能防止惡意頻繁發送短信驗證碼?

  一、易遭惡意使用的場景
  網絡在線投票站(需要填寫手機號碼進行校驗)

  用戶用手機號註冊頁面(包含手機短信驗證功能)

手機短信動態密碼登錄

通過手機號找回密碼

  二、惡意頻繁發送短信驗證碼的途徑

  主要有兩種途徑,一種是人工頻繁點擊;一種是通過軟件連續點擊,就危害性來說,軟件連續點擊的危害要大的多。

  三、防止惡意頻繁發送短信驗證碼的手段

  1,短信發送間隔設置——設置同一號碼重複發送的時間間隔,一般設置爲60-120秒
  2,IP限定——根據自己的業務特點,設置每個IP每天的最大發送量
  3,手機號碼限定——根據業務特點,設置每個手機號碼每天的最大發送量

上述三種方法不能有效防範通過軟件來連續點擊,因爲軟件可以模擬大批量ip,手機號來調用接口發送

4,流程限定——將手機短信驗證和用戶名密碼設置分成兩個步驟,用戶在設置成功用戶名密碼後,下一步才進行手機短信驗證,並且需要在獲取第一步成功的回執之後纔可進行校驗。

5,綁定圖型校驗碼——將圖形校驗碼和手機驗證碼進行綁定,這樣能比較有效的防止軟件惡意註冊。該方式主要用於web防範,對於app和微信一般是不用圖形校驗碼的。同時圖形校驗碼的校驗必須放在服務端,不能簡單的在頁面裏校驗,防止惡意軟件繞過圖形校驗碼。

6,隨機碼校驗,針對app和微信不適用圖形校驗碼的問題,我們可以在用戶請求發送前頁面時候在頁面中嵌入隨機碼,調用發送手機驗證碼時候,要把這個隨機碼發送到服務端做校驗

7,限制終端類型。針對app和微信,我們可以限制必須是手機來請求才處理。

8, 除了技術手段,從商務角度考慮,我們需要和短信網關方約定每日發送短信上限,超過上限就不再發送,儘量減少經濟損失。儘量找比較靠譜的短信網關,他們也會有監控,比如某個時段,某家公司的短信發送量異常,會及時通知接入方。如果短信網關不靠譜,大量發送短信對他們有經濟利益,難免他們自己來搗鬼頻繁發惡意發送短信。


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