QQ巧遇卡与任意用户聊天漏洞

前几天QQ巧遇卡在搞翻牌拿冰淇淋,于是研究了一下这个才上线没多久的新功能,发现存在一个比较严重的漏洞。之所以说严重是因为巧遇卡功能的特点就在于无法反悔性,你只能获得与你所翻用户的聊天机会,其他错过的3个人就算是苍老师什么的也木有办法反悔。

但是我发现的这个漏洞可以突破这一巧遇卡的特性,想跟谁聊就跟谁聊,如果被公布,那么巧遇卡将变得毫无意思可言。你们看到此文的时候,腾讯应该已经修复了这个漏洞。

巧遇卡属于嵌入客户端的web应用,在点了某张牌翻牌之后,会访问腾讯的接口:
http://chat.qq.com/cgi-bin/sel_cards?act=0
返回json数据如下:

age:
charm:
dec:
idkey:
imgid:
key:
loc_cn:
nick:
sex:
url:

例如(参数做了处理,保护隐私):

{"age":20,"charm":40,"dec":"~","idkey":"c2129986f275f41bb211a02653e8a741c0b5b7d93445cc9","imgid":"0ec32c8c","loc_cn":{"c":"","d":"","p":"","u":""},"nick":"","sex":1,"url":"http:\/\/msr.qlogo.cn\/msr\/afb3c16851e7aafa89afad2218d9fd7b3a4c842e7d5c0393eb8bb9586825561fce8c2b993c23f76","verified":0}]

类似这样的信息有四组,代表四张卡后面的用户,这给了我们两个重要的信息:
idkey:
c2129986f275f41bb211a02653e8a741c0b5b7d93445cc9
用户照片url:
http://msr.qlogo.cn/msr/afb3c16851e7aafa89afad2218d9fd7b3a4c842e7d5c0393eb8bb9586825561fce8c2b993c23f76/100

这样就可以把四个用户的照片和idkey对应起来了,那么idkey有什么用呢,通过用户的idkey,我们可以得到用户的dlgid以及分配的聊天服务器等,接口在:

http://chat.qq.com/cgi-bin/sel_cards?idkey=xxx&act=1

通过dlgid和idkey,我们可以与对方发起巧遇卡中的聊天了,具体就是替换提交的参数而已,就不多说了,可以自己研究一下。

至此,整个过程完毕,我认为这种漏洞是比较严重的,因为它绕过了巧遇卡整个业务的核心逻辑。

本文标题:QQ巧遇卡与任意用户聊天漏洞
本文链接:https://www.nigesb.com/qq-qiaoyu-vul.html
订阅本站:http://www.nigesb.com/feed
转载请注明来源,如果喜欢本站可以Feed订阅本站。

发表评论?

4 条评论。

  1. 我是新手,能教我您用什么方法怎么得到的返回数据?是抓包吗?我是抓包。
    有个问题想请教您
    巧遇卡翻牌也可以活动游戏礼包(就是翻巧遇卡,有可能翻出CDKey,几率超低有人7小时没翻出),我觉得也有可投机取巧的,POST的数据几乎是一样的,Get的不一样,但是每次翻牌get的都有相同点,只要做个工具不停发包,把收到的每一次的数据整理,过滤,应该可以找到有CDkey的那个数据。你觉得能吗。

  2. 无意间看到自己三年前的回复,觉得自己的问题好low。谢谢你的回答!

发表评论


注意 - 你可以用以下 HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>