少年

  • 一、实验目的
  • 二、实验操作
  • 三、总结
  • 四、资源


一、实验目的

1.分析这程序所采用的是udp还是tcp
2.在抓取包中找到窃取到的聊天信息 (英文字符和汉字可能经过了某种编码转换,数据包中不是明文)
3.如果是网络连接采取的是TCP,分析其建立连接时的3次握手,断开连接时的4次握手;如果是UDP,解释该程序为何能够在多台电脑之间(只有是同一个聊天室编号)同时传输聊天数据

二、实验操作

  • 先把两台电脑连在同一个WiFi热点下(手机热点也可以),然后把疯狂聊天软件打开,输入同一个房间号,进入房间
  • 疯狂聊天软件打开之后再打开wireshark,由于是用的WiFi,所以这里选择的是WiFi接口,然后就可以发送信息,发送信息了之后就会出现下面的画面
  • 上面还有很长一串都是UDP,那应该就是通过UDP来进行网络连接,再看src和dst都是mac地址的信息,发现源端口都是58880和8001,连接端口应该就是这两个了
  • 再找一下发送的信息,开始我发送的信息为11,id也为1,可以在本机ip地址到255.255.255.255的udp连接可以找到,而且这里的端口号也和开始连接时用的不一样,而且255.255.255.255满特殊的,是一个广播地址,所以这也是为什么在同一个聊天室里电脑都能接收到信息的原因。
  • 再试一下英文字符,由于知道了是通过广播方式向其他电脑发送数据,就可以使用筛选器将目的地址设为255.255.255.255
    -下面是发送的聊天记录
  • 先看英文字符的显示,可以直接明文显示
  • 再看看中文的,这里就以最后的啊啊啊为例了,可以看到在旁边并没有显示汉字,但刚刚输入的汉字是三个啊,再观察一下16进制码,可以看到有三个重复的,就可以知道一个汉字是由3个字节编码而成的,正常情况下2个字节就可以编码一个汉字,UTF-8由于格式原因需要三个字节,所以这是UTF-8的编码格式。

三、总结

  • 答案:软件使用的协议是UDP,连接端口是58880和8001,能在多台电脑上同时传输聊天数据的原因是发送信息时使用的广播地址。
  • 想法:软件不知道怎么就可以正常运行了,可能是安装之后没有重启的缘故吧,其他都没有问题的情况试试重启也不错。