当前位置: 首页 > news >正文

详细介绍:Wireshark:HTTP、MQTT、WebSocket 抓包详细教程

目录

1 预备工作(安装 / 权限 / 驱动)

2 抓包基础设置(开始、保存与注意)

3 常用全局配置(要先打开)

4 捕获过滤器 vs 显示过滤器(快速参考)

5 HTTP 抓包与分析(详细步骤)

5.1 抓取场景

5.2 捕获 / 过滤建议

5.3 查看请求/响应

5.4 导出 HTTP 对象(静态资源、文件)

5.5 tshark / 命令行导出 HTTP 对象

5.6 常见问题

6 MQTT 抓包与分析(详细步骤)

6.1 抓取准备

6.2 捕获与过滤

6.3 查看 PUBLISH payload

6.4 tshark 提取 MQTT 信息(示例)

6.5 设备端日志 + MQTT 抓包结合

6.6 MQTT over WebSocket

7 WebSocket 抓包与分析(详细步骤)

7.1 捕获 / 过滤

7.2 跟踪会话

7.3 二进制数据(JSON / protobuf / MQTT over WS)

7.4 WebSocket over TLS(wss)

7.5 常用操作

8 HTTPS / TLS 解密(浏览器 & 客户端调试常用)

8.1 最简便、常用的方法:Pre-Master Secret 日志(适用于基于 TLS 的客户端,如浏览器)

8.2 移动 App / 原生客户端

8.3 使用私钥解密(仅适用于 RSA key exchange,且服务器使用静态 RSA 私钥)

9 抓移动设备 / IoT 设备(实践技巧)

9.1 手机 App(Android/iOS)

9.2 IoT(ESP32 / 嵌入式)

10 常用示例过滤器

11 常用 tshark(命令行)示例

12 实战流程示例(手机 App 调试一个 POST 登录请求)

13 进阶技巧与自动化

14 常见问题与排查清单

15 快速参考表


1 预备工作(安装 / 权限 / 驱动)

  • 安装 Wireshark(Windows/macOS/Linux)。Windows 勾选Npcap

  • 以管理员/root 身份运行以取得抓包权限(或在 Linux 加入 wireshark 用户组并允许运行抓包)。

  • 确认目标设备与抓包电脑网络连通(同一 Wi-Fi / 局域网)或能通过端口镜像/网桥看到流量。

  • 在 Wireshark 中选择正确的网卡(Wi-Fi、Ethernet、桥接接口等)。


2 抓包基础设置(开始、保存与注意)

  • 开始:选择网卡 → 点击左上蓝色 ▶(或 Ctrl+E)。

  • 停止:红色 ⏹(或 Ctrl+E)。

  • 保存:File → Save As,格式 .pcapng(建议保留原始完整抓包)。

  • 推荐在开始前设置Capture Filter(捕获过滤器),减少无用数据:例如只抓 MQTT:port 1883;只抓 HTTP:port 80tcp port 80 or tcp port 443(若不解密 TLS,则不会看到 HTTP 明文)。


3 常用全局设置(要先打开)

  • TCP 重组(非常重要) Edit → Preferences → Protocols → TCP → 勾选 Allow subdissector to reassemble TCP streams(以及 Reassemble out-of-order segments)。

  • HTTP 重组 Edit → Preferences → Protocols → HTTP → 勾选 Reassemble HTTP bodies spanning multiple TCP segments

  • TLS 解密(见第 7 节 HTTPS 解密)


4 捕获过滤器 vs 显示过滤器(迅速参考)

  • 捕获过滤器(开始抓包前):基于 BPF(libpcap),用于减少抓取流量。

    • 示例:host 192.168.1.50 and port 1883port 80tcp port 8883

  • 显示过滤器(抓包后筛选):Wireshark 自有语法,更强大。

    • 常用:httpmqttwebsocketip.addr == 192.168.1.10tcp.port == 443


5 HTTP 抓包与分析(详细步骤)

5.1 抓取场景

  • 明文 HTTP(端口 80):能直接看到请求/响应明文。

  • HTTPS(端口 443):需要解密才能查看明文(见第 7 节)。

5.2 捕获 / 过滤建议

  • 捕获过滤器(减噪):

    • 只抓 Web 端口:tcp port 80 or tcp port 443

  • 显示过滤器(分析):

    • 所有 HTTP:http

    • GET 请求:http.request.method == "GET"

    • POST 请求:http.request.method == "POST"

    • 特定主机:ip.addr == 10.0.0.5 and http

    • 包含关键字段(例如 JSON 关键字):frame contains "application/json"frame contains "password"

