- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
QQ協议分析
QQ协议分析
概述
QQ是目前流行的及时聊天工具,QQ协议非常庞大,版本升级比较频繁,而且与多数软件不同的是,它的客户端升级往往伴随着协议响应的改变。本文是基于QQ2008版的QQ协议分析。QQ消息是加密的,QQ的加密解密用的是TEA算法包头之后的固定格式说明发送方QQ版本,或者是服务器版本,2字节
随机密钥,1字节,如果这个字节是0x23,那么密钥就是0这个密钥用来加密发送者和接受者的QQ号。加密算法: QQ号取反再与密钥异或
发送者QQ号的加密形式,4字节
接受者QQ号的加密形式,4字节 0x00系列的包,用在文件传输过程中,传递控制信息。也会出现在点对点通信中。源标志, 2字节,表示了这个包从何处来,主要用来标识客户端版本,如果其标识的是服务器,这个字段的具体用处还不清楚
包命令, 2字节
包序号, 2字节, 原则是保证短期内这个序号不要重复就可以,一般我们处理的时候都是递增,到最大再归0 0x02系列包主要完成一些基本任务,基本上处理了这个系列的包,QQ的功能就差不多了。格式同第一行0x03系列的包,用在文件传输过程中,传递数据信息客户端版本号,2字节
整个的包长,2字节
序号,2字节
我的QQ号,4字节
未知的8字节 0x04系列的包,用在文件传输过程中,如果使用服务器中转模式传送文件,则用到这些包00 1b 0c ce 5b c9 00 1d 72 9a 8e 1d 08 00 45 00
00 67 0f 87 00 00 80 11 ed da c0 a8 22 34 3a 3d
20 0b 0f a0 1f 40 00 53 9d b6 02 01 00 00 00 38
05 3d e2 54 00 00 6a 23 01 00 12 37 80 21 ae 29
fe 9f 91 b0 23 48 8d 12 39 8e 5f e9 76 14 80 69
04 1c f1 69 70 6b cf 04 71 66 92 e6 ea 24 41 63
02 54 3a aa e8 17 5e 6b 27 a3 99 2a 18 29 e5 fb
51 64 93 d7 03
例2:
00 1b 0c ce 5b c9 00 1d 72 9a 8e 1d 08 00 45 00
00 59 0f c1 00 00 80 11 c1 9a c0 a8 22 34 77 93
0e c9 17 71 1f 40 00 45 5f 7a 03 50 32 b0 00 00
00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 01 00 00 12 37 00 00 00 00 00 00 00 00 00
00 05 00 05 3d e2 54
在用Ethereal抓包过程中发现有些8000端口的UDP数据包,有0x02包头但没有0x03包尾,但它确实属于QQ数据,不知道是什么原因。
根据观察,QQ除了使用UDP通讯,还与TCPF服务器通讯,而且与TCPF服务器的通讯量远远大于UDP通讯量。文本聊天就是这一类型,下面就简要介绍TCPF协议。
TCPF(Text Chatting Protocol Family)文本聊天协议族,它主要支持与其它QQ端进行文字聊天,TCPF是建立在UDP协议上的协议族。
TCPF格式为:包头+数据+包尾。
包头:所有的TCPF包的前七个字节是包头,包头可是识别包的内容,包头格式为:
第0个字节:TCPF包标示:0x02。
第1-2个字节:发送者标识,如果是0x01 0x00,表明是由服务器发送客户端的标识与所使用QQ版本有关所有的TCPF包都以0x03作为包尾。在包头和包尾中间的数据登录请求包(LIP,LogIn Packet),它是由客户端向服务器发出登录请求的数据包。
登录应答包(LRP,Login Reply Packet),它是由服务器响应客户端登录请求的数据包。
注销请求包(LOP,LogOut Packet),它是由客户端向服务器发出注销登录请求的数据包,服务器对这个包不作应答。
客户端其它包(CSP,Client Sent Packet),它是由客户端向服务器发送的其它包。
服务器其它包(SSP,Server Sent Packet),它是由服务器向客户端发送的其它包。
具体TCFP包结构请参阅QQ协议分析之TCPF包结构00 3e 02 12 37 00 91 26
您可能关注的文档
- PubMed使用手冊.doc
- PS基礎知识矢量工具以及图层效果.doc
- PubMed完全手冊.doc
- PT4206維修手册.doc
- Project教學手册.doc
- PTN開站数据制作手册.doc
- PurpleParis冷飲项目可行性分析报告.doc
- Puppet安裝以及集成Dashboard手册.docx
- PV01通訊协议定义.doc
- PUP用戶手册正文.doc
- 2024-2025学年安徽省亳州市涡阳县高二下学期2月开学考试政治试题(解析版).docx
- 2024-2025学年江西省赣州市上犹县高二下学期开学考试政治试题(解析版).docx
- 2024-2025学年山东省济宁市高二下学期开学考试政治试题(解析版).docx
- 2024-2025学年山西省卓越联盟高三下学期2月开学质量检测政治试题(解析版).docx
- 2024-2025学年新疆乌鲁木齐市高二下学期2月开学考试政治试题(解析版).docx
- 2024-2025学年新疆维吾尔自治区乌鲁木齐地区高三2月大联考文科综合政治试题(解析版).docx
- 2024-2025学年安徽省蚌埠市固镇县高一上学期1月期末考试政治试题 (解析版).docx
- 2024-2025学年江苏省扬州市高三上学期期末检测政治试卷(解析版).docx
- 2024-2025学年江西省吉安市高三上学期期末教学质量检测政治试题(解析版).docx
- 2024-2025学年山东省济宁市高二上学期1月期末考试政治试题(解析版).docx
文档评论(0)