漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2012-014230
漏洞标题:万达电影网站的任意帐号密码重置漏洞
相关厂商:大连万达集团股份有限公司
漏洞作者: 风萧萧
提交时间:2012-11-02 15:59
修复时间:2012-12-17 16:00
公开时间:2012-12-17 16:00
漏洞类型:设计缺陷/逻辑错误
危害等级:高
自评Rank:10
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2012-11-02: 细节已通知厂商并且等待厂商处理中
2012-11-02: 厂商已经确认,细节仅向厂商公开
2012-11-12: 细节向核心白帽子及相关领域专家公开
2012-11-22: 细节向普通白帽子公开
2012-12-02: 细节向实习白帽子公开
2012-12-17: 细节向公众公开
简要描述:
剑总,你信我么?
详细说明:
1.万达电影网站的主站对密码重置这一模块,部署了强悍的验证码,因此这里是没有问题的!
2.但是在给移动终端访问的站点http://m.wandafilm.com存在问题,没有部署验证码,可以通过爆破手机短信码(区别于图片验证码,这里称作短信码)从而重置任意帐号的密码,听我慢慢道来!首先打开移动终端的主站,点击【会员中心】
3.如果你没有登录的话,会跳到登录界面,但是看到【忘记密码?】。我激动了:
4.点她吧!输入要找回密码的手机号码,我这里为测试,使用了自己的:
5.点击【获取验证码】,网站便跳转到了重置的页面同时手机上收到短信码,为6位纯数字:745233,我随手写个6位纯数字验证码111111,并填上需要重置的密码,点击提交,这里注意要抓包,查看请求:
可以看到返回"手机验证码错误"的字样
6.从抓包的数据看,POST的请求为:
其中,mobileNo参数为手机号,token参数为短信码,newPass为需要重置的密码,那么只要token被猜测对了,只需一次请求即可重置相关手机号的密码:
漏洞证明:
7.继续模拟上述请求,将POST请求发送到burpsuite的intruder模块,设置好需要爆破的参数为token:
8.由于只是测试,我这里从745200开始爆破,在爆破时如果token不正确则返回"万达电影_系统忙"的字样,并且从返回内容字数的多少也可以判断:
9.成功爆破短信码后,系统会返回【万达电影移动_密码修改成功】的字样:
10.后面利用爆破的账号密码成功登陆系统:
修复方案:
1.实际上在移动用户密码重置这里确实有一个小小的限制,短信码的有效期为5分钟,但是对真正的黑客来说这并不算什么!假设网速可以的情况下,每秒能进行一次爆破验证码的请求,那么10计算机并发1000个线程只需两分钟即可成功重置账号!
2.短信码可以为6位纯数字,甚至可以缩短为4为纯数字;可以不设置图片验证码,甚至可以不用设置短信码的有效期。但是为什么不设置连续5次尝试失败就锁定本次密码重置的请求呢?
版权声明:转载请注明来源 风萧萧@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:12
确认时间:2012-11-02 16:35
厂商回复:
感谢风萧萧同学的关注与贡献!提供的信息完整全面,我们将尽快修复此漏洞。
最新状态:
暂无