|
想要得到QQ的加密算法,得到QQ的通讯数据只是不到1%的工作量,因为任何抓包软件都能够得到QQ的通讯数据,而且比WPE更好更详细。
J2 l- x2 y* v" Y第二步要知道QQ的通讯协议,这个网上能够查询得到
' s1 G( y& {/ m: o0 |$ c, M4 C第三步才是分析加密算法,这个基本上很难很难 ^^)
/ X& x. k/ [0 L$ g6 A$ u不过伪造UDP包进行QQ的广播欺骗轰炸相对要容易些。0 {! x5 B$ N3 _8 z
: `5 q( `2 c/ q- [) m2 i) j
附:OICQ服务器系统通讯协议8 y" A0 X9 S& N) A
协议说明:1 S" r# G# W- z: S0 }9 i
+ o( Y( k- n* v6 v7 W* X- I, O5 p2 X
5 Q$ o+ p* n; z" [1 M
协议由报文头(T)+发送者(T)+接收者(T)+报文类型(T)+报文长度(L)+报文内容组成
! N* V5 k0 y6 L8 @: l/ C3 L4 h2 ?3 C
5 _% t) `3 Z$ z$ s, K发送者和接收者是系统内的程序种类,OICQ服务器01,传真服务器02,WEB服务器03,打印服务器是04,聊天服务器是05,OICQ用户是0A。
; b8 }# `1 S# T4 q
1 E6 ? V- w3 r; DOICQ用户到OICQ服务器的通讯协议 引导符 (81+0A+01)( t) c2 w5 ?% {) O' T8 ^; l
U! C; k0 w" P, ~5 E+ o报文类型 报文内容 报文说明
. M! v: h" K& G v6 G% ]' [. t+ B1 |- q6 d) s2 X
01 昵称(S)+肖像(M)+用户密码(S)+性别(T)+年龄(T)+真实姓名(S)+国家/地区(T)+省(T)+市(S)+地址(S)+邮编(S)+学历(T)+毕业院校(S)+职业(T)+电话(S)+寻呼(S)+电邮(S)+爱好(S)+说明(S)+身份验证(T)新用户注册,身份验证用于当有人要将他加入好友时询问是否允许
% m0 P+ Z2 d1 u6 ]1 ]% v z# O
. k8 y! ~! ^7 x [) z$ {02 服务号(L)+密码(S)+注册方式(T)老用户注册,方式分为0正常,1隐身! O- \" P3 `$ Y' ^
" m5 m7 V9 j3 d+ F& \- M7 b) M03 服务号(L)+对方服务号(L)+内容(S) 发送信息到某人
& T1 p5 t# i" p# v6 I' ?
" V* @& N0 c, N P- s1 W2 M- t04 服务号(L)+组号(L)+内容(S) 广播信息,组号=0为全体
1 s5 Z: w. z0 x' K2 t( x5 g! B' ?
- n: ^8 v1 }( i& B" p: n$ Z4 r05 服务号(L)+朋友服务号(L) 查看朋友资料% x$ }, h% O: G. P2 k" \4 o) z
0 X* A9 @9 v; l" N% i
06 服务号(L)+组名称(S) 增加组
1 S% j1 c' H: n& e- O# I. c# Q
1 \ g2 p' ^9 p% |: z7 T; L07 服务号(L)+组编号(T)+组名称(S) 修改组名称! K9 @% ~! b* G
1 Q6 y5 e( K) i; V, j
08 服务号(L)+组编号(T) 删除组
' O2 ]; \$ g/ F& s, O- m
( m: R" \* t) S# ^* E09 服务号(L)+移动人数(T)+{朋友服务号(L)+目的组号(T)} 移动组成员
; \ s6 E: C$ g/ h1 c: A, d: [! }! d c
0a 服务号(L)+起始编号(L)+回传个数(T)+查找标志(T) 看谁在线上+ l. G% v- d9 b% ^" ^ _
( `8 D0 J- @7 B( w2 h
查找标志 1=向小找 2=向大找! ^3 y! N3 w/ @
& i# `3 C+ T6 L# h9 `" P1 @
0b 服务号(L)+SQL语句(S) 自定义查找
4 b4 }# e" ^. H2 F5 w3 j& P
/ q6 |" t2 @* s x+ a0c 服务号(L)+朋友服务号(L) 增加好友
+ f) K- u* l5 j
3 I3 t* t3 T+ G) h& }0 M0d 服务号(L)+朋友服务号(L)+加入原因(S) 请求加入好友
0 v# X3 A, E q' G* N: U1 n' A5 D: f
0e 服务号(L)+朋友服务号(L) 删除好友1 s/ G. T, c0 b1 r1 F# g
, [. t; G6 s" P. H10 服务号(L)+显示模式(T) 更改显示方式 1上线2隐藏3免打扰4离线! [* O8 E- ~4 Z3 {8 z( `
0 r0 [/ P' N9 m7 m
11 服务号(L)+监视服务号(L) 监视某人谈话
5 m0 m$ {; t2 J( R
' z6 F2 C# c( @ r5 o, ~12 服务号(L)+昵称(S)+肖像(M)+用户密码(S)+性别(T)+年龄(T)+真实姓名(S)+国家/地区(T)+省(T)+市(S)+地址(S)+邮编(S)+学历(T)+毕业院校(S)+职业(T)+电话(S)+寻呼(S)+电邮(S)+爱好(S)+说明(S)+身份验证(T)更改用户基本信息
# G1 Y% _; X3 e" K( x# \( ]: @- @- G9 U8 K
13 服务号(L)+朋友服务号(L)+文件名(S)+文件长度(L) 请求发送文件
& _1 y) z: K( ?' B. v8 H8 |+ n% s5 H! v" Y) O: F+ F+ Z) ?5 x+ C
14 服务号(L)+朋友服务号(L)+允许/拒绝 是否允许发送文件5 a5 {' b# A, X
4 W6 D3 X- _. v. Z- S8 F& J0 Y15 服务号(L)+朋友服务号(L)+文件内容(B) 发送文件
" F A8 M. v4 P- \) B8 n1 A, C- e9 D) `5 j( q3 i5 d4 m
16 服务号(L) 连接测试报文
3 d# G3 p3 v6 j0 n4 d$ B; } P$ C
17 服务号(L)+朋友服务号(L)+同意标志(T) 应答对方请求加入好友
' n4 B3 I1 M, V, D
, d9 S0 w4 Q( M4 P4 e, Z4 H' _0=拒绝0 J& I) m) u# A
# X& o4 k/ Y I7 O- C. U& ~
1=同意
& c- h d3 q/ v [4 F9 X' B# q" w' U0 I; l8 c, M" ?$ G1 t
$ p# t' B/ X7 W# S9 R9 v/ E# n+ k
) E6 h. w1 s* Y6 Y: J; w# GOICQ服务器到OICQ的通讯协议
( {: V& x3 X% T# R, O+ k
! f) _6 |' ^5 @5 j& R0 E报文类型 报文内容 报文说明
) @' i& P4 f* E5 k: T- }: @; W9 X6 S) ~6 m' E
01 成功/失败(T)+服务号(L) 新用户注册结果返回) I. }* f. {# d" p# X$ v
$ p. d x. N5 d! J, o02 成功/失败(T)+组个数(T)+{组名称(S)+组编号(T)+朋友个数(T)+{朋友服务号(L)+肖像编号(T)+朋友状态(T)+朋友昵称(S)] 老用户注册结果返回) F/ ~7 C& W! @$ r+ G
$ s2 C% ~2 r2 Q% v* k; j朋友状态
" f" H3 i- T2 ]9 t2 z' L1 }+ O D( C+ b+ x, h
1=上线=2隐藏=3免打扰4离线
0 u& a4 m3 m& Y% l+ e; ` T+ r% \' r# @
03 标志(T) + 朋友服务号(L)+信息(S)+信息类型(T) 标志 1=系统 2=用户4 B {, f; {/ \ E0 `- E" j
8 ~. P. H# ^; e! ?
发送消息,服务号=0是系统消息
1 A* [7 ^/ t$ g! x0 m5 \. R" J6 [) C/ F2 u1 z- W) C
1=用户某某已经把你加为好友" g. x6 x# r7 }% ?! T
! f+ a7 L% u0 s- @8 q
2=用户某某请求你通过身份验证2 s! I. J, [6 i0 C- j( n# E- ^ I1 G
% c& ~: |* ~6 o$ z2 V3=用户某某同意了你的验证要求
! O5 \. q- o5 j9 W$ X8 u& |8 F* L' b. V l
4=用户某某拒绝了你的验证请求: u0 e1 P( e) F! s- K
1 E& r6 F- `. }1 d7 t04 成功/失败(T)+朋友服务号(L)+昵称(S)+肖像(M)+性别(T)+年龄(T)+真实姓名(S)+国家/地区(T)+省(T)+市(S)+地址(S)+邮编(S)+学历(T)+毕业院校(S)+职业(T)+电话(S)+寻呼(S)+电邮(S)+爱好(S)+说明(S)朋友信息回送3 ?* E: [2 ?& g; M; m- p
2 b3 }% B: p& h. N
05 成功/失败(T)+组编号(T)+组名称(S) 增加组结果回送 1/0
% h8 S/ n5 J V0 t( B
% E: T" B# `, L0 {: l; o6 Q. A z06 成功/失败(T)+组编号(T)+组名称(S)修改组名称结果回送1/0
3 n) r' [/ I, e* G
2 s) i4 t' F S6 |, a! v9 C2 D' y07 成功/失败(T)+组编号(T) 删除组结果回送1/0
5 u! g' H! K* c G; T- I& c) p
7 W/ m8 t5 U6 F2 y08 成功/失败(T) 移动组成员结果回送1/0
1 f) ~3 j5 q3 Y/ l5 o
5 C% P! U+ W' J; m5 R09 成功/失败(T)+在线个数(T)+{服务号(L)+昵称(S)+肖像(M)+省(T)+市(S)} 查找在线人员结果回送
$ S3 c- f* t& i! F! {+ T/ G4 g! L( \; Z, [$ N1 y
0a 成功/失败(T)+找到个数(T)+{服务号(L)+昵称(S)+肖像(M)+省(T)+市(S)} 自定义查找结果回送(最多50)( K+ f) S5 D/ k q! Z6 y
8 A6 A+ H b8 Y0 ~# g: ]- a8 C
0b 标志(T)+朋友服务号(L) 增加好友结果回送标志 s- E, {2 U, ^! ~) E) U' }: l
- a9 R: s. Y" F3 n% A. Y0 k
0=数据库失败, e+ |. u. k/ p- l% b2 \
% F( X- E8 U4 B, K
=1成功* I0 _* A. c9 [; m y: _& o: x
3 j! b0 Y, h" O=2需要身份验证
1 W( n7 Z/ e. b c- R' ~
. z9 `3 ], Y! _* s i& S6 V' i=3对方不允许加入& F) o- \+ x2 q) H
: v5 w" n5 }; O1 u+ H. R
=4需要身份验证且不在线4 e0 S( }+ U/ F4 F, k, F
2 L/ f( t! W) u M3 u
0c 朋友服务号(L)+昵称(S)+肖像号(M)+朋友状态(T) 给在线用户增加好友7 n: b1 [' P: x w* J+ l" n* x
1 a) o( j+ Y2 |& w. s0e 成功/失败(T)+朋友服务号(L) 删除好友结果回送0 d. |2 d( Y! ` ~0 G/ u4 g
3 V* q6 T( O; @
10 服务号(L)+显示模式(T) 显示模式回送 =1上线=2隐藏=3免打扰4离线
" o* P& m3 O. ~
$ j" S; `) }; q! E4 E1 B4 ~11 成功/失败 更改用户基本信息结果回送1 a! _( B( n/ U; J
6 }8 K6 G& G% R/ k1 t5 R12 朋友服务号(L)+文件名(S)+文件长度(L) 请求发送文件
' x5 e ]( S; L6 N) P* a: k8 s+ r X
13 朋友服务号(L)+允许/拒绝 是否允许发送文件 1允许 0拒绝
, Q/ ^( b& p- H+ l! R z4 J( r p/ \) A- j
14 朋友服务号(L)+文件内容(B) 发送文件
! g0 p1 z. E! A3 i# M, p7 I# v& Z2 l+ ]# M9 o2 D4 w8 k
15 朋友服务号(L)+当前状态(T)朋友状态回送(系统发送)=1上线=2隐藏=3免打扰4离线
1 X. F8 H/ Q, H+ x7 C0 c0 v6 n
( Q9 ^( ], P! V O* G$ k% Y& B16 服务号(L) 连接测试 |
|