漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2014-077219
漏洞标题:远程偷取QQ iphone版内部隐私文件,含一大波信息如token、UserPwdSig、好友列表、聊天记录等
相关厂商:腾讯
漏洞作者: 学习乌云
提交时间:2014-09-24 21:13
修复时间:2014-12-23 21:14
公开时间:2014-12-23 21:14
漏洞类型:用户敏感数据泄漏
危害等级:高
自评Rank:20
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2014-09-24: 细节已通知厂商并且等待厂商处理中
2014-09-25: 厂商已经确认,细节仅向厂商公开
2014-09-28: 细节向第三方安全合作伙伴开放
2014-11-19: 细节向核心白帽子及相关领域专家公开
2014-11-29: 细节向普通白帽子公开
2014-12-09: 细节向实习白帽子公开
2014-12-23: 细节向公众公开
简要描述:
昨晚刚拿到新iphone6,开开心心的,晚上随便测试了下,居然发现QQ iphone版一个很好用的远程漏洞。 犹豫了先报腾讯还是乌云,没经验,按学术圈的思维就还是先提交到TSRC了。没想到他们居然只给rank 6的分数(还是从5 argue上来的)。 报漏洞最怕的就是自己的发现得不到应有的认同,所以不要他们的任何奖励,就希望到乌云这让大家看看。以后腾讯的漏洞也只通过乌云报! 大家等公开看看严不严重吧,比如能不能进去别人QQ。
详细说明:
在iphone 6(最新版iOS8)上测试,未越狱版本。昨天的最新版QQ。
如下图所示,基本攻击流程是这样的:一个假想攻击者发来一个文件(它可以从任意终端发,比如PC),我作为受害者下载打开后就会导致我的iphone QQ里的内部隐私文件被远程偷走。整个流程很简单合理,不需要其他额外的交互操作了。
可以看到Cookies.binarycookies可以被偷走。当然,更多其他的内部隐私文件一样可以偷,造成更严重的后果(下面的漏洞证明里我会再详细写)。
当然也可作为UXSS来使用
他们说光alert还不行,还得demo真正可以远程偷文件。所以我就真的去做了,如下图,红色标记的就是头20字节的文件内容(服务器访问日志里)
漏洞证明:
偷Cookie文件的PoC如下:
偷其他文件的话,只要改var aim那边的相对路径就可以了。
接下来,我们看看到底有那些隐私文件可被利用吧。iOS8似乎不方便连电脑调试,所以我拿我的ipad看看里面有啥文件。下图展示的是token.txt(之后其他文件就不再一一截图了,只给出文件名和里面的内容)
1. 这个token.txt里是这样一段字符串,<b3c7d044 ed8c0042 57c8cf44 ea25faec 25c2ba6a 83f0e95b 054b6c95 aa496076>,你说它是什么呢 :)
2. WtloginConf里有更多好东西,如下图:
比如其中的wtlogin_config_file有上次登录时间啊之类的,最关键的是里面有当前登录QQ号和它的UserPwdSig
3. 上面的contents文件夹里保存了该台设备里登录过QQ号的隐私信息:
可以看到好友列表、聊天记录啊等等。比如QQ.db里就有很多东东
config.db这里面的
其他的文件就懒得一一列了。
怎么进入别人的QQ(其实上面该有的信息都有了,进入别人的QQ还那么重要吗,主要不也就是再做进一步欺诈吗)?有几种可行的方法(限于时间关系,我就不去demo了):
1)设个代理,分析QQ在之前已经输过密码的情况下是拿什么作为登录凭证的,token存放在哪个文件。我估计很可能是上面几个信息中的一个。
2)把目标用户的文件都偷走(或者只偷其中重要文件),然后存放或替换掉自己iphone QQ里的数据文件夹。估计腾讯没防御这种copy-paste攻击的。
修复方案:
建议参考dropbox iOS版怎么处理file的,它做的很好。
如有不当之处,敬请原谅。我希望这个case得到合理的认可,然后不想花费时间了(我今天就没干别的事情了。。)。因为乌云的报告流程简单了当,也可以得到大家的监督。谢谢。
版权声明:转载请注明来源 学习乌云@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:12
确认时间:2014-09-25 10:35
厂商回复:
非常感谢您的报告,问题已着手处理,感谢大家对腾讯业务安全的关注。如果您有任何疑问,欢迎反馈,我们会有专人跟进处理。
最新状态:
暂无