短信轟炸漏洞通常分爲兩種:前端
1.對一個手機號碼轟炸n次後端
2.對單個手機號碼作了接收驗證次數,可是能夠對不一樣手機號發送短信無次數限制cookie
在漏洞挖掘中遇到個有意思的案例,寫篇文章分享出來。函數
在接收短信處都有可能存在短信轟炸漏洞。輸入手機號而後接收短信:post
首先我會查看響應接收和cookie中是否會返回正確的驗證碼,好吧~我在作夢,這種設計缺陷已經不多見了。測試
接着看加密完整的數據包post data的值:編碼
當我輸入手機號碼接收短信,數據包中對phone進行了加密,通常在漏洞挖掘中遇到這種狀況我通常扭頭就是換地方測試漏洞了,我以爲這裏存在問題的可能性很小,可是此次我想嘗試下,下面是個人嘗試之旅:加密
這裏對手機號進行加密,多是前端加密也多是後端加密,我嘗試接收屢次驗證碼,看數據包中的phone是否會發生隨機性的變化:url
我發現個人手機號phone始終是BYiJiNlLxDYiDJOUEoUQdQ%3D%3D,無論我接收多少次驗證碼,他都是惟一的加密值,並無產生隨機性變化。設計
如今我嘗試查看源碼,看看能不能尋找到phone的加密方式:
查看源碼發現他這裏對phone進行了前端加密,首先是經過encrypt加密而後對加密的內容進行url編碼。前面的%3D的url解碼就是=
開始定位到encrypt函數:
控制檯上輸出encrypt
單機點擊進去:
獲得加密手機號碼的方法,以及解密手機號碼的方法。
如今咱們知道了咱們手機號的加密方式,下一步就是批量對每一個手機號進行轟炸:
如何操做呢?
咱們批量手機號碼的最後兩位:
我少生成點,生成20個:
代碼以下:
var k=10;
while(k<30){
var m=encrypt("138330781"+k);
k++;
console.log(m);
}
把這些生成的加密phone保存到文檔中:
爆破之:
簡單記錄下~