★我要吧★

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

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

[复制链接]
发表于 2016-2-17 15:54:34 | 显示全部楼层 |阅读模式
今天在网上看到有人发了强制聊天的工具,是web版的,于是谷歌了一下。找到了由杨元公布在乌云网上的bug,顺便测试了一下,可惜腾讯已经修复了。(表面上腾讯忽略了杨元的报告)
) ~2 o' |+ v2 M. q" nQQ空间中,有一个谁看过我的功能,然后我们把鼠标移到他们的头像上,会弹出一个信息卡片。
3 o7 K3 C  ^* K! C$ n# ?4 ]
7 N$ k( s. V. N
- N' d; Q7 c- q4 K) n( |5 f( R* F, u; o6 N0 G6 S
信息卡片上有一个聊天功能,也就是这个接口,出现了严重的bug。抓包发现聊天的接口为:" v# Z/ [4 T# i+ D; {( m

& a# H6 [" E4 E1 d9 _http://r.cnc.qzone.qq.com/cgi-bin/user/cgi_tmp_talk?qzone_uin=20737302&to_uin=569550119&g_tk=1593160781
9 z3 {& g; J9 r/ ?! n. B7 s& z
6 E9 Y- u8 H5 v1 r. b* J里边有两个重要参数qzone_uin发起QQ(以下简称sender),to_uin接收QQ(以下简称receiver),指定这两个参数后,请求接口,返回信息如下:
9 R# g" g% k% a9 Z8 e' r5 v& r  a* S$ m' u

    3 Z. D, ?% x1 X4 K! P# q  o<script type="text/javascript">
  • 0 y% N8 x# {! b- Z! W* P
    <!--
  • 6 t. e) c& ~8 F  K/ R/ x
    var url = 'tencent://message/?Menu=yes&uin=569550119&Service=112&SigT=ff8847c4116e035fd4b467f691cd9e42c0d413cec47eefb75d5e970421a2376ab400fffb0ea6cb8a&SigU=8a718a0cd8eba14b389fceb5788e72797b8a7eae107b9c43dd56bc7cc21090bccf67158b657963841c529232def3d416761799a1050acaaa29033f62f7fb46b5580fef571e7d82041508e926d65900ae77fae70b9cc4a341b7677c65b215d0327211235a5702bb6564157a3dfc11abe4';

  • 5 @2 i& g: h1 i; \! n9 @location = url;

  •   K+ g5 i! e' \/ D//-->
  • </script>
    ( D% g9 ~" \9 ]$ e0 v2 e! T7 l* V! C
( e* _3 Z- S' c( t. \

4 i: O/ X8 @/ i  u* P& W这里边又有三个非常重要的数据,经过大量实践,发现:uin是接收人的QQ,SigT是receiver的指纹,SigU是sender的指纹。
: A, b' g6 \( H2 w: S# e; R7 w" v
6 t, F- W+ u) b7 ^由此可见,有了这两个指纹,然后访问tencent://message/接口,就可以发起临时会话。# C7 |4 S' V8 P4 W

' g+ B  F- i+ P, ]9 ]4 g7 P
8 Y1 v: J; F  O8 q* m# P5 g  K: p8 X0 \! W

) o( ]# x1 [9 S  q# ?这里边又有三个非常重要的数据,经过大量实践,发现:uin是接收人的QQ,SigT是receiver的指纹,SigU是sender的指纹。
" |) J! e0 u! S+ n+ h) q1 k, ]& |8 y' p4 \
由此可见,有了这两个指纹,然后访问tencent://message/接口,就可以发起临时会话。
: f) I. [% Y6 g2 n1 P! F
$ \9 y7 b5 y* K那怎么实现强聊呢?
3 g" O$ N, O/ I/ }2 n) `9 W8 V3 F/ E6 O$ N! K2 Z
小虫直接说结论,想强聊,必须知道自己一个好友的QQ号和被聊人一个好友的QQ号。这两个条件均不难实现,自己的QQ好友您还不知道么。。。而被聊人的QQ好友,也是很容易获取的,比如你想和你同班的美女聊,那么班主任的QQ就是切入点。7 A. o* k/ q& T% C; I
- T8 X5 h6 y/ o4 e
为什么需要这么奇怪的条件呢?小虫直接演示。$ \# F) Q* r6 ~( N8 o- n
3 `4 a3 N8 }0 c  Z( {. ^
假设有四个角色,分别是A(发起人),AF(发起人好友),B(接收人),BF(接收人好友): `6 Q- @& V) X5 B% S, C
0 R' M1 d! C  f: l6 w+ b; M+ u+ f
第一步,我们需要在A和AF间建立一个通道,将A作为聊天的发起人,可以这样构造URL:% p0 U3 J% b( v; }& e