5.3 查看请求/响应

  • 右键 HTTP 包 → FollowTCP Stream(或 Follow → HTTP Stream),查看一条会话的请求和响应明文。

  • 在 HTTP 包的 Detail 区可展开 Hypertext Transfer Protocol 节点查看 header 与 body 字段。

5.4 导出 HTTP 对象(静态资源、文件)

  • 菜单:File → Export Objects → HTTP,可导出网页上的图片、JS、文件等。

5.5 tshark / 命令行导出 HTTP 对象

# 导出所有 HTTP 对象到 ./http_objects 目录
tshark -r capture.pcapng --export-objects "http,./http_objects"

5.6 常见问题

  • 如果 POST body 没显示完整:检查 TCP 和 HTTP 重组是否开启(第3节)。

  • 若看到 TLS 加密的 TLS Application Data:需要解密或用代理抓明文(见 7 节)。


6 MQTT 抓包与分析(详细步骤)

MQTT 是 IoT 中常用的轻量协议(默认端口 1883 明文,8883 TLS)。Wireshark 对 MQTT 支持很好,能解析 CONNECT、PUBLISH、SUBSCRIBE 等报文。

6.1 抓取准备

  • 如果设备使用明文 MQTT(1883),直接在同一网段抓到流量即可。

  • 若使用 TLS(8883),需做 TLS 解密或在设备/客户端启用 SSL key logging(见第 7 节)或使用 MITM(如在开发阶段改为明文或使用带证书的代理)。

6.2 捕获与过滤

  • 捕获过滤器举例:port 1883

  • 显示过滤器:

    • 所有 MQTT:mqtt

    • PUBLISH 消息:mqtt.msgtype == 3

    • 指定主题:mqtt.topic == "home/lock/123/events"mqtt.topic contains "lock"

    • 指定 QoS:mqtt.qos == 1

    • CONNECT:mqtt.msgtype == 1

    • SUBSCRIBE:mqtt.msgtype =

http://www.gsyq.cn/news/48772.html

相关文章:

  • ai agent 智能体 prompt ragflow langflow n8n dify
  • C++之变量与基本类型(三) - Invinc
  • 深入解析:手写MyBatis第111弹:Spring Boot自定义注解@MybatisMapperScan注解深度解析:从注解定义到接口代理的完整实现
  • 点赞!开幕式背后的云力量!
  • 11.13 比赛总结
  • win7 如何运行cherry studio
  • 《密码系统设计》第十一周预习
  • 松原西林瓶灌装加塞机推荐,适配冻干机半加塞功能
  • 251113
  • H模型流程
  • 2025年国内商标注册机构综合实力排行榜:专业服务商深度解析
  • 湛江西林瓶灌装旋盖机,选配IQ/OQ/PQ验证款
  • 2025年安徽商标注册公司Top5排行榜:专业机构深度解析
  • 锦州出口欧美西林瓶灌装压塞机 FDA认证
  • 凉山中药混悬剂西林瓶灌装机选型,防沉淀封口成本可控
  • 神经网络滤波器用途
  • 丽江西林瓶灌装线选充氮还是真空型?
  • 2025年北京继承官司律师机构实力排行榜新鲜发布,继承律师事务所/北京继承律师哪个好/北京丰台继承律师/北京继承纠纷法律事务所选哪家
  • 2025年市场十大名牌管材生产厂家怎么选择,十大名牌管材源头厂家推荐排行榜单精选优质品牌解析
  • 2025年目前评价高的供应链云服务商推荐排行榜,供应链云服务商深度剖析助力明智之选
  • Linux 交叉编译(toolchain) ARM aarch64版 tcpreplay
  • win7 64位 sp1 最高nvidia gt740 显卡驱动版本
  • 沈阳车库门厂家,沈阳卷帘门工厂,沈阳防盗门生产厂家,沈阳悬浮门厂家排行,沈阳防盗门生产厂家排行,4S店智能车库提升门品牌十大推荐榜-沈阳鼎盛和门业
  • 2025钢结构反吊膜十大供应商排行榜,膜结构车棚厂家,膜结构看台厂家,有实力的膜结构自行车棚供应厂家排行,哪家好怎么选
  • PPT快速入门
  • 2025年三集一体除湿热泵机组品牌实力大比拼,市面上正规的三集一体除湿热泵机组厂商TOP企业引领行业技术新高度
  • 第五届计算建模、仿真与数据分析国际学术会议(CMSDA 2025)
  • 2025年成都火锅精选:春熙路周边这9家不容错过,火锅店/火锅/美食/老火锅/特色美食/社区火锅/烧菜火锅品牌排行榜单
  • 什么?就是kotlin中MutableStateFlow和MutableSharedFlow的区别
  • handsontable问题总结篇