当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2013-018055

漏洞标题:买卖宝用户密码重置漏洞

相关厂商:无锡买卖宝信息技术有限公司

漏洞作者: xfkxfk

提交时间:2013-02-04 12:36

修复时间:2013-03-21 12:37

公开时间:2013-03-21 12:37

漏洞类型:设计缺陷/逻辑错误

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-02-04: 细节已通知厂商并且等待厂商处理中
2013-02-04: 厂商已经确认,细节仅向厂商公开
2013-02-14: 细节向核心白帽子及相关领域专家公开
2013-02-24: 细节向普通白帽子公开
2013-03-06: 细节向实习白帽子公开
2013-03-21: 细节向公众公开

简要描述:

买卖宝——中国最大的手机B2C购物商城。

详细说明:

1.这是是买卖宝的主站哦,进入买卖宝的账号登陆页面:

http://www.mmb.cn/wap/login.do?uuniq=1359436782529555


当然我们这里不登陆,而是点击【忘记密码?】按钮,进入密码重置流程:

http://www.mmb.cn/wap/findpassword/sendBandPhoneNum.do?findPasswordIndex=1&uuniq=1359436785443054


.jpg


2.注册过的用户都得用手机验证,才能用手机号进行密码找回。
填写需要重置的账号,即验证的手机号码,由于只是测试漏洞存在,这里只用了我自己的账号:

.jpg


3.点击提交,此时已经给我的手机号发送了重置密码的短信验证码了:

.jpg

漏洞证明:

4.查看手机收到的短信码为【0788】,我首先输入任意的4位纯数字短信码1234,点击提交,则返回如下错误,记得此时设置好浏览器代理:

.jpg


5.同时,看到的抓包请求为:
POST /wap/findpassword/sendCheckCode.do?uuniq=1359437254334359 HTTP/1.1
Host: www.mmb.cn
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:18.0) Gecko/20100101 Firefox/18.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Referer: http://www.mmb.cn/wap/findpassword/sendCheckCode.do?uuniq=1359437104139014
Cookie: JSESSIONID=D*******************56DD6F039F-1.e; JSESSIONID=2F582EE5*****************5935.e; newOpu=92caf70*****************************9e1
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 58
phone=150********&checkCode=1234&button=%E6%8F%90%E4%BA%A4
上面的参数checkCode=1234为短信码,而参数phone=150********为手机号码。
6.写了那么多,开始吧:设置好参数code为需要爆破的参数,开始暴力猜测

.jpg


2.jpg


7.通过返回的字节数或者返回的内容得出正确的短信码:
短信码错误时,返回的字节数为7471,而短信码正确时字节数为6645
这里成功破解短信验证码为0788.

.jpg


8.那么使用爆破完的短信码重置账号吧!

.jpg


2.jpg


9.成功重置密码:

3.jpg

修复方案:

1.还有一个很严重的bug,上述途中也可以看见,他说有两种方法重置密码:
a.点击短信中的链接,修改密码
b.输入收到的验证码,修改密码
在发送手机验证码时,还发送有一个连接,http://www.mmb.cn:80/wap/c.do?r=3IWB,此链接可直接重置密码,而且从连接中看出,只要破解出r参数的值就可重置密码,搞不懂这是什么方法。。。
只要拿了上述链接,不用走重置密码的流程即可重新更新密码;
2.4位纯数字短信码的爆破,即平均1万次的请求,我使用了burpsuite测试单台机器100线程,1分钟不到即可重置任意一个手机账号!危险啊
3.短信码可以为4位纯数字;可以不设置图片验证码;甚至可以不用在这里设置短信码的30分钟有效期。但是为什么不设置连续几次尝试失败就锁定本次密码重置的请求呢?
4.求20rank,求礼物!

版权声明:转载请注明来源 xfkxfk@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:20

确认时间:2013-02-04 14:07

厂商回复:

设计漏洞和逻辑漏洞,十分感谢指出,正在处理中。

最新状态:

暂无