★我要吧★

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

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

[复制链接]
发表于 2016-2-17 15:54:34 | 显示全部楼层 |阅读模式
今天在网上看到有人发了强制聊天的工具,是web版的,于是谷歌了一下。找到了由杨元公布在乌云网上的bug,顺便测试了一下,可惜腾讯已经修复了。(表面上腾讯忽略了杨元的报告)1 U* X$ S9 B& F7 y: Q
QQ空间中,有一个谁看过我的功能,然后我们把鼠标移到他们的头像上,会弹出一个信息卡片。, B, z8 j& d/ k/ k/ x
* s0 _/ m) f; W8 n  W  R  r2 @

8 Z& x5 h- J/ A- R, s# b# l: G5 s/ w/ U7 e3 J1 S0 h
信息卡片上有一个聊天功能,也就是这个接口,出现了严重的bug。抓包发现聊天的接口为:
/ \$ F+ P) ^, @' O# Z  P* N8 H1 D9 u6 z  x+ J: ]0 `) f, G
http://r.cnc.qzone.qq.com/cgi-bin/user/cgi_tmp_talk?qzone_uin=20737302&to_uin=569550119&g_tk=1593160781+ m- W. L; H" u6 c1 q2 T; d" c# h4 q0 k8 `
' ^0 O5 x& E9 W
里边有两个重要参数qzone_uin发起QQ(以下简称sender),to_uin接收QQ(以下简称receiver),指定这两个参数后,请求接口,返回信息如下:
# L. _3 A% G0 u" b3 t- e
; o. X$ E: R# Q7 Z% s  i6 x4 H
    - i: e; H! Q0 W; ?! w
    <script type="text/javascript">

  • 9 Q8 Z( N, ~$ s<!--
  • ) s/ {( f8 c8 _1 j0 s' |$ C
    var url = 'tencent://message/?Menu=yes&uin=569550119&Service=112&SigT=ff8847c4116e035fd4b467f691cd9e42c0d413cec47eefb75d5e970421a2376ab400fffb0ea6cb8a&SigU=8a718a0cd8eba14b389fceb5788e72797b8a7eae107b9c43dd56bc7cc21090bccf67158b657963841c529232def3d416761799a1050acaaa29033f62f7fb46b5580fef571e7d82041508e926d65900ae77fae70b9cc4a341b7677c65b215d0327211235a5702bb6564157a3dfc11abe4';

  • : P1 x9 I4 Y+ f/ S% k$ X' H. o; ulocation = url;

  • : I+ Y: C, J  L" @2 g3 Z//-->
  • </script>
    : {  W3 s8 }1 \- ?
; B3 ]/ h7 [/ y, o3 z
, b5 l! U+ t' W9 B, o
这里边又有三个非常重要的数据,经过大量实践,发现:uin是接收人的QQ,SigT是receiver的指纹,SigU是sender的指纹。+ A# `$ V7 e* q$ p

% Y" S/ r* c" M6 v由此可见,有了这两个指纹,然后访问tencent://message/接口,就可以发起临时会话。
4 }6 c( D4 S% k5 q* r
$ g) a: C- \2 z
* g$ N8 V/ H" G8 G2 C/ @' z2 k5 J) n- s* h% @

' s2 S  Z6 A& v5 c( M+ m这里边又有三个非常重要的数据,经过大量实践,发现:uin是接收人的QQ,SigT是receiver的指纹,SigU是sender的指纹。
. b7 K; N$ H$ `) N- E; @" ?  D
由此可见,有了这两个指纹,然后访问tencent://message/接口,就可以发起临时会话。+ B% k- h/ G# y* E
" F3 C( _8 T' P8 _6 @9 Z% T
那怎么实现强聊呢?2 l5 Y$ J7 k1 [

! t( x5 B. w3 M5 f9 p小虫直接说结论,想强聊,必须知道自己一个好友的QQ号和被聊人一个好友的QQ号。这两个条件均不难实现,自己的QQ好友您还不知道么。。。而被聊人的QQ好友,也是很容易获取的,比如你想和你同班的美女聊,那么班主任的QQ就是切入点。+ L) x! n. v& O6 V6 H

4 }. f4 L: z: U$ v0 x/ _为什么需要这么奇怪的条件呢?小虫直接演示。
: v) A8 Z: c9 X6 u! Y) J: G0 b# R, _3 L
假设有四个角色,分别是A(发起人),AF(发起人好友),B(接收人),BF(接收人好友)1 }* \9 f# A9 }7 K

/ Z8 f+ R5 d: o第一步,我们需要在A和AF间建立一个通道,将A作为聊天的发起人,可以这样构造URL:+ J9 x7 S$ l& H% z  t% [$ f
: x9 W4 L6 ^* K* }" J' f0 v1 [- R
http://r.cnc.qzone.qq.com/cgi-bin/user/cgi_tmp_talk?qzone_uin=A&to_uin=AF&g_tk=15931607812 e9 p9 J5 P9 q9 D

0 r  g2 P" U$ O6 j7 b
& Z# p) i2 E0 h8 ~" b  e; l在服务器返回的参数中,我们拿到SigU参数,这个也就是A作为sender的指纹。4 }$ I+ ^0 u" A. R3 C

. C: q% W% b# T* c  H" ]. V1 i第二步,我们在B和BF间建立一个通道,将B作为聊天接收人,可以这样构造URL:
/ F! w2 H! U$ _7 E1 h; \4 C+ r( f' R: L% P8 h: R# n
http://r.cnc.qzone.qq.com/cgi-bin/user/cgi_tmp_talk?qzone_uin=BF&to_uin=B&g_tk=1593160781
& ~( @- l7 [- f6 R  K
& T0 K/ d- L' y; [
; c, i& j/ t& g2 w在服务器返回的参数中,我们拿到SigT参数,这个也就是 B作为receiver的指纹。/ M6 D: H+ s+ ]6 }! U

- c4 U5 G1 e. Z2 i, b接下来我们把这两个指纹混合在一起,访问tencent://message/接口(别忘了加上最基本的uin参数,接收人QQ),恭喜,可以聊天了!
6 m% T* y) H' g% }) {+ z4 R+ M' F
: i) Z0 A( U) O# P. \+ }7 b, T等等,好像有大问题,假如B和BF不是好友呢?我们并不能保证他们一定是好友,也就是说,我们是猜的。7 ]: ]* t, [4 T4 W9 E1 t2 I  M
) ~2 b0 O# }* x# ?2 ]5 a" q* t

& S. h- l( p$ L- d/ j, G聪明的你可能已经发觉了,这个接口可以测试两个QQ号码是不是好友(前提是被测者未开通QQ在线状态,如果一方开通了这个服务,可以尝试将sender、receiver反过来)!!!2 G2 p, n4 A' I0 e0 h
/ P5 ~/ p* z- Y: x' S8 u6 g7 S! l% T
这是多么邪恶的接口!; p- ~4 t- h" C( g

1 d1 ~8 Q. g8 N% Q8 O( h不法分子可以通过这个接口收费帮别人测试好友,进而导致情侣隐私泄漏,夫妻感情破裂,进而导致社会不和谐,进而导致生产力下降,进而导致科技停止发展,严重阻碍人类进化。6 [; Y$ p9 W* U& m8 b. ?
2 F! s" r- y+ v0 Y
最后,补充一句,通过这个方法发起的临时会话,即使没有开启QQ在线状态服务也是可以的,除非你屏蔽了所有临时会话。
+ g% g) ?1 V" _& `- x: A! K7 c! T3 i: h  F. X1 t
发表于 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 10:24 , Processed in 0.060192 second(s), 18 queries .

Powered by abc369 X3.4

© 2001-2023 abc369.

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