8 Z% O# ^0 O' W  x  R7 \! `3 t+ ghttp://r.cnc.qzone.qq.com/cgi-bin/user/cgi_tmp_talk?qzone_uin=A&to_uin=AF&g_tk=15931607814 t# F. W- A; j
" b5 J& q2 Y& q; t
/ G: g; y7 X4 d) U- Z; S
在服务器返回的参数中,我们拿到SigU参数,这个也就是A作为sender的指纹。
# G( ?7 F: E: Y; M
3 K; Y5 C# ^' E+ e. h第二步,我们在B和BF间建立一个通道,将B作为聊天接收人,可以这样构造URL:
  n+ X% i* `. Q) ]% t! z
: W5 |  `. o: u% z* X" dhttp://r.cnc.qzone.qq.com/cgi-bin/user/cgi_tmp_talk?qzone_uin=BF&to_uin=B&g_tk=1593160781
! m( M3 ~+ P3 R5 T  ^$ U3 `3 D4 b, {0 T& M2 n. [
6 X3 m6 ]2 Y7 b5 k
在服务器返回的参数中,我们拿到SigT参数,这个也就是 B作为receiver的指纹。
% p% A& V. U, U- h+ J7 c; n" }; S8 `# m, u/ d" a7 o
接下来我们把这两个指纹混合在一起,访问tencent://message/接口(别忘了加上最基本的uin参数,接收人QQ),恭喜,可以聊天了!3 r+ r& H. e5 W! ~) C( f

" e8 V4 U0 O, K6 |! O" r) S; ~% `等等,好像有大问题,假如B和BF不是好友呢?我们并不能保证他们一定是好友,也就是说,我们是猜的。+ H4 M0 e0 S# r

; ^$ v+ O( _0 T5 t2 _. a- U
) m8 N$ c+ j) d6 v; _聪明的你可能已经发觉了,这个接口可以测试两个QQ号码是不是好友(前提是被测者未开通QQ在线状态,如果一方开通了这个服务,可以尝试将sender、receiver反过来)!!!/ I8 e+ s. l3 x0 l$ }

; p) T9 N: d0 C5 v! f3 X这是多么邪恶的接口!
" ]- O" G5 U+ I2 i" m3 c$ J
- z/ z. \4 f8 P' y5 l2 \- I; K不法分子可以通过这个接口收费帮别人测试好友,进而导致情侣隐私泄漏,夫妻感情破裂,进而导致社会不和谐,进而导致生产力下降,进而导致科技停止发展,严重阻碍人类进化。7 ]2 c0 ^! q7 Z$ J
7 }! m+ }( O* A! H* h( o8 B& e5 @1 z
最后,补充一句,通过这个方法发起的临时会话,即使没有开启QQ在线状态服务也是可以的,除非你屏蔽了所有临时会话。7 z5 K0 Z$ |; c' O
  e- k9 {" v4 K* e1 L% s: G! R6 h
发表于 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, 2025-5-17 20:31 , Processed in 0.108043 second(s), 19 queries .

Powered by abc369 X3.4

© 2001-2023 abc369.

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