漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2015-0130081
漏洞标题:比亚迪迪粉汇重置任意用户密码包括管理员账号(机智的分析思路)
相关厂商:bydauto.com.cn
漏洞作者: 纳米翡翠
提交时间:2015-07-29 10:03
修复时间:2015-09-13 15:06
公开时间:2015-09-13 15:06
漏洞类型:设计缺陷/逻辑错误
危害等级:高
自评Rank:20
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2015-07-29: 细节已通知厂商并且等待厂商处理中
2015-07-30: 厂商已经确认,细节仅向厂商公开
2015-08-09: 细节向核心白帽子及相关领域专家公开
2015-08-19: 细节向普通白帽子公开
2015-08-29: 细节向实习白帽子公开
2015-09-13: 细节向公众公开
简要描述:
从来没要过20rank,这次要一个吧,因为用户量之大,泄漏利用成本之低,方式之简单
详细说明:
漏洞证明:
时间不早了,不说废话,直接入题
1.打开迪粉汇
http://club.bydauto.com.cn/portal.php
2.点击登录-->忘记密码
或者直接访问以下链接
http://webcasqa2.byd.com.cn/sso/member.php?mod=lostpasswd
用户名输入admin输入验证码
说到验证码,这里小小吐槽一下,验证码放在cookie里面不是可以直接爆破了吗?
3.显示出admin用户的邮箱,虽然打了码,但是在cookie里面又一览无余。
这段看似乱七八糟的东西只是做了一个url编码,解码后如下:
a:5:{s:6:"mobile";s:0:"";s:5:"email";s:19:"zhong.ge@byd.com.cn";s:8:"password";s:32:"b08bf72c18097d850930fa9b3abe660c";s:8:"username";s:5:"admin";s:3:"uid";s:1:"1";}
貌似连用户的密码一起返回了,不过md5加了盐值,破解不是很容易,但感觉不应该返回密码数据
4.下一步伪造邮箱,让邮箱验证发到指定的邮箱里面
这里有点小插曲,就是伪造邮箱的长度一定要和用户自己邮箱的长度一样,否则发送不成功,我也是偶然发现的(这里就是bug根源)
于是伪造一个和原来一样长度的邮箱bydautocomcn@qq.com替换之
成功截获邮件
访问里面的url,直接重置admin密码
访问后台看看
到了后台拿个uc key 上传个shell很容易的事情,就不演示了,只为说明问题严重性.
说声抱歉,admin的密码改成bydauto了,请修改。
修复方案:
逻辑控制
版权声明:转载请注明来源 纳米翡翠@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:20
确认时间:2015-07-30 15:05
厂商回复:
感谢您对比亚迪的关注及测试,因返回用户信息并存储在COOKIE,且在发邮件时并未做二次验证导致该漏洞的产生。另外,验证码没有加密,存在用户密码被穷举爆破的可能性。目前漏洞我们已经修复,谢谢!
最新状态:
暂无