漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2011-03608
漏洞标题:小米电商网站认证服务第三方劫持漏洞
相关厂商:小米科技
漏洞作者: Joey Yin
提交时间:2011-12-11 22:23
修复时间:2012-01-25 22:24
公开时间:2012-01-25 22:24
漏洞类型:未授权访问/权限绕过
危害等级:高
自评Rank:15
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2011-12-11: 细节已通知厂商并且等待厂商处理中
2011-12-12: 厂商已经确认,细节仅向厂商公开
2011-12-22: 细节向核心白帽子及相关领域专家公开
2012-01-01: 细节向普通白帽子公开
2012-01-11: 细节向实习白帽子公开
2012-01-25: 细节向公众公开
简要描述:
报这个漏洞主要因为周末悲剧地把iphone摔烂了,老婆不给批新手机的经费,无奈之下想给小米报漏洞换个手机。小米科技的谢良说:“钱我争取不到。但如果是比较危险或重要的(比如小米的电商网站,米聊核心系统相关)漏洞,小米手机这个真可以有。请报到security@xiaomi.com,乌云亦可。多谢多谢!” 于是我折腾了10分钟⋯⋯
PS1: 各位观众,如果觉得这漏洞值一部小米手机,请支持我,谢谢。
PS2: 我都写了第三方劫持了,有点担心会不会太详细了。
详细说明:
1. 小米系列网站通过一个中心的认证服务器实现用户登陆:
http://passport.xiaomi.com/index.php?goto=RETURN_URL
2. 其中的RETURN_URL没有做域校验,可以返回到任意网站。
3. 悲剧的是返回地址形式是:RETURN_URL?token=authentication_token
4. 第三方可以通过隐蔽的方式准备一个RETURN_URL然后收集authentication_token.
5. 在小米电商网站上我至少找到两个入口可以通过这个authentication_token获取用户身份:
http://order.xiaomi.com/site/callback?referer=http%3A%2F%2Fwww.xiaomi.com%2F&token=...
http://go.xiaomi.com/index.php?token=...
漏洞证明:
如果你发现某个token在某个认证入口上无效,请注意认证页面的appid参数。
修复方案:
其实没啥好说的,小米各个网站之间还在用这种明显不安全的方式做身份认证,而且还没有实现SSO,其实是技术方案的失败。
版权声明:转载请注明来源 Joey Yin@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:12
确认时间:2011-12-12 08:06
厂商回复:
多谢报告
正在处理中
最新状态:
2011-12-12:先临时做了域限,过段时间会有更靠谱的方案出炉。多谢!