文章目录
使用Wireshark进行HTTP、MQTT、WebSocket抓包的详细教程如下:
HTTP抓包
- 捕获过滤器设置 :在Wireshark的捕获过滤器输入框中输入
tcp port 80 or tcp port 443
,只抓取HTTP和HTTPS的流量。 - 开始抓包 :选择正确的网卡后,点击左上角的蓝色播放按钮或按下
Ctrl+E
开始抓包。 - 触发HTTP请求:打开浏览器访问目标网站,或者在其他应用程序中执行相关的HTTP操作,以生成HTTP流量。
- 显示过滤器筛选 :抓包完成后,在显示过滤器输入框中输入
http
,过滤出所有HTTP协议的数据包。 - 查看请求/响应 :右键点击HTTP包,选择
Follow
→TCP Stream
或Follow
→HTTP Stream
,查看一条会话的请求和响应明文。在HTTP包的Detail区可展开Hypertext Transfer Protocol
节点查看header与body字段。 - 导出HTTP对象 :如果需要导出网页上的静态资源等,可以通过菜单
File
→Export Objects
→HTTP
进行操作。
MQTT抓包
- 捕获过滤器设置 :若设备使用明文MQTT,在捕获过滤器中输入
port 1883
;若使用TLS加密的MQTT,需先进行TLS解密等操作,再设置捕获过滤器为port 8883
。 - 开始抓包:选择网卡后点击开始抓包按钮。
- 显示过滤器筛选 :在显示过滤器输入框中输入
mqtt
,显示所有MQTT协议的数据包。 - 查看PUBLISH payload :找到PUBLISH类型的MQTT数据包,在数据包详细信息区域中展开
MQTT
节点,查看Payload
字段,即可看到发布的消息内容。
WebSocket抓包
- 捕获过滤器设置 :可以使用
tcp port <WebSocket端口>
(如果知道具体端口)作为捕获过滤器,若不清楚端口,可先不设置捕获过滤器,后期通过显示过滤器筛选。 - 开始抓包:选择网卡后启动抓包。
- 显示过滤器筛选 :在显示过滤器输入框中输入
websocket
,过滤出WebSocket协议的数据包。 - 查看WebSocket消息 :右键点击WebSocket包,选择
Follow
→WebSocket Stream
,可以查看WebSocket会话中的消息内容。在数据包详细信息区域中展开WebSocket
节点,可以查看更详细的协议字段信息。