★我要吧★

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

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

[复制链接]
发表于 2016-2-17 15:54:34 | 显示全部楼层 |阅读模式
今天在网上看到有人发了强制聊天的工具,是web版的,于是谷歌了一下。找到了由杨元公布在乌云网上的bug,顺便测试了一下,可惜腾讯已经修复了。(表面上腾讯忽略了杨元的报告)! p3 e4 [8 U$ o
QQ空间中,有一个谁看过我的功能,然后我们把鼠标移到他们的头像上,会弹出一个信息卡片。# A- @( Z- x1 X) m/ b. V

  |/ Z+ Q* \1 G
5 N/ e* G) j8 t/ e" b, h; c% }$ [
, I! i7 `, `( H( ?( C- p信息卡片上有一个聊天功能,也就是这个接口,出现了严重的bug。抓包发现聊天的接口为:
. {! x% X' M( U- w: d  R
$ O* E! S4 l' Q* _' F) Xhttp://r.cnc.qzone.qq.com/cgi-bin/user/cgi_tmp_talk?qzone_uin=20737302&to_uin=569550119&g_tk=1593160781
' K7 `, H, H2 y. r, u$ u0 Q, q( E' D9 O, W! Z& |' t
里边有两个重要参数qzone_uin发起QQ(以下简称sender),to_uin接收QQ(以下简称receiver),指定这两个参数后,请求接口,返回信息如下:
4 v% k: M. I" p# [5 d- }& {; n4 A# l, @3 {; C4 ~( c" B8 U
    ! z' W4 P! Q! J
    <script type="text/javascript">
  •   R0 }0 c& }1 q- u6 ~$ d) ]2 W
    <!--

  • - E4 I. I4 a% f/ V, _5 Wvar url = 'tencent://message/?Menu=yes&uin=569550119&Service=112&SigT=ff8847c4116e035fd4b467f691cd9e42c0d413cec47eefb75d5e970421a2376ab400fffb0ea6cb8a&SigU=8a718a0cd8eba14b389fceb5788e72797b8a7eae107b9c43dd56bc7cc21090bccf67158b657963841c529232def3d416761799a1050acaaa29033f62f7fb46b5580fef571e7d82041508e926d65900ae77fae70b9cc4a341b7677c65b215d0327211235a5702bb6564157a3dfc11abe4';

  • ) S: J, l* p4 i* l9 k4 X  _location = url;
  • 8 G& C! @  o8 s  ?0 _0 m' [. u$ D
    //-->
  • </script>
    ) a* Z6 @+ P* Q% v$ u; b3 S+ y
' _) U  y) p* e( Y: A# D
/ L! o# @9 j4 A) Z* I4 }$ F: `
这里边又有三个非常重要的数据,经过大量实践,发现:uin是接收人的QQ,SigT是receiver的指纹,SigU是sender的指纹。6 ~% _/ d+ C1 w% _! ^+ }- x4 d% e
! ^$ Q, @' L) I& S
由此可见,有了这两个指纹,然后访问tencent://message/接口,就可以发起临时会话。
9 E  j$ c- R: {$ c, c  ]* J* u% A
1 b  m5 M0 t0 K$ Q: w0 s. O4 E7 z. F5 H2 y. F6 k6 ]
8 l. F7 S3 g/ M, U( N
4 U  R  R# L2 J: X' {
这里边又有三个非常重要的数据,经过大量实践,发现:uin是接收人的QQ,SigT是receiver的指纹,SigU是sender的指纹。# v0 ~1 W) G6 u
9 ], w& d( n' A; }" |
由此可见,有了这两个指纹,然后访问tencent://message/接口,就可以发起临时会话。9 _: M7 ?. f: l8 o  z6 x/ L- Q4 P

  J' j* D! f. M+ \4 I) `那怎么实现强聊呢?. a0 p( ]% m! `4 [
- q5 W& o( {8 d6 [  m3 L9 x
小虫直接说结论,想强聊,必须知道自己一个好友的QQ号和被聊人一个好友的QQ号。这两个条件均不难实现,自己的QQ好友您还不知道么。。。而被聊人的QQ好友,也是很容易获取的,比如你想和你同班的美女聊,那么班主任的QQ就是切入点。
" l% `+ u" g: q8 t/ z4 y: k0 B) {8 L, T
为什么需要这么奇怪的条件呢?小虫直接演示。1 H& |* u0 {- b3 T- O0 o

7 C& f5 G" j) h0 K2 B+ F: M假设有四个角色,分别是A(发起人),AF(发起人好友),B(接收人),BF(接收人好友)7 S, ]9 Z( X6 H! y& `; T4 P" Z

3 f; D- Y; W+ ^2 s第一步,我们需要在A和AF间建立一个通道,将A作为聊天的发起人,可以这样构造URL:
: G$ a* Z; P) N9 i
. V% w- Q) w9 C0 Ehttp://r.cnc.qzone.qq.com/cgi-bin/user/cgi_tmp_talk?qzone_uin=A&to_uin=AF&g_tk=1593160781% }7 d; Z0 F2 [# H
/ ?( Q+ m9 A5 |' c! w  B" V

1 a+ z# b" Q: p1 x' `5 K在服务器返回的参数中,我们拿到SigU参数,这个也就是A作为sender的指纹。
' f- l+ A" F1 U# X' F4 g+ f* h5 v$ B
第二步,我们在B和BF间建立一个通道,将B作为聊天接收人,可以这样构造URL:
! {: I" O# _7 {2 s3 E; R# U, v! I# f- j) k  r+ n
http://r.cnc.qzone.qq.com/cgi-bin/user/cgi_tmp_talk?qzone_uin=BF&to_uin=B&g_tk=1593160781
: D0 o/ c5 B! }, M  R% [
0 M) P8 H( g, k% j( h/ z
" G* q% s; w8 ^在服务器返回的参数中,我们拿到SigT参数,这个也就是 B作为receiver的指纹。
& Y: s7 l) p' i8 r
! v+ }$ @5 V) K0 R接下来我们把这两个指纹混合在一起,访问tencent://message/接口(别忘了加上最基本的uin参数,接收人QQ),恭喜,可以聊天了!
8 ?! |; E9 D  t, k: x
1 X5 M- U# ~. ^% J  k( v等等,好像有大问题,假如B和BF不是好友呢?我们并不能保证他们一定是好友,也就是说,我们是猜的。! `) w& ~1 H! w& [" |+ |
/ L6 J! ^; I- _7 `
2 I  I4 |9 w& P  O
聪明的你可能已经发觉了,这个接口可以测试两个QQ号码是不是好友(前提是被测者未开通QQ在线状态,如果一方开通了这个服务,可以尝试将sender、receiver反过来)!!!
5 K! ~  S, U# g" [4 W# v9 {' Z5 Q9 j, \
这是多么邪恶的接口!
* `% y* `4 j' h/ b- e  X0 ~/ ^6 U% z# Y4 d' v
不法分子可以通过这个接口收费帮别人测试好友,进而导致情侣隐私泄漏,夫妻感情破裂,进而导致社会不和谐,进而导致生产力下降,进而导致科技停止发展,严重阻碍人类进化。
7 @- t" S) A7 g1 w3 c, |2 }$ U, r& ]/ N
最后,补充一句,通过这个方法发起的临时会话,即使没有开启QQ在线状态服务也是可以的,除非你屏蔽了所有临时会话。
7 r3 J" A: E$ A" \' B* g1 a
% B  l* m' h; A/ V4 R3 M
发表于 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-4-29 06:06 , Processed in 0.061916 second(s), 18 queries .

Powered by abc369 X3.4

© 2001-2023 abc369.

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