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

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

缺陷编号:wooyun-2014-058274

漏洞标题:健一网QQ登录Oauth2存在逻辑问题,可使用新用户刷单

相关厂商:j1.com

漏洞作者: 有爱的小止

提交时间:2014-04-24 14:04

修复时间:2014-06-08 14:05

公开时间:2014-06-08 14:05

漏洞类型:未授权访问/权限绕过

危害等级:低

自评Rank:1

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-04-24: 细节已通知厂商并且等待厂商处理中
2014-04-24: 厂商已经确认,细节仅向厂商公开
2014-05-04: 细节向核心白帽子及相关领域专家公开
2014-05-14: 细节向普通白帽子公开
2014-05-24: 细节向实习白帽子公开
2014-06-08: 细节向公众公开

简要描述:

oauth2的回调操作中,对state,accessToken没有进行验证,随意进行调用都可以实现登录

详细说明:

1. Chrome 下,用 QQ 登录,有一段 js 写错

document.myform.submit();


然后,就翻看整个 qqLogin-redirect.html 文件,发现文件就是 qq 登录 oauth2的回调
2.扒出参数:
http://www.j1.com/qqLogin-redirect.html?accessToken=123&backURL=&state=5jk1s
accessToken 随意填写便可切换新用户登录
Oauth2的逻辑设计错误,应该对系统的影响不大。增加垃圾用户?恶意刷单?

漏洞证明:

1.png

修复方案:

oauth2登录流程优化。PS: 把qq oauth2的回调操作 js 一起改下吧,Chrome 下登录不上去!

//回调方法
function callback(user) {
$("#openId").val(user.openid);
if (user.openid == "") {
alert("登录失败!");
window.location.href = "/";
}
var backUrl = "";
backUrl = $.cookie("loginBackUrl");
if (backUrl != null) {
$("#backURL").val(backUrl);
}
//alert($("#accessToken").val());
document.myform.submit(); <--------提交表单不能这样啊
}

版权声明:转载请注明来源 有爱的小止@乌云


漏洞回应

厂商回应:

危害等级:低

漏洞Rank:2

确认时间:2014-04-24 16:21

厂商回复:

谢谢您的提醒,我们会及时处理。

最新状态:

2015-08-20:已修复