记录黑客技术中优秀的内容, 传播黑客文化,分享黑客技术精华

旧版本QQ中的一处打开聊天界面就能触发的远程命令执行

2015-11-30 04:25

1. QQ秀是由FLASH来编写的



幻灯片73.PNG





2. 以前的QQ秀提供了一个叫做心情秀的功能



幻灯片74.PNG





3. 心情秀可以在Q秀上显示一段自定义文字,还可以改变文字颜色,这及有可能是在TextField中来显示的,并且这个TextField支持htmlText,那么是否可以插入一个img标签呢?



幻灯片75.PNG





如上图所示,可以发现并不能输入特殊字符?



4. 然而,似乎只是在客户端做了过滤而已。。我们抓包看看。



幻灯片76.PNG





5. 数据被huffcompress算法压缩了,给JS代码下断点,然后修改原始的Q秀数据,提交,



幻灯片77.PNG





可以看到不论是客户端,还是WEB页面,都成功渲染了我们所填写的HTML代码。



6. 接着,我们得试试被img标签嵌入的FLASH是否可以执行恶意代码呢?经测试AS2编写的FLASH才能成功执行,说明父级FLASH为AS2编写。



幻灯片78.PNG





7. getURL试试。



幻灯片79.PNG





成功打开pkav.net



8. 然后。。



幻灯片80.PNG





9. 那么有哪些可以被用来调用的API呢?找到Q秀的主FLASH文件。



幻灯片81.PNG





10. 看到了有意思的API,是吧?执行个calc试试?



幻灯片82.PNG





11. 似乎还缺点什么



幻灯片83.PNG





12. 继续反编译另外一个Q秀的FLASH,看名字似乎胜利就在眼前。



幻灯片84.PNG





13. 分析一下这个函数的作用~



幻灯片85.PNG





14. 尝试调用一下这个download API。



幻灯片86.PNG





成功下载了一个文件,但是文件内容却不对。。Why ?



抓包找一下原因。



幻灯片87.PNG





看来客户端实现的代码大概是这样(伪代码):



幻灯片88.PNG





15. 怎么办呢?团队的@sogili(长短短)同学提出的一个可能的解决方案,换行试试?



幻灯片89.PNG





16. 下载回的数据还是不对?继续抓包:



幻灯片90.PNG





似乎所有的\r都不见了。。。



17.为什么呢?



幻灯片91.PNG





上面是ExternalInterface.call的实际过程,推测“\r\n”可能是在拼接成XML数据之后被“格式化”为“标准”的 “\n”。



幻灯片92.PNG





18. 为了避免这种情况,把\r\n改写成entity的形式,




幻灯片93.PNG





可是,参数在处理过程中,&会进行一次转义处理,依然不行。



19. 是不是没办法了呢?我们把视线切换到 functionName,函数名未做任何过滤措施。



幻灯片94.PNG





20. 然后,我们闭合并构造XML。



幻灯片95.PNG





21. OK,这次我们的请求成功了。



幻灯片96.PNG





22. 到了这里,我们可以修改请求的host了,但是IP我们肯定没办法改掉了。



我们找找看这个IP对应了多少域名



幻灯片97.PNG





23. 接着,我们的目标就是在这些域名下找到我们可以控制的资源。



幻灯片98.PNG





24. 最终,我们在b.qzone.qq.com下找到一个可以用来做bat的接口,注意值的双引号边界。



幻灯片99.PNG





这个接口在登录情况下,是需要csrftoken的,但是在未登录情况下访问,不需要token就可以直接返回数据,所以我们构造请求头时,并不需要带入cookie等信息。



25. 最终:download API下载JSON为bat,在QQ默认安装情况下,下载文件的路径已知,openURL API指定程序路径进行执行。



幻灯片100.PNG











漏洞证明:

结果已经不是那么重要了。。。

修复方案:

由于Q秀的版本更新,正好把心情秀这个功能去除了,新版本Q秀上不会显示心情秀了,不排除有类似其它问题。

知识来源: www.wooyun.org/bugs/wooyun-2015-0137693

阅读:92219 | 评论:0 | 标签:无

想收藏或者和大家分享这篇好文章→复制链接地址

“旧版本QQ中的一处打开聊天界面就能触发的远程命令执行”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

九层之台,起于累土;黑客之术,始于阅读

推广

工具

标签云