下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、OICQ服务器系统通讯协议说明OICQ 服务器系统通讯协议说明:协议由报文头 (T)+发送者 (T)+接收者 (T)+报文类型( T) +报文长度 (L)+报文内容组成发送者和接收者是系统内的程序种类 ,OICQ 服务器 0x01,传真服务器 0x02,WEB 服务器 0x03, 打印服务器是 0x04,聊天服务器是 0x05,OICQ 用户是 0x0A。OICQ 用户到 OICQ服务器的通讯协议引导符(0x81+0x0A+0x01)报文类型报文内容报文说明0x01昵称( S) +肖像( M) +用户密码( S) +性别( T) +年龄( T)+真实姓名( S) +国家 /地区( T) +省(
2、 T)+市( S) +地址( S) +邮编( S) +学历( T) +毕业院校( S) +职业( T) +电话( S) +寻呼( S) +电邮( S) +爱好( S) +说明( S) +身份验证( T)新用户注册,身份验证用于当有人要将他加入好友时询问是否允许0x02服务号( L) +密码( S) +注册方式( T)老用户注册,方式分为0正常,1隐身0x03服务号( L) +对方服务号( L)+内容( S)发送信息到某人0x04服务号( L) +组号( L) +内容( S)广播信息,组号 =0 为全体0x05服务号( L) +朋友服务号( L)查看朋友资料0x06服务号( L) +组名称( S
3、)增加组0x07服务号( L) +组编号( T) +组名称( S)修改组名称0x08服务号( L) +组编号( T)删除组0x09服务号( L) +移动人数( T) +朋友服务号( L)+目的组号( T)移动组成员0x0a 服务号( L)+起始编号 (L)+回传个数( T)+查找标志 (T)看谁在线上查找标志 1=向小找 2=向大找0x0b 服务号( L) +SQL语句( S)自定义查找0x0c 服务号( L)+朋友服务号( L)增加好友0x0d 服务号( L) +朋友服务号( L) +加入原因( S)请求加入好友0x0e 服务号( L) +朋友服务号( L)删除好友0x10服务号( L) +
4、显示模式( T)更改显示方式1上线 2隐藏 3免打扰 4离线0x11服务号( L) +监视服务号( L)监视某人谈话0x12服务号( L) +昵称( S) +肖像( M) +用户密码( S) +性别( T)+年龄( T) +真实姓名( S) +国家 / 地区( T) +省( T) +市( S) +地址( S) +邮编( S) +学历( T) +毕业院校( S)+职业( T) +电话( S)+寻呼( S) +电邮( S) +爱好( S) +说明( S) +身份验证( T)更改用户基本信息0x13 服务号 (L)+朋友服务号( L) +文件名 (S)+文件长度 (L)请求发送文件0x14 服务号(
5、 L) +朋友服务号( L)+允许 / 拒绝是否允许发送文件0x15 服务号( L) +朋友服务号( L)+文件内容( B)发送文件0x16 服务号( L)连接测试报文0x17 服务号( L) +朋友服务号( L)+同意标志 (T)应答对方请求加入好友0=拒绝1=同意OICQ 服务器到OICQ 的通讯协议报文类型报文内容报文说明0x01 成功 / 失败( T) +服务号( L)新用户注册结果返回0x02 成功 / 失败( T) +组个数( T) +组名称( S)+组编号( T) +朋友个数( T) +朋友服务号( L) +肖像编号( T) +朋友状态 (T)+朋友昵称( S) 老用户注册结果返
6、回朋友状态1=上线 =2 隐藏 =3 免打扰 4 离线0x03 标志 (T)+朋友服务号( L) +信息( S) +信息类型( T)标志 1=系统 2=用户发送消息,服务号 =0 是系统消息1=用户某某已经把你加为好友2=用户某某请求你通过身份验证3=用户某某同意了你的验证要求4=用户某某拒绝了你的验证请求0x04成功 / 失败( T) +朋友服务号 (L)+昵称( S) +肖像( M ) +性别( T) +年龄( T) +真实姓名( S)+国家 / 地区( T)+省( T)+市( S)+地址( S)+邮编( S)+学历( T)+毕业院校( S)+职业( T) +电话( S) +寻呼( S)+
7、电邮( S)+爱好( S) +说明( S)朋友信息回送0x05成功 / 失败( T) +组编号( T) +组名称( S)增加组结果回送 1/00x06成功 / 失败( T) +组编号( T) +组名称( S)修改组名称结果回送 1/00x07成功 / 失败( T) +组编号( T)删除组结果回送 1/00x08成功 / 失败( T)移动组成员结果回送 1/00x09成功 / 失败( T) +在线个数( T)+服务号( L)+昵称( S)+肖像( M)+省( T)+市( S)查找在线人员结果回送0x0a 成功 / 失败( T)+找到个数( T)+服务号( L)+昵称( S)+肖像( M)+省(
8、T)+市( S)自定义查找结果回送(最多50)0x0b 标志( T)+朋友服务号( L)增加好友结果回送标志0=数据库失败=1 成功=2 需要身份验证=3 对方不允许加入=4 需要身份验证且不在线0x0c 朋友服务号 (L)+昵称( S) +肖像号( M) +朋友状态 (T)给在线用户增加好友0x0e 成功 / 失败( T)+朋友服务号( L)删除好友结果回送0x10服务号( L) +显示模式( T)显示模式回送 =1 上线 =2 隐藏 =3 免打扰 4 离线0x11成功 / 失败更改用户基本信息结果回送0x12朋友服务号( L) +文件名( S) +文件长度( L)请求发送文件0x13朋友服
9、务号( L) +允许 / 拒绝是否允许发送文件 1 允许 0 拒绝0x14朋友服务号( L) +文件内容( B)发送文件0x15 朋友服务号( L) +当前状态( T)朋友状态回送(系统发送)=1 上线 =2 隐藏 =3 免打扰4 离线0x16服务号( L)连接测试本篇文章来源于中 国 协 议 分 析 网 |原文链接:OICQ数据抓包示例详解TCP/IP协议是整个互联网上数据传输的核心,OICQ 也是基于 TCP/IP协议的 UDP 协议来实现的。下面来看看OICQ 是怎么样工作的呢?下面我将通过捕捉OICQ2000 数据包来进行分析OICQ2000 的工作原理: (在 WIN2000 的安装
10、包里有一个网络监视器,可以用来监视网络上的各个数据包。 )打开 WIN2000 的网络监视器,然后开始监视网络数据包,然后打开OICQ,登陆后停止捕获数据包。然后就可以进行分析了。下面这个数据包就是利用网络监视器捕捉到的我的OICQ 登陆的发送时的第一个数据包:00000000 00 80 C8 EB 06 3B 00 80 C8 EB 25 18 08 00 45 00 .;.%.E.00000010 00 78 48 8A 00 00 80 11 BC 3A C0 A8 00 02 CA 60 .xH.:.00000020 AA A5 0F A0 1F 40 00 64 AA 4E 02
11、04 05 00 15 F7 .d.N.00000030 2F 00 BD 77 9D F3 BE 2E 18 9A 86 DA 47 B4 83 41 /.w.G.A00000040 3A A1 A5 60 89 AD 78 61 D7 EE 6A ED 5C 05 25 EA :.xa.j.%.00000050 17 95 B0 5C 3B 69 F1 1C 0F 5D C1 4C 91 FD C3 A8 .;i.L.00000060 1D 33 9C 86 2A 0F 12 11 EA A8 29 E4 AC 64 D4 D6 .3.*.).d.00000070 A4 96 4D 86
12、AD C2 19 F1 ED E9 FB 7B 74 99 B7 7A .M.t.z00000080 C3 FB C2 B5 7D 03 .下面我将解析这个数据包。此个数据包可以分三段来解析:网卡地址段,IP 协议段和 UDP协议段。1、网卡地址段00000000 00 80 C8 EB 06 3B 00 80 C8 EB 25 18 08 00如上可所视 00 80 到第一行的确良08 00 为网卡地址段。开始的六个字节00 80 C8 EB 06 3B为对方服务器网络适配器在内存中的地址,00 80 C8 EB 25 18,这六个节嘛就代表我这台机子上的调解在内存中的地址。然后的 08 表
13、示该数据传输协议将用TCP/IP协议传输。 00表示下面将用 TCP/IP 协议中的 IP 协议传输。2、 IP 协议段00000000 45 00.;.%.E.00000010 00 78 48 8A 00 00 80 11 BC 3A C0 A8 00 02 CA 60 .xH.:.00000020 AA A5如上所示 45 00到 AA A5 之前的代码都代表了IP 段的内容。 45 代表此 IP 协议版本是 4.0版本,IP 关长度是20 字节。即从 45到 AA A5 的 20 个字节。 00是代表 IP 包的优先级。这里是平常的没有设等级。00 78 转换成十进制是120。 (倒过
14、来算, 0078=120( 十进制 )表示此数据包的所有数据有 120 个字节。 48 8A 代表 IP 协议的身份验证,00 00 是 IP 协议的摘要, 80传表 IP 数据包的生存时间。 11 这里很重要,表示此IP 数据段完成以后将由 UPD 协议来 代替,由此我们可以得知 OICQ 消息传播是通过 UDP协议来实现的。 BC 3A 是用来校检数据包的正确性的。 C0 A8 00 02 代表我的 IP 地址。用计算器可以转化成192.168.0.2 。 CA 60 AA A5代表目的 IP,即 202.96.170.165 。此 IP 数据段就完成了。余下的就是UDP 数据段了。3、
15、UDP 数据段000000200F A0 1F 40 00 64 AA 4E 02 04 05 00 15 F7.d.N.000000302F 00 BD 77 9D F3 BE 2E 18 9A 86 DA 47 B4 83 41 /.w.G.A000000403A A1 A5 60 89 AD 78 61 D7 EE 6A ED 5C 05 25 EA :.xa.j.%.0000005017 95 B0 5C 3B 69 F1 1C 0F 5D C1 4C 91 FD C3 A8 .;i.L.00000060 1D 33 9C 86 2A 0F 12 11 EA A8 29 E4 AC 6
16、4 D4 D6 .3.*.).d.00000070 A4 96 4D 86 AD C2 19 F1 ED E9 FB 7B 74 99 B7 7A .M.t.z00000080 C3 FB C2 B5 7D 03如上可看到此段即为激动人心的UDP 数据段了。 我们开始分析。0F A0 代表我是通过哪个端口进行发送消息的,这里可以换算成4000,即我用4000 的端口进行消息发送。1F 40代表腾讯的OICQ 主机是通过哪个端口接收消息,这里可以换算成十进制的8000。即腾讯的 OICQ服务器是通过8000 端口接收消息的。00 64 代表此 UDP 数据段的总的字节是100。AA 4E 是拿来
17、校检UDP 数据段的数据的。余下的数据就是此UDP 数据包传送的数据。而前面都是 一些控制协议。 下面我们将解析这些数据。 02 04 05 00 似乎是一些和版本有关的数。相同版本的数据相同的。 15 代表登录服务器, F7 2F 00 可能是和一些顺序号有关。 接下来的三个字节是从高到低放着你的 OICQ 号 。后面的 16 位字节是随机产生的 16 个字节的密钥,64 字节口令加密内容。最后 03 表示 UDP 数据结束。一般是固定的值。当 OICQ 的服务器收到此登录数据包以后通过验证,服务器将反馈给你一个数据包,这里你的 OICQ 就上线了。OICQ 上线以后,每隔一段时间服务器向你
18、发送一个数据包,上面有你好友的IP 和号码,用此来表示你好友在线的情。 你同时也反回一个数据包给服务器。里面当然也包括你的IP 了。表示你在线。 如果你没有反回一个数据包给服务器,那么就表示你不在线了,这时你在你的朋友的 OICQ 上就不在线了。OICQ消息传递原理00000000 00 80 C8 EB 06 3B 00 80 C8 EB 25 18 08 00 45 00 .;.%.E.00000010 00 60 1A D9 00 00 80 11 E6 54 C0 A8 00 02 3D A6 .T.=.00000020 3B 0F 0F A0 0F A0 00 4C 3D 31 00
19、 04 05 9D 62 DF ;.L=1.b.00000030 15 FF 62 37 81 9B 0B 1E 83 8F F7 DE 1A 67 E6 2B .b7.g.+00000040 35 28 E1 A9 ED B4 01 7C 92 B5 E4 2D E5 69 70 C5 5(.|.-.ip.00000050 2E E1 22 FC AF 1C 25 4D E9 7C E8 BA FD F0 8B 87.%M.|.00000060 17 95 08 88 95 DD A4 1B 8D DC 36 85 0C 8E.6.如上所示,也是基于上面的UDP 协议。所不同的只是UDP 传
20、输的数据不同。根据服务器发送来的给来的数据包知道你好友在线的IP,然后当你向好友传送消息的时候,就是根据好友的 IP 通过 UDP 协议向对方发送数据包,对方机子上的OICQ 收到的你的数据包的时候就反馈一个数据包给你表示已经收到你的消息,否则的话就一直发送。 等到对方反馈数据包为止。 当到一定时候对方一直没有反馈数据包给你的时候,就通过服务中转。 中转的原理是这样的, 将数据包给腾讯的服务器上,由服务器又将数据包发到对方的机子上,这就是通过服务器中转的工作的原理。00000020 00 04 05 9D 62 DF ;.L=1.b.00000030 15 FF 62 37 81 9B 0B 1E 83 8F F7 DE 1A 67 E6 2B .b7.g.+00000040 35 28 E1 A9 ED B4 01 7C 92 B5 E4 2D E5 69 70 C5 5(.|.-.ip.00000050 2E E1 22 FC AF 1C 25 4D E9 7C E8 BA FD F0 8B 87.%M.|.00000060 17 95 08 88 95 DD A4 1B 8D DC 36 85 0C 8E.6.(聊天的时间和内容从数据包的偏移地址2B 处开始)好友间消息传送原理基于UDP协议,和登录的数据包一样。只不过所
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026秋新教材统编版四年级上册语文 8《古诗三首》 教案
- 长沙市望城县2025届三年级数学上学期阶段教学质量检测模拟试题(含答案解析)
- (2026年)学校办公室工作总结范文
- 闪蒸罐设计计算书
- 物理AI数据筑基模型搭台拔节起势在即
- 南芯转债模拟与嵌入式芯片国内领军企业
- 月相变化测试题及答案
- 历年基础测试题及答案
- 机器学习 课件 第5章 聚类分析
- 丰林县政治试题及答案
- 2024年(高级)工业机器人系统运维员技能鉴定考试题库-下(多选、判断题)
- 2024江苏苏州高新区枫桥街道招聘社区人员及人员笔试历年典型考题及考点剖析附答案带详解
- 煤矸石充填塌陷区复垦技术规程-编制说明
- Python少儿编程全套教学课件
- 国电南瑞员工手册
- 小学生女生健康教育课件
- 2023硅铁多元素含量的测定电感耦合等离子体原子发射光谱法
- 三江能源有限公司煤矿矿山地质环境保护与土地复垦方案
- 关于腹腔镜胆囊切除手术的护理配合
- 重体力劳动评估程序(RBA健康安全)
- GB/T 21380-2008行人反光标识夜间光度性能及测试方法
评论
0/150
提交评论