pcMing工作室#Kd1AI)SP8|2g5Z*V说明:
C&t%m }rp0pcMing工作室Ja;c'M4k本文档说明的是解密以后的TCPF数据包的字段内容。有关如何解密,请参阅有关的其它文档。分析的结果,是基于QQ 2003 (0808) 内部代码 0A 1D的版本。
BV,HI X
f;jv0pcMing工作室h!H#AFA!i\0x0022,登录命令
0Y^5D%IId0~2K"]#I
P9Whrv0发送方:客户端
4P:xRl4U3Lp7gTA04p,?cs/D#a*]Yv0样本:pcMing工作室TLJ
g2_eD6M
j `j[:qA0000: 4A 35 5D 6E AE DB FA 9C
ay_rk\Kf0008: 96 BE 19 7E A3 E2 B2 48
5? hW8K'jtK K0016: 00 00 00 00 00 00 00 00
DV/m@,MO0024: 00 00 00 00 00 00 00 00pcMing工作室(w4K&PL?}$S\
032: 00 00 00 3A 30 9B 69 60pcMing工作室GCHzcHG7WuN
q
040: A8 32 73 B2 22 1F AA 65pcMing工作室W1BpqP!L6cY
048: 6C 09 F8 01 0A 3A 0D 30
8x&w,uK
g#h#M+c0056: 92 CD 77 AB 42 B9 BC 64
Ug'KFR^3x,U0064: 9F 17 57 D4 C3pcMing工作室a#Q]:xT3~
T4wgB/nNX}$A0000 - 015: 用户QQ密码的 MD5 的 MD5 作为密钥,对空字串进行加密的结果。0A 1D版的TEA算法采取了随机PADDING的方式,所以这个数字每次看起来都不同。但是解密以后总是空字符串。
Qp)ux-B#Up6j0s
SB0/[}x?D0016 - 016: 总是 0x00。
;u1p(q|I3zz+J0s:J01{!F\C!r+B.}9T d0017 - 020: 以前为IP地址,现在为全零。不知道具有互联网IP的机器是否有真正的地址。
+D;A?z3|/N0Oru/j%y1g_0021 - 022: 以前为端口号,现在为全零。
#H8jpxy6AbE07[N{"vU[2f"v"^0023 - 051: 不明含义,总是相同。pcMing工作室i)r@z5~.M`6pe
5y!LIj$dJu0052 - 052: 登录模式。0A为正常方式,28为隐身。
]+N
HRb0pcMing工作室D:w+k
y(L%ev?053 - 068: 应该是和机器相关的识别号,在相同的机器上总是相同。
KB%{'?sO`/wX0n%X`%^&G.[nk!qm0响应方:服务器
k*j2p-XQO#b0pcMing工作室u M&I]]Z#r,dT成功登录的样本:pcMing工作室n$b$U
\w[(wA?
3CC,|;sX-a0000: 00 61 42 58 45 55 6B 58
C(h
C@'~5nT$V0008: 7A 42 57 36 78 6E 49 41pcMing工作室N9M4zg"E
016: 59 01 82 5D 90 40 E7 A7
)m%M F;M4t(m]1X1WcW0024: E3 0F A0 7F 00 00 01 1F
^/T&[T8b7V:I@ [0032: 40 3F 51 22 DA 03 0A 5BpcMing工作室&T*u!L|pF/rjP
040: 83 50 D2 91 55 AE FC 3A
NDd]K9u0048: 5B D4 E9 31 97 C5 85 13pcMing工作室1I_m^*G'hn
056: 64 6B 30 0A CE F1 33 3DpcMing工作室1B5mXw3\;zp E1H5o
064: 8D C2 CF 1F 40 3D AC F9pcMing工作室2az\(R}G;d
072: 8E 1F 40 00 00 1C BB 67pcMing工作室 SJcb%?
@D)m j9o
080: 00 CB 49 E6 FF B6 FB 01pcMing工作室9_$X{d.V;qS7e[U&_
088: 97 41 6E 96 30 48 76 48pcMing工作室8Nc+G(KI
Vm
096: EF B8 1D 1E 5A EA EB E9pcMing工作室f6r g|@?'^z^
104: AB 00 4A 23 D2 00 00 00pcMing工作室5Wl:?(G-mS%u U.F`U'u
112: 00 00 00 00 00 00 00 00
V-d7uH@.bP0120: 00 40 E7 A7 E3 3F 51 22
k.y:W
YS+C~.?7FN5~0128: 91 00 00 00 00 00 00 00pcMing工作室-`V)Q1u~ pK
136: 00
Fr(fy3S&mk-@A0Di&B.n
\9nn.h0000 - 000: 成功登录应该为0。pcMing工作室'd5]W&K'W/M#p
Of
pcMing工作室+G0v)Lso%yJF@001 - 016: 以后通信的密钥。pcMing工作室BkMD _
pcMing工作室*@f^X8tj4~017 - 020: 登录的QQ号码。pcMing工作室-H!FPe[a^
pcMing工作室-p] k7K(_021 - 026: 服务器检测到的客户端的IP地址和端口号。
%@d[.vB:C
]0pcMing工作室4w9d3?6MW&m027 - 032: 127.0.0.1:8000,应该是服务器检测到自己的IP和端口号?作用不明。pcMing工作室"_o6acu
xj5@k
pcMing工作室;Y]R%xW4z'm"J{.N"S033 - 036: 本次登录时间?pcMing工作室ft5FR,x6Zk
pcMing工作室2zh {#H6Ao
T5X+tV7N......
m4O'|`8]K0\ig]K3d-o/aJ*X0063 - 068: 一个端口为8000的IP地址,作用不明。
F5}6P:R)pf0pcMing工作室`nj"\:\]:OP069 - 074: 一个端口为8000的IP地址,这个地址就是DTPF协议组通讯的服务器。pcMing工作室B5JLo.k4Q;cv%I%k^
7O:nE` W9K~O0075 - 076: 总是0,应该为分隔。
/b g%x2f4V%xW p3K0N1qBZ,R
K2`0u:A
p0......
} @fo*]/[xI0pcMing工作室`{!R
y&~eI3H109 - 120: 总是0。pcMing工作室7oZp$\ W;^&\0Bo4X
pcMing工作室@{-a/`\%YEG%hS121 - 124: 客户端的IP。(上次登录的IP?)pcMing工作室ICJ-d3LyH[3H
*`:}!P-V6zC1MM0125 - 128: 上次登录退出时间?
1^K
Z$bM5C3p0*R`4e3[3{!t,E9D0Z^1E$X0...pcMing工作室6u+f#y6bo(R
@
gjn,V0ao%q,g0129 - 136: 总是0。pcMing工作室N-w%j(\.NNX*Q
$P.ajJ`0其它:未知。pcMing工作室dB6U[Z)wN~
E@IrR!Z"y ]0pcMing工作室e-snRk.S(R&PI3R
密码错误的样本(用Random Key解密):pcMing工作室:t$C:s}T/u2I*{g)WN
D{5JoOc)zO`dF0000: 02 C3 DC C2 EB B4 ED CE
am U(QJ,MAUq0008: F3 A3 A1
p}w(Z?.n@0pcMing工作室N8l*t1vj&n"y000 - 000: 密码错误: 02。
#r0r:?f;GL0001 - 010: 字符串“密码错误!”,GB18030 编码
|,`Pf%`.L0R ?t Z%Z.U-V0
SW6FC&S&C(`Z"d8ZU0要求转到其它服务器登录(未观察到,根据perl-OICQ的资料):
e9^v x"X3a+W0pcMing工作室.m(^*X\i+f000 - 000: 转到新服务器:01。pcMing工作室.S3E*edVA
pcMing工作室 T C+o+WL#|001 - 004: 请求的QQ号。
Q3}M(Y_0pcMing工作室 J W9m\\ J.o
gk6F6p005 - 008: 新的服务器IP。
"O)?U)u,o
R7J0pcMing工作室n
T1~ f/d(],X009 - 010: 新的服务器端口号。
`p^n3JC Kdu0pcMing工作室:U/_5x,Odj0k'FW/j
}AS;I6ss5F,|C00x0001,注销命令:
(kH
u"a gj'c0x
@mj%Kq
FP0发送方:客户端(连续发送4次)pcMing工作室EUfMydnl2F I
b
W8g\9[u0qe0样本:
"GS(Rl1Cu;yR9B*i0&v u0Y;nNR4a0000: 42 80 D8 9A 5A 03 F8 12pcMing工作室I,w(L1NFnH
008: 75 1F 50 4C C1 0E E8 A5pcMing工作室.Da.q
] `2@fm
Y"ry$H'G4|)dDj)J0000 - 015: QQ密码的 MD5 的 MD5。pcMing工作室g)u2wO4_ hbX
_
pcMing工作室Vh nG(M-?:^
.bSC_,NF8v1}w00x001D,未知命令:pcMing工作室\9vHM3^r
pcMing工作室eD!Pq)m发送方:客户端,在登录成功后发送。而且总是连发两个。pcMing工作室:Z9QM1wiT+}2YJTT:Z
!h"v)a"F j0第一个样本:pcMing工作室^)i8|1Qsj
7w*[1]~!k _%A0000: 03
U2E*E!B|(Vm9M;T0N-j;Y1I%K'ey[M0000 - 000 :总是03,应该是子命令。pcMing工作室A&w})O2{6`N,g2k
pcMing工作室4f:q/W~KHZ,c第二个样本:
;v;|8GMm wM0cY1m1U3xa:M
e q
x3Y0000: 04pcMing工作室\a"p1N/p e$U
q7sgp)t4u0000 - 000 :总是04,应该是子命令。
-u*W`$p&F*x02[JA*P8?K0响应方:服务器(定长的响应)pcMing工作室:NIsb~
pcMing工作室J-h.J+{j}J第一个响应样本:pcMing工作室0TD|){1d*E
T*XU#R
pcMing工作室5XGC[5b'L"|0F000: 03 00 52 65 76 65 6D 6DpcMing工作室-pzY K9Gi"]0o
008: 41 35 65 52 54 64 4E 36pcMing工作室(t
Ar^X@V
016: 64 4B 00 00 00 00 00 00
pof
c I#m%b0024: 00 00 00 00 00 00 38 3D
J6Lw&f-Y-z{m0032: 1E 4A 4E 36 53 87 8E B5
Umm5\q U[*z0040: E0 24 5C 97 80 8C 64 23
j l\K uE5Vz0048: F4 FF BC 42 69 72 39 1D
-C#eb
M
l}6v(mG0056: F6 31 22 65 37 BE 00 D1
t
]6cc
^X-h(~iw l0064: 8E A6 F8 4C 75 82 F7 B4
uA&`!A |"@I7z0072: 49 1F FF 72 3E 26 01 13
Y$OP]Q
u"k _#On,r%I0080: 1B 18 F6 5A BD 8E 58 00
h#A|E@:j$V0088: 01 00 00pcMing工作室'g;k.b!Ao d"~3s
$blt(p;aT0000 - 000: 03,应该表明是对03号子命令的响应。
2U-j _9^*X~$RG0Ma]W$ZV+wNu:JoE0001 - 001: 00,应该是分隔。
o \-s&}#EH|!q#s&?0R6_%^/|/nB t;X0002 - 017: 16个字符,全由字母和数字组成。pcMing工作室s"| h&T#Jl(d
7D.|KTJr0018 - 029: 全0。pcMing工作室!|YW4pv;aD,{\
_5F\
pcMing工作室)e3B*]2yl030 - 030: 总是38,应该是后面数据的长度。
A0?7e.z#@4ZzF&[3R;M#x0pcMing工作室}6W
~5C_...pcMing工作室8BO2Y6r2Ly
pcMing工作室;t&_