★我要吧★

 找回密码
 注册[Register]
搜索
qq空间相册密码查看为什么登陆后需要激活无法注册?

[技术] 腾讯QQ利用QQ空间强制聊天漏洞

[复制链接]
发表于 2016-2-17 15:54:34 | 显示全部楼层 |阅读模式
今天在网上看到有人发了强制聊天的工具,是web版的,于是谷歌了一下。找到了由杨元公布在乌云网上的bug,顺便测试了一下,可惜腾讯已经修复了。(表面上腾讯忽略了杨元的报告)4 F( e8 V- J$ T
QQ空间中,有一个谁看过我的功能,然后我们把鼠标移到他们的头像上,会弹出一个信息卡片。
* k, Y& l( N7 U% A" B! y3 F' f! f) W% x) y

- E5 U/ a! ~7 [, y- F, a/ w* [+ Z
) b; K) o* e2 a+ x/ t1 t信息卡片上有一个聊天功能,也就是这个接口,出现了严重的bug。抓包发现聊天的接口为:4 ?1 a0 `0 k: `$ a* S! S
! z& @* v* F& q6 Y3 }- |- B, f
http://r.cnc.qzone.qq.com/cgi-bin/user/cgi_tmp_talk?qzone_uin=20737302&to_uin=569550119&g_tk=1593160781( ^- B+ T3 k6 z5 }# v3 m

2 d! q1 ?6 e! W7 h里边有两个重要参数qzone_uin发起QQ(以下简称sender),to_uin接收QQ(以下简称receiver),指定这两个参数后,请求接口,返回信息如下:
6 B% u+ W' E/ i$ K) e  V
1 t7 Q* `$ V, O+ d
    5 c2 W8 W- j" u7 q. W; I3 D+ I
    <script type="text/javascript">
  • / E- p0 |# \" x, ]( m5 c1 _
    <!--
  • # Q7 B  T  [2 T, N+ R+ Z- T( G
    var url = 'tencent://message/?Menu=yes&uin=569550119&Service=112&SigT=ff8847c4116e035fd4b467f691cd9e42c0d413cec47eefb75d5e970421a2376ab400fffb0ea6cb8a&SigU=8a718a0cd8eba14b389fceb5788e72797b8a7eae107b9c43dd56bc7cc21090bccf67158b657963841c529232def3d416761799a1050acaaa29033f62f7fb46b5580fef571e7d82041508e926d65900ae77fae70b9cc4a341b7677c65b215d0327211235a5702bb6564157a3dfc11abe4';
  • / C1 L; W% K; K9 W2 H& E
    location = url;
  • 5 j0 L, z8 f! U* M5 I
    //-->
  • </script> 2 F4 l1 J5 y4 S# T
/ ^- |1 G2 S3 {$ ^5 c) K0 x
6 B$ B! p$ [% H3 E9 n: |; j4 Q
这里边又有三个非常重要的数据,经过大量实践,发现:uin是接收人的QQ,SigT是receiver的指纹,SigU是sender的指纹。% p2 F6 W8 S1 X% H( U6 A( G9 C! m+ X

. _7 ]* v. u% L$ P3 ^. B由此可见,有了这两个指纹,然后访问tencent://message/接口,就可以发起临时会话。
; M1 M0 C, z) P5 a  a9 X: \9 H' h! Y, N3 r0 K! m9 `! u" f

/ S1 t7 j* O6 o8 F, m) k6 R3 W0 i* Q6 ?' [

* }$ y; b3 d" W3 b这里边又有三个非常重要的数据,经过大量实践,发现:uin是接收人的QQ,SigT是receiver的指纹,SigU是sender的指纹。
3 F7 ~3 Q2 r2 J5 |5 q3 g/ M, q8 }
+ w; y4 F3 h6 ~8 s" }& Z+ ?7 x1 n& d由此可见,有了这两个指纹,然后访问tencent://message/接口,就可以发起临时会话。+ u+ f' H6 j7 B0 b* a! G

