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

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

缺陷编号:wooyun-2012-014637

漏洞标题:光棍节屌丝的逆袭专场NO.6---畅图网站修改任意妹子账号密码漏洞

相关厂商:畅途网

漏洞作者: 风萧萧

提交时间:2012-11-11 20:27

修复时间:2012-12-26 20:28

公开时间:2012-12-26 20:28

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

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2012-11-11: 细节已通知厂商并且等待厂商处理中
2012-11-11: 厂商已经确认,细节仅向厂商公开
2012-11-21: 细节向核心白帽子及相关领域专家公开
2012-12-01: 细节向普通白帽子公开
2012-12-11: 细节向实习白帽子公开
2012-12-26: 细节向公众公开

简要描述:

屌丝继续逆袭,想知道女神都去哪里旅行么?

详细说明:

1.打开浏览器,进入网站http://www.trip8080.com/,找到【登录】按钮进入登录页面,看到灰色的【忘记密码?】链接没有,点它:

1.jpg


2.进入密码重置流程,选择【通过已验证手机号码找回】:

2.jpg


3.输入手机号码,点击【获取短信校验码】

3.jpg


4.这里由于是测试,我使用了自己的手机号码,收到了6为纯数字的短信码(为了与图片验证码区别,这里成为短信码)是【101557】,这里随意的填写了一个短信码123456,点击【提交】之前设置好浏览器的代理为burpsuite!

4.jpg

漏洞证明:

5.代理工具抓包如下:

POST /user/submitBackpwdInfo.jspx HTTP/1.1
Host: www.trip8080.com
Proxy-Connection: keep-alive
Content-Length: 36
Origin: http://www.trip8080.com
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.13 (KHTML, like Gecko) Chrome/24.0.1284.2 Safari/537.13
Content-Type: application/x-www-form-urlencoded
Accept: application/json, text/javascript, */*; q=0.01
Referer: http://www.trip8080.com/user/backpwd.jspx
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh-CN,zh;q=0.8
Accept-Charset: GBK,utf-8;q=0.7,*;q=0.3
Cookie: pgv_pvid=6867107115; **********************
mobile=1*********9&verifyCode=123456


很容易判断出参数mobile为手机号码,validcode参数为短信码!
6.那么,我开始对validcode参数进行暴力破解了!操上burpsuite,设置好需要爆破的参数:

5.jpg

由于只是测试,我从100000开始,一个需要发送请求2001次:

6.jpg

设置并发线程数为20:

7.jpg


7.通过返回的字节数或者返回的内容得出正确的短信码:
短信码错误时,返回的字节数为251,而短信码正确时字节数为196;
当然也可从返回的内容来判断是否获取正确的短信码,短信码错误时返回内容包含"输入的短信校验码不正确,请重新输入"的字样,短信码正确时返回内容包含“true”并跳转到重置成功的页面!

8.jpg

9.jpg


8.你知道么,我只花了2、3秒钟,即成功爆破完成,使用爆破到的短信码进行验证:

10.jpg


9.好的,进入密码重置阶段,输入新密码吧!

11.jpg


10.屌丝成功逆袭,女神我来了!

12.jpg

修复方案:

1.上面的情况同一短信码被使用了两次,一般情况下短信码应设置为1次使用立即失效,防止他人无需走重置密码的流程即可对短信码爆破,当然不排除短信码泄露导致账号被窃取!
2.6位纯数字短信码的爆破,即平均50万次的请求,我使用了burpsuite测试单台机器100线程,8分多钟即可重置任意一个手机账号!危险啊
3.短信码可以为6位纯数字,甚至可以缩短为4为纯数字;可以不设置图片验证码,甚至可以不用设置短信码的有效期。但是为什么不设置连续5次尝试失败就锁定本次密码重置的请求呢?
4.求20rank,求礼物!

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:15

确认时间:2012-11-11 22:02

厂商回复:

非常感谢,请留下联系方式。

最新状态:

暂无