《飞鸽传书协议分析ppt课件.ppt》由会员分享,可在线阅读,更多相关《飞鸽传书协议分析ppt课件.ppt(41页珍藏版)》请在三一办公上搜索。
1、针对局域网通信软件飞鸽传书的工作原理的分析,1,小组成员,组长:邢超群组员:唐万万 许柏泉 杨冠华 丁靖浩 张宁 陈洋,2,实验环境,TagYi-pc,3,实验环境,GAG-pc,4,环境说明,其中主机TANGYI-PC:MAC地址:00-1B-24-95-1A-D0IP地址:10.103.45.23主机:GAG-PC:MAC地址:00-23-5A-14-B5-73IP地址:10.103.45.27子网掩码:255.255.255.0,5,软件简介,飞鸽传书是一款局域网通信软件,支持局域网间发信息、文件夹、多文件(或文件夹),而且速度相当快。有了它,局域网间的文件传送就不用采用共享文件这个有安
2、全隐患的方法了。飞鸽传书基于TCP/IP(UDP)。可运行于多种操作平台(Win/Mac/Java),可以完全免费使用,并且公开源代码,其原作者是H.Shiryouzu。飞鸽传书无需安装,即装即用,自动搜索在线用户。,6,工作原理,1:登陆通知当用户开启软件后,会发出UDP广播包,向局域网内的用户广播,通知他们,“我来也!”,受到这条消息的用户则立即回复,“知道了,我在这里”,同时将新登录的用户加入到用户列表中,发送方也根据受到的回复信息,了解当前网络中,都有哪些用户已经了的用户。2:发送消息采用UDP传输协议,发送方只需要指定接收方的地址和端口,若接收方此时正在该端口等待接收,那接收方就会收
3、到消息。3:发送文件发送方请求建立TCP连接,连接成功后,发送方经由此通道来发送文件,接收方也经由此通到接收文件。,7,基本工作原理,4.离线通知用户离线时,向广播地址发送,”我去也!“,受到这条消息的用户,需要将发送方从自己的用户列表中移除,并且不需要回复。,8,飞鸽传书(IPMessager),IPMessager工作流程:,9,IPMessager 应用层数据包格式Ver(1):PacketNo:SenderName:SenderHost:CommandNo:AdditionalSection版本:包编号:发送者名字:发送主机:命令编号:附加信息区域整个报文通过字符串的形式发送,IPMS
4、G的版本号为1,而包编号必须是不重复的数字。举例如下:1:100:shirouzu:Jupiter:32:Hello 注:此数据包格式(协议)既可以工作在TCP上,又可以工作在UDP上。,10,实验过程分析,登陆通知:使用wireshark抓到从TANGYI-PC发出的广播包(灰色部分):其中255.255.255.255 为广播地址源端口号为:2425目标端口号为:2425,11,实验过程分析,展开包(如下图):,12,实验过程分析,链路层:,1:目的地址 2:源地址3:类型是IP数据报4:数据部分,13,实验过程分析,网络层:,14,实验过程分析,运输层:,15,实验过程分析,应用层:,1
5、:1291901578:TangYi:TANGYI-PC:0:.,版本:包编号:发送者名字:发送主机:命令编号:附加信息区域,16,实验过程分析,上线通知:,其中 6291457是十进制操作码。操作码由两部分组成,高24位和低8位。低8位是命令,高24位是可选标志,可选标志是一系列标志的组合,每一位代表一个可选项。6291457=0 x600001 低八位是0 x01,(Command number)0 x01: IPMSG_BR_ENTRY ;高24位是0 x600000=0 x400000|0 x200000 x400000 :IPMSG_ENCRYPTOPT0 x20000 :IPMSG
6、_NOLOGOPT,17,离线通知:,18,确认收到新用户信息:,6291459=0 x600003低八位是0 x03,(Command number)0 x03: IPMSG_ANSENTRY ;高24位是0 x600000=0 x400000|0 x200000 x400000 :IPMSG_ENCRYPTOPT0 x20000 :IPMSG_NOLOGOPT,19,发送信息,目标机器是否需要加密,是否存有目标机器的RSA公钥,利用公钥加密数据,请求RSA公钥,发送数据,是,否,是,否,是否收到确认,正确发送,是,20,实验过程分析,聊天(抓包截图):,21,实验过程分析,请求公钥:,11
7、4(Command number)114=0 x72:IPMSP_GETPUBKEY,22,获得公钥:,115=0 x73 :IPMSG_ANSPUBKEY,23,发送数据:,4194592=0 x400120=0 x400000|0 x100|0 x20低八位 0 x20:IPMSG_SENDMSG高24位:0 x400000 :IPMSG_ENCRPTOPT0 x100 :IPMSG_SENDCHECKOPT(如果位打开,接收信息发回IPMSG_命令。添加最初的包编号到扩展区域中),24,确认收到消息:,33=0 x21 : IPMSG_RECVMSG,版本:包编号:发送者名字:发送主机:
8、命令编号:附加信息区域附加区域是1292854424,表示确认了收到1292854424的数据包。,25,IP分片:如果发送的消息长度大于接收接口的MTU则会发生IP分片:,More fragments 被置为1,表示有更多分片。Fragment offset 为0,表示为片偏移为零。 UDP 数据报Length=15680接口MTU。,26,IP分片如下:,27,第二次发送消息包:,28,第二次发送数据:,29,第二次确认:,30,传送文件:传送文件aaa.txt, 文件内容为Hello Word!,31,发送文件请求,是否接收到确认文件接收信息,打开监听准备建立TCP连接,监听到连接请求建
9、立TCP连接,接收控制信息,传送数据,释放TCP连接,等待释放TCP连接,关闭监听套接字,是,接收到文件发送请求,是否接收文件,发送确认信息,建立TCP连接,发送控制信息,接收数据,是,发送端:,接收端:,32,文件传送文件传送请求与确认:,fileID:filename:size:mtime:fileattr:extend-attr=val1 ,val2.:extend-attr2=.:a:fileID.,文件发送信息中的扩展,33,文件传送请求:,6291744=0 x600120=0 x400000|0 x20000|0 x100|0 x200 x400000 :IPMSG_ENCRYPTOPT0 x20000 :IPMSG_NOLOGOPT0 x100 :IPMSG_SENDCHECKOPT 0 x20:IPMSG_SENDMSG,34,确认文件传送请求:,35,三次握手,数据传送,四次握手断开连接:,36,数据传送:,37,接收控制信息(相对发送端):,96=0 x60:IPMSG_GETFILEDATA,38,传输数据:,39,飞鸽传书官方网站,提供源代码下载:日文版:Ipmsg.org/index.html英文版:Ipmsg.org/index.html.en,40,Thanks!,41,
链接地址:https://www.31ppt.com/p-1371779.html