5 p  Y2 s& |9 E; c2 B( W" i那怎么实现强聊呢?
6 n1 S- J2 J& w" G# v2 B: B' Y
7 L  s3 o4 D1 u9 M2 f小虫直接说结论,想强聊,必须知道自己一个好友的QQ号和被聊人一个好友的QQ号。这两个条件均不难实现,自己的QQ好友您还不知道么。。。而被聊人的QQ好友,也是很容易获取的,比如你想和你同班的美女聊,那么班主任的QQ就是切入点。4 U1 t7 X( D$ X2 {0 K7 X, F5 Y5 ]
8 Y8 g& Q+ F& t
为什么需要这么奇怪的条件呢?小虫直接演示。
0 t/ f: L9 T% l4 h5 a& g* `; v& W) L3 m' G" B8 D2 J
假设有四个角色,分别是A(发起人),AF(发起人好友),B(接收人),BF(接收人好友)9 b# F" Z. ?/ k, B3 E# N0 ]
1 V+ `8 I6 x7 `
第一步,我们需要在A和AF间建立一个通道,将A作为聊天的发起人,可以这样构造URL:, w3 a8 e2 q+ J8 v0 T* r( I) K
( \0 [' C. @1 [- W4 g- B- ?, W
http://r.cnc.qzone.qq.com/cgi-bin/user/cgi_tmp_talk?qzone_uin=A&to_uin=AF&g_tk=1593160781
, e) c+ b+ D+ o- M* O. c# }
; O9 ]# K7 v; E7 {2 Q) t" E; S$ g/ `
在服务器返回的参数中,我们拿到SigU参数,这个也就是A作为sender的指纹。; V. b* k$ @5 k9 D& _' n4 c8 U5 u

7 l0 _- N- ]3 X- V1 K第二步,我们在B和BF间建立一个通道,将B作为聊天接收人,可以这样构造URL:  l; Z: w  o7 G' m6 F! x
) }2 z' D: T( j$ M
http://r.cnc.qzone.qq.com/cgi-bin/user/cgi_tmp_talk?qzone_uin=BF&to_uin=B&g_tk=1593160781+ S5 X3 q/ r: O9 D) U

# S0 ^$ |# }( L9 X5 v; J2 m* T
8 v" x8 l' V7 ^2 W( Y4 C  A在服务器返回的参数中,我们拿到SigT参数,这个也就是 B作为receiver的指纹。
5 s5 L1 I4 `5 T6 }& p  B6 c8 J/ T- b! y, D: _
接下来我们把这两个指纹混合在一起,访问tencent://message/接口(别忘了加上最基本的uin参数,接收人QQ),恭喜,可以聊天了!
$ u$ w0 T! g' }3 K4 F
$ r* z) S  Q1 E+ b2 q等等,好像有大问题,假如B和BF不是好友呢?我们并不能保证他们一定是好友,也就是说,我们是猜的。7 ~: `( b4 ~( ^) a

: _$ g9 Y+ L  _. l
# W& I1 Y' ]. g5 T6 F聪明的你可能已经发觉了,这个接口可以测试两个QQ号码是不是好友(前提是被测者未开通QQ在线状态,如果一方开通了这个服务,可以尝试将sender、receiver反过来)!!!
) K  z8 y/ a) S2 b/ X) G1 w7 |
- D  H/ J" t8 l这是多么邪恶的接口!
$ j  G* O1 Q: P6 m7 \" t# Q, u
5 O& {: s6 r( q+ L& h不法分子可以通过这个接口收费帮别人测试好友,进而导致情侣隐私泄漏,夫妻感情破裂,进而导致社会不和谐,进而导致生产力下降,进而导致科技停止发展,严重阻碍人类进化。! r2 B6 B0 r; m4 |! L
( {, _$ k* @1 o$ A9 i& q9 S' X
最后,补充一句,通过这个方法发起的临时会话,即使没有开启QQ在线状态服务也是可以的,除非你屏蔽了所有临时会话。! z7 c+ y% P9 y! _8 e
+ u6 w  g. |0 f! P+ _
发表于 2016-2-18 18:54:25 | 显示全部楼层
嗯嗯,支持。
回复 支持 反对

使用道具 举报

发表于 2016-3-31 00:12:16 | 显示全部楼层
这么厉害,真的假的。
回复 支持 反对

使用道具 举报

发表于 2016-7-22 19:03:30 来自手机 | 显示全部楼层
看看对我有没有用
回复 支持 反对

使用道具 举报

发表于 2016-10-27 13:28:49 | 显示全部楼层
没看懂
回复 支持 反对

使用道具 举报

发表于 2022-2-8 17:42:53 来自手机 | 显示全部楼层
太复杂了,不适合我这种技术小白
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

QQ|手机版|小黑屋|☆我要吧☆ ( 豫ICP备13016831号-1 )

GMT+8, 2024-5-14 15:45 , Processed in 0.068000 second(s), 18 queries .

Powered by abc369 X3.4

© 2001-2023 abc369.

快速回复 返回顶部 返回列表