参考:http://zfzz.wodemo.net/entry/318353/edf14357b3fb1ff9227059ce1c50edce/%E7%9F%AD%E4%BF%A1%E6%8E%A5%E5%8F%A3.txt
前言:
昨天跟NoSafe小组的 Asey1k见了个面,互相交流了一下午的技术。他演示了利用某个B2B网站的短信验证码漏洞,实现任意用户密码重置。并且可以强制任意改注册手机号。我也是受到启发;给大家讲一个小小的案例吧。这个案例他当时给我演示过,就是:利用某网站注册短信验证码漏洞,抓包改包实现短信轰炸骚扰;我回来后测试了一下。那 来看我是怎么实现的。
作者:钊涣
0X01:
测试对象的信息我就不公开了,全程打码。这也是隐私问题 学习思路就好。首先打开要测试的网站,找到注册页面;
(图片来自8090安全门户)
上图我们可以看到,它这个站注册的时候是要发送验证码的。一般比较大的电商网站都会有,不止电商还有很多。它这个注册有什么不同呢?就是验证码这里没有做时间限制。可以无限点击,第三方接码平台就会不停的发给你短信。
(图片来自8090安全门户)
0X02:
这样子的话,我们可以利用抓包工具,修改拦截数据然后执行,实现短信轰炸的效果。当时Asey1k用的是Burp Suite,那我这里就用Fiddler4演示一把吧。简单粗暴~ 首先打开测试网站的注册页面;输入手机号-图片验证码-开启Fiddler4 红色T 抓包拦截-点击验证短信发送。 这样就拦截到了请求的数据。再按Shift+r 把数值调整成500
(图片来自8090安全门户)
然后执行,如下图;
(图片来自8090安全门户)
接着手机就会不停的收到短信,直至500条发完为止;
(图片来自8090安全门户)
0×03 总结
通过对此次注册短信验证码漏洞事件的分析和利用,为减少和杜绝此类事件的再次发生,提高安全预警能力,在此提醒业界同仁加强关注日验证码逻辑漏洞的安全细节:
1、设置时间判断,比如60秒内限制发一条
2、验证码不要是4位数,一般验证码的有效时间是10分钟,10分钟如果是4位数的验证码也就是0000-9999=共1万次的可能性。如果使用burpsuite,intruder attack进行短信模糊测试验证,一般来讲5-6分钟就会跑完,即可爆破出正确密码。
3、望厂商多关注敏感安全事件,及时修复高危漏洞