節日活動季安全指南|八招應對簡訊驗證碼攻擊

如今,大量的網站、網站、手機app都在使用簡訊驗證碼作為驗證用戶身份的安全技術措施。尤其在年底,企業的促銷、抽獎、互動活動會迎來一個高峰期,用到簡訊驗證碼的場景非常頻繁。

但近期,阿里雲·雲盾WAF團隊監測到,不少用戶業務的簡訊驗證碼功能被攻擊,簡訊介面被惡意利用,導致業務無法正常訪問。同時,被刷的簡訊成本也直接造成一定量的資金損失。

有哪三大行業或者業務,需要警惕簡訊驗證碼背後的風險呢?

風險業務一:所有行業的網站登錄類頁面

哪些場景需警惕:網站在線註冊頁面,網站在線找回密碼頁面,手機簡訊動態密碼登錄頁面。

風險業務二:所有行業的在線投票類頁面

哪些場景需警惕:例如微信投票、在線投票、H5投票等。

風險業務三:電商、零售、金融網貸行業的活動頁面

Advertisements

哪些場景需警惕:活動領券頁面、參與活動頁面。

簡訊驗證碼功能被攻擊的危害比想象中更大

企業用來確保安全的簡訊驗證碼,也會把攻擊吸引過來;這一風險對企業的危害,且聽安全君說明白。

攻擊簡訊驗證碼功能一般直接導致企業的簡訊介面被「刷」。容易發生簡訊介面被「刷」的業務場景,包括以下三大類:

當簡訊介面被刷,對於企業而言,主要有以下危害

  • 1.過多的簡訊介面請求導致伺服器負載增加,嚴重情況下導致伺服器資源耗盡,無法響應請求,影響用戶正常的訪問;

  • 2.過多的簡訊介面發送,導致正常用戶無法使用簡訊驗證服務;

  • 3.過多的簡訊介面非法調用消耗簡訊包資源,從而直接導致運營成本增加。

八招防範簡訊介面被刷

了解了風險之後,企業也不必過度擔心,以下「指南」,可幫助了解如何防範簡訊驗證碼背後的安全風險。

Advertisements

1.手機號碼邏輯檢測

在手機號碼窗口增加號碼有效性檢測,防止惡意攻擊者使用無效或非法的號碼,從而在第一窗口屏蔽非手機號的亂碼等無效數字。

2.隨機校驗

在註冊頁添加個隱藏的<input>,設置保存在session中的隨機驗證碼,發簡訊前驗證一下,保證發驗證碼簡訊請求是在業務頁面點擊。

3.增加友好的圖形驗證碼

即當用戶進行「獲取動態簡訊」 操作前,彈出圖片驗證碼,要求用戶輸入驗證碼后,伺服器端再發送動態簡訊到用戶手機上,該方法可有效緩解簡訊轟炸問題。

由於當前驗證碼在攻防對抗中逐步被成功自動化識別破解,我們在選用安全的圖形驗證碼也需要滿足一定的防護要求。

4.同號碼簡訊發送頻率限制

採用限制重複發送動態簡訊的間隔時長, 即當單個用戶請求發送一次動態簡訊之後,伺服器端限制只有在一定時長之後(此處一般為60-120秒),才能進行第二次動態簡訊請求。該功能可進一步保障用戶體驗,並避免包含手工攻擊惡 意發送垃圾驗證簡訊。

5.不同號碼請求數量限制

根據業務特點,針對不同手機號碼、不同訪問源IP訪問請求進行頻率限制,防止高併發非法請求消耗更多的簡訊包和伺服器性能,提高業務穩定性。

6.場景流程限定

將手機簡訊驗證和用戶名密碼設置分成兩個步驟,用戶在填寫和校驗有效的用戶名密碼后,下一步才進行手機簡訊驗證,並且需要在獲取第一步成功的回執之後才可進行校驗。

7.啟用https協議

為網站配置證書,啟用https加密協議,防止傳輸明文數據被分析。

8.單IP請求限定

使用了圖片驗證碼后,能防止攻擊者有效進行「動態簡訊」功能的自動化調用。但若攻擊者忽略圖片驗證碼驗證錯誤的情況,大量執行請求會給伺服器帶來額外負擔,影響業務使用。建議在伺服器端限制單個 IP 在單位時間內的請求次數,一旦用戶請求次數(包括失敗請求次數)超出設定的閾值,則暫停對該 IP 一段時間的請求。

若情節特別嚴重,可以將 IP 加入黑名單,禁止該 IP 的訪問請求。該措施能限制一個 IP 地址的大量請求,避免攻擊者通過同一個 IP 對大量用戶進行攻擊,增加了攻擊難度,保障了業務的正常開展。

阿里雲安全專家提示,企業可以根據業務的實際情況考慮,從以上8大方式中選擇並組合成最適合企業自身的防擔心介面被刷方案。

並且提高技術人員在實際活動中的安全意識,提前防範風險。

防止簡訊介面被刷最佳實踐推薦

阿里雲安全專家參考了大量企業進行防止簡訊介面被刷的策略,總結出以下四種方式組合是防止簡訊介面被刷的最佳方案:

  1. 使用體驗更好的驗證碼服務防止攻擊;

  2. 如果需要使用簡訊驗證碼功能,可以在「簡訊驗證碼」處增加滑塊驗證(簡單的驗證碼可以被破解)防止被惡意刷簡訊介面。

  3. 在登錄頁面增加邏輯判斷,提高攻擊門檻,例如:增加賬號檢驗功能

  4. 使用阿里云云盾WAF的數據風控功能、CC自定義功能、精準訪問控制等高級防護功能對介面進行防護。

阿里聚安全-數據風控

Advertisements

你可能會喜歡