安卓微信、QQ自带浏览器 UXSS 漏洞
2024-10-19 21:32:48
安卓微信、QQ自带浏览器 UXSS 漏洞
注:PDF报告原文下载链接
Author: hei@knownsec.com
Date: 2016-02-29
一、漏洞描述
在安卓平台上的微信及QQ自带浏览器均使用的QQ浏览器X5内核,在处理ip及域名hostnames存在逻辑缺陷,从而绕过浏览器策略导致UXSS漏洞。
二、PoC代码及简单分析
PoC.htm的代码如下:
1 |
<iframe src=‘http://1.1.1.1..qq.com'><iframe> |
当安卓手机用户使用微信或QQ访问POC.htm时,真实请求并解析执行的是http://1.1.1.1/..qq.com/ 页面代码如下:
1
2
3
4
5 |
<script>
alert('document.domain:'+document.domain);
document.domain ='qq.com';
alert(document.domain);
</script> |
也就是说当遇到 ip地址+“.”+根域的URL自动根据IP地址结构分割URL并访问该IP地址,而浏览器解析的JavaScript代码则按当前的document.URL来处理,会认为当前的document.domain为根域的子域。
三、漏洞演示
测试POC.htm 微信、QQ扫描或者点击访问URL
注:微信版本号为 6.3.8 QQ版本号为 v6.1.0.2635
四、漏洞利用思路
- 通过设置document.domain来实现跨域;
- 结合flash的crossdomain.xml的设置来进行跨域;
- 利用html5或者其他第三方插件如(jre)等可能实现跨域。
五、可能的影响面及修复建议
最早我发现该漏洞的时候测试安卓QQ浏览器是受到影响的(后面测试失败),所以该漏洞可能影响到其他调用QQ浏览器内核的产品线,所以建议在QQ浏览器X5内核心上修复处理该漏洞。具体修复可以判断处理好IP结构符号”.”。
六、漏洞时间线
- 2015年10月 发现安卓QQ浏览器受该漏洞影响
- 2015年12月 发现安卓QQ浏览器不能触发,但微信、QQ等产品能触发
- 2015年12月26日 漏洞报告提交给TSRC http://security.tencent.com/
- 2015年12月28日 TSRC确认该漏洞
- 2016年01月20日 TSRC反馈漏洞已修复
- 2016年02月29日 对外公布漏洞报告
最新文章
- jquery属性选择器
- angular源码分析:injector.js文件分析——angular中的依赖注入式如何实现的(续)
- 用FineReport做的共建共享填报系统
- iOS开发小技巧--实现将图片保存到本地相册
- 通过SSIS监控远程服务器Windows服务并发送邮件报警!
- C语言中的经典例题用javascript怎么解?(一)
- 在Ubuntu Kylin下安装QQ教程
- unknown software exception
- svn add后的数据如何取消-svn revert??--zz
- Android之ActionBar学习
- [LeetCode][Python]Add Two Numbers
- 富文本NSAttributeString
- 1、Mysql无法创建外键的原因 2、MySql 外键约束 之CASCADE、SET NULL、RESTRICT、NO ACTION分析和作用
- Mysql查看表的建表语句
- 使用Metasploit渗透攻击windows系统(二)
- sqlite3 的一些整理和补充
- 玩转X-CTR100 l STM32F4 l X-CTR100与树莓派搭建机器人平台
- python3 中文乱码,UnicodeEncodeError: &#39;latin-1&#39; codec can&#39;t encode characters in position 10-13: ordinal not in range(256)
- jeesite快速开发平台(四)----数据库各表一览
- 2.Python3标准库--文本
热门文章
- vue &; button &; refs &; click &; bug
- IE userdata 原理 应用 详解
- Linux下如何确认磁盘是否为SSD
- USACO Section 1.5 Prime Palindromes 解题报告
- java整形中的缓存机制
- POJ 1966 Cable TV Network 【经典最小割问题】
- RabbitMQ 中 Connection 和 Channel 详解
- 压缩前端文件(html, css, js)
- linux 中 virtualenvwrapper的使用
- gulp+webpack配置