本文深入分析了106短信管理平臺的運行機制、破解驗證碼和手機短信驗證碼的原理、以及保護手機短信驗證碼的風險和如何處理手機短信驗證碼帶來的一些問題。
驗證碼加密發送
1、在APP中點擊發送驗證碼,向后臺發送一個發送驗證碼請求;
2、后臺收到請求,生成一個驗證碼A,并反編譯成短信驗證碼A‘;
3、請求短信服務商發送短信驗證碼A’至用戶手機,同時存儲驗證碼A至后臺數據庫中
驗證碼解密驗證
1、用戶收到短信驗證碼A’,填寫至APP中,點擊注冊,向后臺發送驗證驗證碼請求并提交短信驗證碼;
2、后臺收到請求后后反編譯短信驗證碼A‘,驗證反編譯之后的結果是否是驗證碼A,是則驗證碼成功,此次用戶注冊申請成功,否則驗證失敗,反饋給APP,此次注冊申請不成功。
1、暴力破解短信驗證碼A’
假設短信驗證碼A’只有四位,暴力破解只需要模擬調取接口10000次就能夠把短信驗證碼A‘破解出來。假設調取一次接口耗時0.1秒,那么1000秒就能夠成功破解驗證碼A’,即只有短短的1000/60=16.67分鐘。
2、暴力破解驗證碼A
截取數據庫的數據包拿到驗證碼A,對驗證碼A執行暴力破解,反推出短信驗證碼A‘,相比直接暴力破解短信驗證碼A’,時間會有點長,但可以減少驗證次數。
當黑客發現某個未加防護的短信發送接口后,按照某個手機號碼列表,循環發送短信驗證碼,不斷變換ip地址,如果我們沒有做任何限制的話,會存在兩個方面的風險:
1、公司可能損失數以萬計甚至更高的短信費用,發送驗證碼是需要向運營商付費,如果發出的短信大多數都是沒有用的話,用戶注冊量越大資金支出越大,將讓公司在這一塊遭受不必要的損失;
2、流量攻擊,用戶無法登陸、注冊;大批量的請求發送驗證碼,會導致訪問流量大增,有可能使得發送驗證碼的數據接口癱瘓,用戶無法繼續使用該功能(造成用戶無法登陸、注冊),必定會收到用戶的投訴,公司形象也會受損
為了防止黑客惡意刷取目標網站短信驗證碼,使用對短信發送次數、短信發送時間間隔進行限制以及發送之前增加動態驗證。
手機號獲取短信驗證碼次數限制是其中一種防攻擊策略,不過在設計這方面內容時,需要根據自己公司的業務情況具體制定的。
1、根據業務需要,短信驗證碼發送次數設置的上限為多少合適?單次短信驗證碼填寫錯誤的次數?
2、一般超過這個上限,我們需要鎖定用戶手機號多長時間?6小時,12小時,還是24小時?
3、鎖定用戶手機號后,我們可以為用戶提供的后續方案是什么?需不需要提示對方,讓他打電話給客服,自己主動申請解鎖?走郵箱的驗證方式、增加語音驗證碼也是一種可行的解決方案。
1、設置短信發送時間間隔是其中的一種防攻擊策略,為了防止用戶重復獲取驗證碼,一般設置60s左右的間隔獲取時間,但驗證碼的有效期一般是5-30分鐘不等。一般來說,5分鐘有效的都是4位驗證碼,30分鐘有效的都是6位驗證碼。不過這方面手段不能防止黑客更換手機號進行攻擊,防護等級較低。
2、發送驗證碼之前需要填寫一次驗證碼,不過此種傳統的方式利用機器學習的知識很容易破解。另外可以增加滑塊拼圖這種需要人為干預的動態驗證。
最后就是短信營銷看似很簡單的一件事,很多人覺得就是簡單的短信群發,但也就有很多人說短信群發沒有效果,其實短信營銷最主要需要注意的是營銷二字。萬商超信(www.685443.com)短信平臺--我們只專注于高品質商務短信平臺,我們鄭重承諾:先使用后付款,按發送成功付費,發送失敗不收1分錢,全國免費400電話:400-688-9229。
Copyright 2007-2020 創勝短信短信群發平臺 All rights reserved.備案號:贛B--20090026-8 | 贛公網安備: 36011102000044號 |網站地圖 |地區短信