|
想要得到QQ的加密算法,得到QQ的通讯数据只是不到1%的工作量,因为任何抓包软件都能够得到QQ的通讯数据,而且比WPE更好更详细。
. D# x# P: y' _0 K9 m& [第二步要知道QQ的通讯协议,这个网上能够查询得到
' _7 C( s# F3 {! k/ s* F& }0 L1 O3 K第三步才是分析加密算法,这个基本上很难很难 ^^)
$ j! o( n! Q3 G" |9 B不过伪造UDP包进行QQ的广播欺骗轰炸相对要容易些。5 C) `0 n, ~0 F5 v6 m
0 U+ h P+ `3 K% b# _附:OICQ服务器系统通讯协议1 t) ^2 L7 z# u$ w
协议说明:
! k( F3 @/ W1 O. i3 w5 B1 ]6 H4 ?2 N8 K% c$ a6 M
: e1 Y- L+ Y* g T协议由报文头(T)+发送者(T)+接收者(T)+报文类型(T)+报文长度(L)+报文内容组成
4 o0 z/ ?% i% o- `. D$ ]
0 ?' \4 U7 @! F$ s* q, M, ^发送者和接收者是系统内的程序种类,OICQ服务器01,传真服务器02,WEB服务器03,打印服务器是04,聊天服务器是05,OICQ用户是0A。 ) V2 l+ t3 |- C% s4 z( f6 z
( C$ \+ T7 H( X5 cOICQ用户到OICQ服务器的通讯协议 引导符 (81+0A+01)
3 k9 G5 H7 ^6 @ Z
# E: I$ g9 |9 [! i6 ~报文类型 报文内容 报文说明
+ q% l# a( b# q1 M5 X0 P' u: T# M* ^6 Z8 J: x: A
01 昵称(S)+肖像(M)+用户密码(S)+性别(T)+年龄(T)+真实姓名(S)+国家/地区(T)+省(T)+市(S)+地址(S)+邮编(S)+学历(T)+毕业院校(S)+职业(T)+电话(S)+寻呼(S)+电邮(S)+爱好(S)+说明(S)+身份验证(T)新用户注册,身份验证用于当有人要将他加入好友时询问是否允许! ^/ l) w1 r! C j
' {: l3 f% w8 h3 z& t. t! Z02 服务号(L)+密码(S)+注册方式(T)老用户注册,方式分为0正常,1隐身
) B0 K# x7 n6 U' C3 s/ i. [$ V9 J* R/ T4 E2 X
03 服务号(L)+对方服务号(L)+内容(S) 发送信息到某人$ N% @; a7 S: \& N/ E& B2 M
2 A9 i" Y6 Y1 s- M S7 o* j$ r) |$ `04 服务号(L)+组号(L)+内容(S) 广播信息,组号=0为全体8 [. H! w; a. g/ X
, w. l" l8 j3 \( \, y$ s
05 服务号(L)+朋友服务号(L) 查看朋友资料+ }9 K, R' s! M' C- C
2 @: T; q, c' c6 e& g7 d7 k }4 w
06 服务号(L)+组名称(S) 增加组
+ \: l7 A, U0 k. S9 K* C3 P' x& T1 O* ]
07 服务号(L)+组编号(T)+组名称(S) 修改组名称" [' O. J* g, c2 S; r* ]+ r
% r+ c) w$ m3 P08 服务号(L)+组编号(T) 删除组
7 ]0 `9 {# S$ R, x% A7 U, Z
* Y$ O# J4 ~7 [1 m+ L/ F09 服务号(L)+移动人数(T)+{朋友服务号(L)+目的组号(T)} 移动组成员% x5 ?4 X7 Z& i2 ~: }- O
& C5 n/ g, ^ y! H4 L
0a 服务号(L)+起始编号(L)+回传个数(T)+查找标志(T) 看谁在线上) O# x$ s$ |2 C% Q: ^
$ D# N, @( e7 |/ `查找标志 1=向小找 2=向大找& u K. O& e7 G3 p }. Y9 e' J
+ F: F& @" z9 m$ f; p: f0b 服务号(L)+SQL语句(S) 自定义查找. M0 V3 v; z7 I8 F: o! h
' n4 X5 M( Y# n+ }7 n" [$ O0c 服务号(L)+朋友服务号(L) 增加好友
3 L$ l p2 F( ~+ j
, g: P9 k3 e- [! Q0d 服务号(L)+朋友服务号(L)+加入原因(S) 请求加入好友
8 N# K% E& E6 [- Z# }% W3 R: ^6 j; J! i4 p8 Z2 v
0e 服务号(L)+朋友服务号(L) 删除好友
9 v: S/ y: m5 U, w M
v8 e2 y9 [! D" i( X: m. C10 服务号(L)+显示模式(T) 更改显示方式 1上线2隐藏3免打扰4离线4 b$ k- \, `3 c9 C2 {
* E1 Z) c% Z+ n! r11 服务号(L)+监视服务号(L) 监视某人谈话
2 L2 h* ^; Z9 t- S" |- | R) m( g8 w9 Y7 b
12 服务号(L)+昵称(S)+肖像(M)+用户密码(S)+性别(T)+年龄(T)+真实姓名(S)+国家/地区(T)+省(T)+市(S)+地址(S)+邮编(S)+学历(T)+毕业院校(S)+职业(T)+电话(S)+寻呼(S)+电邮(S)+爱好(S)+说明(S)+身份验证(T)更改用户基本信息9 \4 q ?7 U, `+ i4 [% T
* c( G+ Q$ ]5 L6 I3 u
13 服务号(L)+朋友服务号(L)+文件名(S)+文件长度(L) 请求发送文件
. t' Q& f# k- B9 _9 o4 K- l( j1 v$ j2 B3 ^" ?+ _0 z
14 服务号(L)+朋友服务号(L)+允许/拒绝 是否允许发送文件) X4 t5 h1 P7 y6 Y& G
* H( R/ H7 f. v9 s) S/ B0 ]" G15 服务号(L)+朋友服务号(L)+文件内容(B) 发送文件' l( n u8 v" Q( W# Y
4 e: G& l+ p! Y6 X4 Q/ _16 服务号(L) 连接测试报文
0 h' Q* Q( x- n" W+ {2 m( U
' V/ d2 a0 J& k, ~ c+ V# a9 I3 K17 服务号(L)+朋友服务号(L)+同意标志(T) 应答对方请求加入好友 }% i' F0 d# A+ _+ U% \
6 Z ~0 D M! J( A. _0=拒绝
9 u& ~& H& R, V; x8 t$ _
4 e! ^6 F$ y$ G2 ]8 g' u5 R6 P- t. @1=同意6 e) y! H8 \0 s8 E3 R: D. u
1 R1 R" ~+ Y- p4 J0 X4 } 6 {5 }! N2 k4 V7 a% Q5 f
, [8 i2 ~3 A* u* s
OICQ服务器到OICQ的通讯协议
2 S. A9 T/ P) [ A& c* X7 Z
) Y2 t% w2 o% w8 K: B报文类型 报文内容 报文说明+ c* \3 O' b" [7 u
$ W1 Q& `) [7 h0 U9 g+ A7 q
01 成功/失败(T)+服务号(L) 新用户注册结果返回
/ G) E* d" U2 Y/ t* R$ ^1 P R* E# V+ |+ o8 ]- w
02 成功/失败(T)+组个数(T)+{组名称(S)+组编号(T)+朋友个数(T)+{朋友服务号(L)+肖像编号(T)+朋友状态(T)+朋友昵称(S)] 老用户注册结果返回
6 b& R) G% ]1 ?7 I% A" l# q$ s" b
% f$ x5 W5 q; ~ [朋友状态
' W1 c# V+ R& w* ^+ k# s* D: w% F, f+ s+ L: d
1=上线=2隐藏=3免打扰4离线
0 Q! ]' E' h! E
7 T1 q( z+ B+ v' h! n03 标志(T) + 朋友服务号(L)+信息(S)+信息类型(T) 标志 1=系统 2=用户 z! W1 [' x" h$ W. _& ]$ O+ E
* l, v0 G/ a/ |发送消息,服务号=0是系统消息$ \4 J- j" e6 Z9 R0 Z' l6 K6 H* R
+ u$ J8 }" c9 D1 [2 g/ p6 I. n8 H1=用户某某已经把你加为好友% m/ U/ Z: A) [) S0 v9 ~2 ]
% D: x7 u7 F. d. P" t/ `2=用户某某请求你通过身份验证
% u$ T; x. h; [' K% O+ a$ P* o3 {! l( [
3=用户某某同意了你的验证要求7 o" r4 f& i6 T; P: w: C
7 O4 [5 D8 W/ O* \, L9 `6 P4=用户某某拒绝了你的验证请求
& n' j" e$ a, s# C/ o. i
* Y5 p6 }; I! g: L' }% C* U04 成功/失败(T)+朋友服务号(L)+昵称(S)+肖像(M)+性别(T)+年龄(T)+真实姓名(S)+国家/地区(T)+省(T)+市(S)+地址(S)+邮编(S)+学历(T)+毕业院校(S)+职业(T)+电话(S)+寻呼(S)+电邮(S)+爱好(S)+说明(S)朋友信息回送
2 }! Y4 A! L" y6 D" U- u& A4 v! [9 V. V+ r1 I9 C* m( f) b
05 成功/失败(T)+组编号(T)+组名称(S) 增加组结果回送 1/0
7 I; r% J* o; Z5 {. p# [ S1 N; C: G+ c0 X# ?6 F& ^& ^! @
06 成功/失败(T)+组编号(T)+组名称(S)修改组名称结果回送1/0% f' n' I) K3 ~8 h$ y
8 j$ z+ q6 {! l
07 成功/失败(T)+组编号(T) 删除组结果回送1/0$ ^6 t& ]! M/ V* R/ l% [: Y
1 p4 s' {6 w. F! I2 Y08 成功/失败(T) 移动组成员结果回送1/0/ J1 ?( {; {# j5 E( t& m; G- v8 ?; L
, E0 E ?7 z9 M& C
09 成功/失败(T)+在线个数(T)+{服务号(L)+昵称(S)+肖像(M)+省(T)+市(S)} 查找在线人员结果回送
( o7 b, d' z. M/ H6 w o; w" R9 ]" h& d! m
0a 成功/失败(T)+找到个数(T)+{服务号(L)+昵称(S)+肖像(M)+省(T)+市(S)} 自定义查找结果回送(最多50)
5 h" y% D6 g' }$ u$ E
z& |/ C/ {; _( w0b 标志(T)+朋友服务号(L) 增加好友结果回送标志
% J# T/ j& M' i9 ?! m3 Q
5 K+ X3 T* s2 p9 y' `, [0 \. m: w3 G0=数据库失败
/ H) I! ~0 W; [) v, |
- ?0 J6 V( B1 r% ~& m=1成功( m2 W4 z: e$ [+ D4 \0 ~
8 c* H5 n8 b3 R1 |# F1 ]5 `=2需要身份验证
1 q" p( b2 @6 C8 ^$ w# N9 l
. k5 z2 Z& ^+ @=3对方不允许加入
+ g7 t% n# C" S- j$ r
" y$ ~8 I: a" Q1 o=4需要身份验证且不在线' F; g1 V" g. N) x; j
; u( K- }; z+ P# y3 o0c 朋友服务号(L)+昵称(S)+肖像号(M)+朋友状态(T) 给在线用户增加好友/ N" l% q8 C! V2 Z+ H. F* H6 U
9 Q4 ]! \) } ]( P4 |5 y u0e 成功/失败(T)+朋友服务号(L) 删除好友结果回送( q# {/ r2 \ {* `: J$ }
X! q5 @# g7 z8 g% J
10 服务号(L)+显示模式(T) 显示模式回送 =1上线=2隐藏=3免打扰4离线: b5 I- P. o- C% _3 \+ m
' p1 }& A1 G* f9 ^+ t" @11 成功/失败 更改用户基本信息结果回送9 i; p7 ~+ d) M( r7 ~
8 e/ \( \% n5 @; ]8 v12 朋友服务号(L)+文件名(S)+文件长度(L) 请求发送文件8 {& L. r! G3 |1 j6 [4 d
5 c4 x- Z3 p! c3 `0 d& C% M, {
13 朋友服务号(L)+允许/拒绝 是否允许发送文件 1允许 0拒绝
: O+ u/ ~ U+ e- S
0 y3 o' Q) \8 M14 朋友服务号(L)+文件内容(B) 发送文件
* K! `' v: ]. G
; h8 b' S6 g$ |5 ?" D15 朋友服务号(L)+当前状态(T)朋友状态回送(系统发送)=1上线=2隐藏=3免打扰4离线: G" F. u$ T) M, I& w
( F2 f4 Z; {+ u' l# A# e
16 服务号(L) 连接测试 |
|