線上系統短受到對於短信驗證碼接口的惡意攻擊,在此記錄解決過程。
以上是針對本次攻擊進行的處理過程描述,這種短信驗證碼接口的惡意攻擊已經不是第一次碰見,在上一家公司也有發生,恰巧經過此次事故記錄(另外這種攻擊也會影響到平臺給用戶的形象,這次就有幾個用戶進行電話投訴短信驗證碼的騷擾行爲)。
一. 短信接口被惡意攻擊(短信轟炸)解讀html
短信驗證碼接口被惡意攻擊通常主要用於短信轟炸。
短信轟炸通常基於 WEB 方式(基於客戶端方式的原理與之相似),由兩個模塊組成,包括:前端
Web網頁
,提供輸入被攻擊者手機號碼的表單
;html
),利用從各個網站上找到的動態短信URL
和前端輸入的被攻擊者手機號碼
,發送HTTP
請求,每次請求給用戶發送一個動態短信。被攻擊者大量接收非自身請求的短信,形成沒法正常使用移動運營商業務。
短信接口被刷一般指的就網站的動態短信發送接口被此類短信轟炸工具收集,做爲其中一個發送途徑。
具體工做原理以下:安全
二. 短信驗證碼的攻擊方式服務器
三. 容易被惡意攻擊的場景工具
四. 防止短信驗證碼惡意攻擊的手段網站
增長圖形化驗證碼code
惡意攻擊者採用自動化工具,調用動態短信獲取
接口進行動態短信發送,緣由主要是攻擊者能夠自動對接口進行大量調用。
採用圖片驗證碼可有效防止工具自動化調用,即當用戶進行「獲取動態短信」 操做前,彈出圖片驗證碼,要求用戶輸入驗證碼後,服務器端再發送動態短信到用戶手機上,該方法可有效解決短信轟炸問題。htm
安全的圖形驗證碼必須知足以下防禦要求接口
使用了圖片驗證碼後,能防止攻擊者有效進行動態短信
功能的自動化調用
但若攻擊者忽略圖片驗證碼驗證錯誤的狀況,大量執行請求會給服務器帶來額外負擔,影響業務使用。建議在服務器端限制單個IP
在單位時間內的請求次數,一旦用戶請求次數(包括失敗請求次數)超出設定的閾值
,則暫停對該IP
一段時間的請求;若情節特別嚴重,能夠將IP加入黑名單
,禁止該IP的訪問請求。該措施能限制一個IP地址的大量請求,避免攻擊者經過同一個IP
對大量用戶進行攻擊,增長了攻擊難度,保障了業務的正常開展。圖片
根據業務特色,限定每一個手機號碼天天最多發送量
此限定已經很是廣泛,即當單個用戶請求發送一次動態短信以後,服務器端限制只有在必定時長以後(此處通常爲60秒),才能進行第二次動態短信請求。該功能可進一步保障用戶體驗,並避免包含手工攻擊惡意發送垃圾驗證短信。
若是是相似忘記密碼功能頁面,咱們能夠將手機短信驗證和用戶密碼設置分紅兩個步驟,用戶在設置完成用戶密碼後,並須要獲取上一步的成功回執後才進行手機驗證碼的發送。
攻擊者惡意攻擊平臺短信驗證碼接口,不只會增長公司的運營成本,也會給公司的形象形成極壞的影響(好比本次攻擊就有用戶致電客服進行投訴),因此必需要對這種行爲進行必要的防範。
參考連接