Error message here!

Hide Error message here!

忘记密码?

Error message here!

请输入正确邮箱

Hide Error message here!

密码丢失?请输入您的电子邮件地址。您将收到一个重设密码链接。

Error message here!

返回登录

Close

记录一次短信轰炸漏洞挖掘

飘渺__红尘 2019-02-13 22:00:00 阅读数:268 评论数:0 点赞数:0 收藏数:0

短信轰炸漏洞一般分为两种:

1.对一个手机号码轰炸n次

2.对单个手机号码做了接收验证次数,但是可以对不同手机号发送短信无次数限制

在漏洞挖掘中遇到个有意思的案例,写篇文章分享出来。

  在接收短信处都有可能存在短信轰炸漏洞。输入手机号然后接收短信:

 

 

首先我会查看响应接收和cookie中是否会返回正确的验证码,好吧~我在做梦,这种设计缺陷已经很少见了。

接着看加密完整的数据包post data的值:

 

当我输入手机号码接收短信,数据包中对phone进行了加密,一般在漏洞挖掘中遇到这种情况我一般扭头就是换地方测试漏洞了,我觉得这里存在问题的可能性很小,但是这次我想尝试下,下面是我的尝试之旅:

这里对手机号进行加密,可能是前端加密也可能是后端加密,我尝试接收多次验证码,看数据包中的phone是否会发生随机性的变化:

我发现我的手机号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保存到文档中:

 

爆破之:

 

简单记录下~

 

版权声明
本文为[飘渺__红尘]所创,转载请带上原文链接,感谢
https://www.cnblogs.com/piaomiaohongchen/p/10372046.html

编程之旅,人生之路,不止于编程,还有诗和远方。
阅代码原理,看框架知识,学企业实践;
赏诗词,读日记,踏人生之路,观世界之行;

支付宝红包,每日可领