好乐买手机版再现用户密码重置漏洞

漏洞概要

缺陷编号:WooYun-2013-018059

漏洞标题:好乐买手机版再现用户密码重置漏洞

相关厂商:好乐买

漏洞作者:xfkxfk

提交时间:2013-01-29 15:47

公开时间:2013-03-15 15:48

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

危害等级:高

自评Rank:20

漏洞状态:未联系到厂商或者厂商积极忽略

Tags标签:

漏洞详情

披露状态:

2013-01-29: 积极联系厂商并且等待厂商认领中,细节不对外公开
2013-03-15: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

手机版——好乐买:中国最大正品鞋购物网站。

详细说明:

1.是好乐买的手机版,进入手机版好乐买的账号登陆页面:

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

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

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

漏洞证明:

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

5.同时,看到的抓包请求为:

上面的参数code=38331为短信码,而参数username=150********为手机号码。6.写了那么多,开始吧:设置好参数code为需要爆破的参数,开始暴力猜测,这里由于是测试我从37330开始:

7.通过返回的字节数或者返回的内容得出正确的短信码:短信码错误时,返回的字节数为5947,而短信码正确时字节数为529,很明显啦!

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

9.成功重置密码:

修复方案:

1.这里5位纯数字短信码的爆破,即平均1万次的请求,我使用了burpsuite测试单台机器100线程,5分钟不到即可重置任意一个手机账号!危险啊2.短信码可以为5位纯数字;可以不设置图片验证码;甚至可以不用设置短信码的10分钟有效期。但是为什么不设置连续几次尝试失败就锁定本次密码重置的请求呢?3.求20rank,求礼物!

漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝

评价

  1. 2010-01-01 00:00 围剿 白帽子 | Rank:5 漏洞数:2)

    lz 要不要这么淫荡!

  2. 2010-01-01 00:00 xfkxfk 白帽子 | Rank:1829 漏洞数:172)

    @围剿 从何说起?