漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2013-035504
漏洞标题:珍品网任意进入他人账号(OAuth 2.0无绑定token)
相关厂商:珍品网
漏洞作者: xfkxfk
提交时间:2013-08-29 10:55
修复时间:2013-10-13 10:56
公开时间:2013-10-13 10:56
漏洞类型:
危害等级:中
自评Rank:10
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2013-08-29: 细节已通知厂商并且等待厂商处理中
2013-08-29: 厂商已经确认,细节仅向厂商公开
2013-09-08: 细节向核心白帽子及相关领域专家公开
2013-09-18: 细节向普通白帽子公开
2013-09-28: 细节向实习白帽子公开
2013-10-13: 细节向公众公开
简要描述:
珍品网任意进入他人账号,此问题属于OAuth 2.0无绑定token问题
详细说明:
在OAuth协议上,该漏洞分属OAuth 2.0无绑定token问题:由于OAuth 2.0的“无绑定token”特性(http://zone.wooyun.org/content/674 ),导致第三方应用在使用平台方的OAuth 2.0授权(authorize)作为自身应用的认证(authenticate)手段时,缺乏一种有效的认证传递校验和来源检查,从而导致只需要拥有B应用的access token,即可登录到A应用所绑定的服务中。
在漏洞本质上,该漏洞分属于认证交换的信任检查问题:当攻击者给出一个认证凭据时,如果服务器没对此认证凭据进行来源等校验,那么攻击者就能成功完成认证交换,从而造成问题。
下面我们来看看流程:
(1)用户点击用新浪微博或者QQ登录,将弹出OAuth平台方的授权页面
(2)用户点击授权后,珍品网获得OAuth平台方给出的access token
(3)珍品网将此access token上报给http://my.zhenpin.com/third_party_login/api/sina_api.php接口,以获取珍品网的认证
(4)珍品网得到此认证字符串后,即有权限操作绑定的珍品网数据,即登陆成功。
那么这个问题就在于,如果有方法可以恶意替换OAuth平台方给出的access token,那是否就以进入他人的珍品网账号?实验证明,是可行的。
漏洞证明:
1、设置好代理,我们用burp suite
2、在浏览器A上用weibo账户A登陆应用A
3、然后我们劫持账户A在应用A的授权access token
4、我们在B浏览器上用微博账户B登陆B应用——珍品网
5、然后我们把B账户在B应用的授权access token换成A账户在A应用的授权access token(A的access token没有在A应用上登陆,是被半路劫持的,因为一个access token用一次就会失效。)
6、我们看到返回响应中,登陆成功,也就是说我们利用我们劫持到的A的授权access token登陆了B应用——珍品网:
修复方案:
版权声明:转载请注明来源 xfkxfk@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:20
确认时间:2013-08-29 11:12
厂商回复:
十分感谢xfkxfk对珍品网网站安全的关注与支持!
最新状态:
暂无