|
想要得到QQ的加密算法,得到QQ的通讯数据只是不到1%的工作量,因为任何抓包软件都能够得到QQ的通讯数据,而且比WPE更好更详细。
0 u8 f3 A1 I9 X) v6 Q; W第二步要知道QQ的通讯协议,这个网上能够查询得到
, r* I8 c \5 T0 K第三步才是分析加密算法,这个基本上很难很难 ^^); _! s9 e8 l: Y. i% T- n8 d
不过伪造UDP包进行QQ的广播欺骗轰炸相对要容易些。0 `7 z, L/ P1 Z7 S
! x" V2 b9 O+ }+ q7 b6 A附:OICQ服务器系统通讯协议7 n! U5 C# A. q- O4 r& [
协议说明:; I' L' ?* z/ {
5 H' L0 t7 [: i1 k, W( A4 y& f% F1 F" w. q; o0 |3 P0 D: G7 S
协议由报文头(T)+发送者(T)+接收者(T)+报文类型(T)+报文长度(L)+报文内容组成5 G# ?( @4 k% Y& j$ f- E
0 L4 G4 e, t2 _# q& D: W1 M
发送者和接收者是系统内的程序种类,OICQ服务器01,传真服务器02,WEB服务器03,打印服务器是04,聊天服务器是05,OICQ用户是0A。 1 S# z2 }9 J e6 n6 J) Q+ i
+ v* @/ ?/ ^: t& ~# w N' \( N( [OICQ用户到OICQ服务器的通讯协议 引导符 (81+0A+01)6 _( i4 ^" k; H
% T8 N9 i! {4 a/ D
报文类型 报文内容 报文说明
; X" Y+ O4 _! q/ r. X- v' ]* B! @5 T& _& Z `! U
01 昵称(S)+肖像(M)+用户密码(S)+性别(T)+年龄(T)+真实姓名(S)+国家/地区(T)+省(T)+市(S)+地址(S)+邮编(S)+学历(T)+毕业院校(S)+职业(T)+电话(S)+寻呼(S)+电邮(S)+爱好(S)+说明(S)+身份验证(T)新用户注册,身份验证用于当有人要将他加入好友时询问是否允许
; q. P, h* k, ?# k$ o' _5 A2 I% U+ v$ ?! m
02 服务号(L)+密码(S)+注册方式(T)老用户注册,方式分为0正常,1隐身% X1 L5 l. w( V1 X4 i
3 r6 w, C4 O0 i6 D. z3 T# J3 o3 R) B03 服务号(L)+对方服务号(L)+内容(S) 发送信息到某人
9 Q8 E( i( U' o. d- C8 x2 W, ]1 Q; e6 ?2 t# z2 f
04 服务号(L)+组号(L)+内容(S) 广播信息,组号=0为全体
% J3 X: u7 @; t( d$ ]
( ~& ]7 k) q( A: @+ b- ^05 服务号(L)+朋友服务号(L) 查看朋友资料8 C' c3 O9 p: T0 Q' g& I
7 y5 j# A& R( @: U06 服务号(L)+组名称(S) 增加组
) Z- J& x6 M3 _' c. j X2 `6 k! g; Y Y$ z7 B$ Z9 @& R
07 服务号(L)+组编号(T)+组名称(S) 修改组名称
) r$ P" Q3 K: G$ ?; z
! S7 N# p$ Y2 b% F" {, [08 服务号(L)+组编号(T) 删除组
" L& t, U' |( U+ E8 I/ u; c0 e$ P6 y; X
09 服务号(L)+移动人数(T)+{朋友服务号(L)+目的组号(T)} 移动组成员
2 B- o# g' I0 S- l
7 d1 S; |. Q! P6 W# _( ?5 W0a 服务号(L)+起始编号(L)+回传个数(T)+查找标志(T) 看谁在线上9 B1 ?& B- g& m7 e# |! [
# t. R4 M6 E/ a9 U
查找标志 1=向小找 2=向大找
4 u$ s* B/ u! n( Q9 C+ |4 X8 p7 y$ z
0b 服务号(L)+SQL语句(S) 自定义查找
/ v6 A4 D; n! \' I( r/ Z0 ]! P! _# y0 I4 ]
0c 服务号(L)+朋友服务号(L) 增加好友
$ |) D; H4 p l& u: Q
8 N( H( i0 M5 K7 K0 V a( z0d 服务号(L)+朋友服务号(L)+加入原因(S) 请求加入好友5 P: o- y3 z9 J2 d( E* U0 L/ n9 }6 w
+ h$ l! A1 e5 r; _2 c3 }9 k& Q) F0e 服务号(L)+朋友服务号(L) 删除好友
7 h, O- I8 e% d: c( y! W; ^9 k T7 Z& W& P
10 服务号(L)+显示模式(T) 更改显示方式 1上线2隐藏3免打扰4离线& D5 f, n5 \2 K
6 o4 w, Q# k7 ?+ l# t" `11 服务号(L)+监视服务号(L) 监视某人谈话
# g, i- T/ Z( ^* S- x/ n' w
3 E0 N' U" q2 D' m12 服务号(L)+昵称(S)+肖像(M)+用户密码(S)+性别(T)+年龄(T)+真实姓名(S)+国家/地区(T)+省(T)+市(S)+地址(S)+邮编(S)+学历(T)+毕业院校(S)+职业(T)+电话(S)+寻呼(S)+电邮(S)+爱好(S)+说明(S)+身份验证(T)更改用户基本信息
# b& b$ y7 |5 Y! }' K* a* w0 c" G6 {& Z! E; j3 Y$ d. s% L; A9 i
13 服务号(L)+朋友服务号(L)+文件名(S)+文件长度(L) 请求发送文件
" W* B+ v! R+ Z2 Z& j
" Y3 S: D* \9 n+ a# ?' w14 服务号(L)+朋友服务号(L)+允许/拒绝 是否允许发送文件
( T* T6 M7 |$ m' E7 H/ e7 q! ~9 h" m
15 服务号(L)+朋友服务号(L)+文件内容(B) 发送文件0 K6 T! S8 V6 ~: ~# F! ]' I# o
9 j2 M6 o! a: X& t7 M16 服务号(L) 连接测试报文
& C' y8 b2 ]. b1 q* n! j5 w
3 W6 F' P0 S9 k! {( y& g' u3 a17 服务号(L)+朋友服务号(L)+同意标志(T) 应答对方请求加入好友
I; U0 A5 T0 R6 G# z2 z1 p( Y: a/ m* [5 V/ K s. D" p) a, Z
0=拒绝
7 n. `: \0 [4 b/ M0 w% Z% h4 b6 p; f w
1=同意; A, A- L h/ I+ l3 m
* `; A$ s3 ?( R3 F0 p) y! Q7 R" d
7 o- e. e5 ]" F% H
: ~. p) t! h8 k- L4 _0 c1 [+ rOICQ服务器到OICQ的通讯协议- n3 ]! o/ F7 g: P5 b }- H
4 Q6 a# U' K- b- \0 L* t报文类型 报文内容 报文说明7 M. M( X. Q& E, i& P" j d2 P
# w1 @$ A. X H, m5 l- O01 成功/失败(T)+服务号(L) 新用户注册结果返回6 s) X% x G3 y
`9 j1 u$ ~' A2 j7 D* O
02 成功/失败(T)+组个数(T)+{组名称(S)+组编号(T)+朋友个数(T)+{朋友服务号(L)+肖像编号(T)+朋友状态(T)+朋友昵称(S)] 老用户注册结果返回1 i0 A1 b. F. U5 m, s6 @$ r/ r
& ] B& L/ }* a: h. \
朋友状态) [- k. }* v4 P
2 l v' J( F2 W* p2 d# u1=上线=2隐藏=3免打扰4离线1 e1 v8 p+ M* |, ~/ X4 F
) ^# O4 V+ Z! f+ c9 C( ]03 标志(T) + 朋友服务号(L)+信息(S)+信息类型(T) 标志 1=系统 2=用户$ K \0 h n, H
7 ?5 C8 C6 j2 O* Q. s0 J/ Y
发送消息,服务号=0是系统消息1 f) c; Q# ?- c
0 A2 V7 V! p: K8 D. ?7 E5 z
1=用户某某已经把你加为好友8 t" v1 W% Q) K
; M/ D" y/ ^8 ?; I# o( I" |
2=用户某某请求你通过身份验证! W; T7 H9 V9 h, Y
1 J5 C6 E( G1 `: B1 J8 c( D$ `
3=用户某某同意了你的验证要求
" h6 k8 w" x# l! L2 n
# k! W; P% {2 }6 _" H) r4=用户某某拒绝了你的验证请求
9 L7 [0 [$ c& v- N4 n& L: D) @" u
, H2 O( f2 c }04 成功/失败(T)+朋友服务号(L)+昵称(S)+肖像(M)+性别(T)+年龄(T)+真实姓名(S)+国家/地区(T)+省(T)+市(S)+地址(S)+邮编(S)+学历(T)+毕业院校(S)+职业(T)+电话(S)+寻呼(S)+电邮(S)+爱好(S)+说明(S)朋友信息回送8 L L% k: O9 `" R k) U* }6 u+ S
7 i% P2 V) {1 c7 x" U5 Q/ w05 成功/失败(T)+组编号(T)+组名称(S) 增加组结果回送 1/00 ~& G7 k- L+ T" Y$ ` V
% V/ M& k$ q7 S2 i' A$ n4 X! f6 X
06 成功/失败(T)+组编号(T)+组名称(S)修改组名称结果回送1/0, ^& ^( o# z( q* e5 v
( [, h& O% w+ Z07 成功/失败(T)+组编号(T) 删除组结果回送1/0* t: p- E) J& D, b2 ^+ v+ d
. o) [, @5 J4 z, X& S; K08 成功/失败(T) 移动组成员结果回送1/02 g& B8 G5 Q' p) N2 Z; J: c% r9 v
6 ~+ Q; [$ s Y9 s3 g0 x% I09 成功/失败(T)+在线个数(T)+{服务号(L)+昵称(S)+肖像(M)+省(T)+市(S)} 查找在线人员结果回送1 G! F: M6 v9 C* |/ Z- [' v# b9 I1 p
6 w3 q- D4 X, k9 m! l# _& `
0a 成功/失败(T)+找到个数(T)+{服务号(L)+昵称(S)+肖像(M)+省(T)+市(S)} 自定义查找结果回送(最多50)
" t8 r) Q V( C& N
# t& @3 G& r! }( ` n0b 标志(T)+朋友服务号(L) 增加好友结果回送标志# ^" g& j; R8 q/ q9 R- ?+ t
5 u. n5 B! u6 g) d+ d0=数据库失败# n. J u) Q L" c; c8 G
( j2 f; j- c1 j3 h=1成功
( d5 u0 @2 k8 R0 n- V: E7 | B6 E7 ~ S) I+ I$ X3 O
=2需要身份验证# v& L8 s3 l: N3 z8 ^6 Q% k
7 x" M$ e- y7 {+ L
=3对方不允许加入3 L m8 q# e( `+ r7 g; f0 R
$ h6 e; @ [9 d) z3 d7 D4 p x=4需要身份验证且不在线
7 l$ }4 ]6 r+ E0 g9 |+ w8 [$ m( z3 c- h/ h% V/ t
0c 朋友服务号(L)+昵称(S)+肖像号(M)+朋友状态(T) 给在线用户增加好友8 V* T" ^. S$ w1 F
5 q% ^2 Z1 C/ O7 s1 V5 G0e 成功/失败(T)+朋友服务号(L) 删除好友结果回送
$ L( _8 i) x( R C" ? [
& u2 |6 a! S8 u" e# [. b; }10 服务号(L)+显示模式(T) 显示模式回送 =1上线=2隐藏=3免打扰4离线
# a0 T7 z/ A" G6 S' v a, N
1 ` Z: b2 J1 l7 W& ?+ s11 成功/失败 更改用户基本信息结果回送( I8 R& f! E c6 D" _
' C" B/ j9 ^* J- ^
12 朋友服务号(L)+文件名(S)+文件长度(L) 请求发送文件9 ?4 x9 T6 L- ?: D
1 j8 F, q1 Q" }( ]. s13 朋友服务号(L)+允许/拒绝 是否允许发送文件 1允许 0拒绝
5 N) |) a1 j- ^, }( g% A/ i4 ]
- i: g( C& u8 t& ^/ C0 T14 朋友服务号(L)+文件内容(B) 发送文件1 l. C5 B) Q- I: Y* D9 Q
- P% r) w8 x+ u* J0 Q2 A' u15 朋友服务号(L)+当前状态(T)朋友状态回送(系统发送)=1上线=2隐藏=3免打扰4离线
, [$ M ?. o- T# o+ f9 ~$ K" t% t( R6 |+ [1 q
16 服务号(L) 连接测试 |
|