漏洞概要
关注数(24)
关注此漏洞
漏洞标题:QQ 浏览器 for android 任意文件读取漏洞
相关厂商:腾讯
提交时间:2013-10-22 16:54
修复时间:2013-12-06 16:54
公开时间:2013-12-06 16:54
漏洞类型:设计缺陷/逻辑错误
危害等级:高
自评Rank:15
漏洞状态:厂商已经确认
Tags标签:
无
漏洞详情
披露状态:
2013-10-22: 细节已通知厂商并且等待厂商处理中
2013-10-22: 厂商已经确认,细节仅向厂商公开
2013-11-01: 细节向核心白帽子及相关领域专家公开
2013-11-11: 细节向普通白帽子公开
2013-11-21: 细节向实习白帽子公开
2013-12-06: 细节向公众公开
简要描述:
咳咳,继续!
QQ 浏览器 for android 部分接口权限过大,存在可以读取任意文件的漏洞。
详细说明:
webview 的漏洞让浏览器公开的 API 火了一把,不过时间如白驹过隙般“咻”的一下就过去了,webview 的代码执行漏洞是修了,可是 API 的安全问题貌似没有被关注啊。
1、反编译 QQ 浏览器的 apk,然后通过老办法,搜索关键字“addJavascriptInterface”来查找都有哪些公开哪些接口给 JavsScript 调用。如下:
2、根据上面的跟进代码去看看接口都有些什么方法,这些方法都做了些什么?看到这个函数名 readFileByJS ,额,有戏呀,然后看代码
整个代码的逻辑是需要受这句代码 while(!checkQQDomain() || s == null || l < 0L || i < 0); 限制的,看checkQQDomain应该是判断是不是腾讯的域名,在其他代码中找到这个函数的定义:
差不差,懂半拉。
整个流程就是判断是不是 qq.com 或者 soso.com 的域名,如果是就读取文件,可以指定读取的开始位置以及指定的长度。
3、手机上修改 hosts 文件随便解析一个 qq.com 的二级域名测试下(我找个xss估计也不会多给我分的),poc 代码如下:
/sdcard/x5mtt.txt 是我自己测试生成的文件,然后我本地解析 victim.qq.com 域名,访问后如下图:
漏洞证明:
修复方案:
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:20
确认时间:2013-10-22 17:17
厂商回复:
感谢反馈,我们正在跟进处理中。
最新状态:
暂无