网络协议抓包分析(二)抓取聊天信息

网络协议抓包分析(二)抓取聊天信息

抓包工具:wireshark

聊天软件:疯狂聊天室

文章目录

  • 网络协议抓包分析(二)抓取聊天信息
    • 一、抓包分析
      • 1. 抓包
        • 1.1 进入聊天室
        • 1.2 发送信息测试是否连接
        • 1.3 分析聊天信息发送出的ip地址
        • 1.4 启动wireshark选择对应的网络进行抓包
      • 2. 测试分析
        • 2.1 西文字符测试
        • 2.2 中文字符测试
        • 2.3 混合字符测试
    • 二、总结
    • 三、参考

一、抓包分析

1. 抓包

1.1 进入聊天室

在两台电脑上启动疯狂聊天室,进入同一个聊天室:1号房间
网络协议抓包分析(二)抓取聊天信息_第1张图片
网络协议抓包分析(二)抓取聊天信息_第2张图片

1.2 发送信息测试是否连接

两个账号分别发送几条消息测试能否接收

网络协议抓包分析(二)抓取聊天信息_第3张图片

1.3 分析聊天信息发送出的ip地址

通过代码我们得知程序通过udp协议想255.255.255.255发送信息进行全球广播

def send(self):
	msg = self.m_msg.GetValue().strip()
	if not msg:
		return
	self.m_msg.SetValue(u' ')
	msg = jc.toutf8(self.myname) + ":" +jc.toutf8(msg)
	self.udp.sendto(msg,( ' 255.255.255.255'5000 + self.room))

1.4 启动wireshark选择对应的网络进行抓包

在wireshark中输入筛选ip.dst==255.255.255.255进行过滤,可以发现捕捉到了聊天消息包,并发送到了255.255.255.255进行广播,与代码分析一致。这样处于同一个房间即同一个端口号的所有人都可以接收信息了
网络协议抓包分析(二)抓取聊天信息_第4张图片

2. 测试分析

2.1 西文字符测试

只发送一串包含西文字符的字符串:Karmen and Giao Giao love each other!
网络协议抓包分析(二)抓取聊天信息_第5张图片

在Wireshark中双击对应的包查看详情,可以发现端口号为5001,而通过分析源码可以得知端口号为房间号+5000,而我们的房间号正是1。
在这里插入图片描述

并且只发送西文字符可以直接通过包查看到信息内容。

2.2 中文字符测试

只发送一串包含中文字符的字符串:中腩屋没了
网络协议抓包分析(二)抓取聊天信息_第6张图片

通过Wireshark抓到包,发现只能看到一串**·······**

通过分析代码我们发现中文经过了utf-8的编码转换,一个中文占三个字节,所以不能被显示出来。
网络协议抓包分析(二)抓取聊天信息_第7张图片

这里一共显示了15个字节

2.3 混合字符测试

混合发送一串字符,包括数字,西文和中文字符
网络协议抓包分析(二)抓取聊天信息_第8张图片

抓到的包内信息如图所示,除了中文以外都能直接显示,而且西文字符和数字都只占了一个字节,中文占了3个。

二、总结

通过学习网络抓包能更好地了解网络运行原理

三、参考

醉意丶千层梦: 基于wireshark练习抓包

你可能感兴趣的