- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
QQ2006协议(文字聊天部分)剖析
05A03班 陈伟
概述
随着互联网的发展,即时通信也突飞猛进,例如,QQ、MSN、Windows Messenger等已经被广泛使用.在中国,QQ已经成为最流行的即时通信软件,用户数量多年来一直占据中国即时通信市场的半壁江山.对于QQ协议,腾讯公司一直对外不公开的.本文试着对qq2006协议进行部分分析.在此本人特别声明,本文仅供学习参考,若用作其他违法行为,一切法律后果本人概不负责.
根据qq客户端的运行过程, 我们暂时将QQ2006工作流程依次分为4个部分:登录篇、初始篇、会话篇与退出篇。登陆篇中讲述的是用户的登录过程,初始篇讲述的是客户端进行信息资料的同步,会话篇讲述的是进行即时通信的过程, 退出篇是用户退出登录的动作.在下文中,我们就尝试着根据这4个部分对协议进行分析。
在进行具体的分析之前,我们先简单地介绍一下qq数据包的基本格式,涉及的加密算法以及剖析过程中用到的软件工具.
1、ICQ数据包格式
QQ的数据包可以通过tcp、udp、http等多种方式传送.
本文讨论的qq协议(也称为ICQ协议或OICQ协议)是建立在udp协议之上的,它是以请求-响应模式工作的. 请求包和响应包通过相同的序列号来进行匹配的
客户端接收包基本结构为:
头部(1字节)+QQ版本号(2字节)+指令(2字节)+包序号(2字节)+包体数据(字节数不确定)+尾部(1字节)。
客户端发送包基本结构为:
头部(1字节)+QQ版本号(2字节)+指令(2字节)+包序号(2字节)+用户QQ号码(4字节)+ 包体数据(字节数不确定)+尾部(1字节)。
在客户端的每一个发送包中都包含用户的QQ号,接收包则不然.
在ICQ数据包中,其包体数据部分全为加密后的密文(登陆包除外);
本文所研究的为QQ2006正式版,其头部为0x02,版本号为0x0f5f,尾部为0x03.以下是QQ2006正式版ICQ数据包样本.
发送样本:
0000 00 33 44 55 6c 8f 00 04 61 fe fe fe 08 00 45 00 .3DUl...a.....E.
0010 00 50 c4 63 00 00 80 11 ef 15 c0 a8 00 02 79 0e .P.c..........y.
0020 4d 6b 0f a0 1f 40 00 3c ae 24 02 0f 5f 00 ba 2d Mk...@..$.._..-
0030 1d 2d 4c 2c c2 d1 5b 5e 64 51 fa 60 01 d2 b2 cb .-L,..[^dQ.`....
0040 43 c2 04 ae 51 04 8a da 6b 25 e2 6c 89 c9 c0 70 C...Q...k%.l...p
0050 67 25 e4 86 08 27 c2 bf a1 0b c5 78 ac 03 g%........x..
在这个样本中,用黄色突出显示部分是ICQ数据包部分,其中
0x02是头部;
0x 0f 5f 是QQ2006正式版的版本;
0x 00 ba是指令,此指令表示登陆,
0x 2d 1d是包序号
0x 2d 4c 2c c2表示我的QQ号码759966914(十进制)
0x d1 5b 5e 64…….. 0b c5 78 ac 是包体数据部分;
0x 03 是尾部
接收样本:
0000 00 04 61 fe fe fe 00 33 44 55 6c 8f 08 00 45 00 ..a....3DUl...E.
0010 00 54 00 00 40 00 36 11 bd 75 79 0e 4d 6b c0 a8 .T..@.6..uy.Mk..
0020 00 02 1f 40 0f a0 00 40 b6 c3 02 0f 5f 00 ba 2d ...@...@...._..-
0030 1d 7d a1 16 51 e5 3f 55 5a ec ac fe b5 58 76 68 .}..Q.?UZ....Xvh
0040 cf 88 89 84 72 fd e1 b9 93 95 84 88 d4 ac ab 98 ....r...........
0050 95 00 88 6b e1 6a 25 c5 25 b9 07 45 5c 85 a6 a3 ...k.j%.%..E\...
0060 59 03 Y.
原创力文档


文档评论(0)