如何在Wireshark中合并多个条目以搜索目标请求?

在一款游戏中,有一个功能是查看排行榜的,打算用 wireshark 看不能抓到查询排行榜的网络请求,但是发现从启动抓包到点击查看排行榜这几秒时间内,记录到的条目数量达到 6w 多条。

同一个请求可能会产生多个条目,怎么把这些条目合并起来,这样方便搜索目标请求?

补充一点: 我想抓的是王者荣耀的巅峰榜,不清楚有没有官方对外提供的接口,或者有没有其他途径来获取。

之前尝试在手机运行游戏时通过 fiddler 来抓,可以抓到 https 协议,但是经过分析都不是排行榜信息,所以怀疑不是走 https 协议的。所以使用 Wireshark 来抓,但是发现 Wireshark 是分析网卡流量的,所以把游戏装在电脑的游戏模拟器中运行。下面是从游戏开始界面点击排位再到查看巅峰榜时抓到的数据包,大概 2k 条,之前的 6w 条可能是因为游戏在背后下载资源的原因。
https://changk99.github.io/assets/wzry.pcapng

我也试过一条一条看,但是可能存在加密的因素,根本获取不到有用的信息

阅读 1.1k
2 个回答

wireshark支持过滤,你可以在抓包之前设置过滤器只抓取指定的包,也可以在抓完之后过滤出你要的包。
比如只抓取http协议80端口的包,在捕获--》选项里设置:
image.png

再比如抓完包后想过滤指定ip的数据包:
image.png

如果要追踪某一个http请求的过程,可以跟随tcp流:
image.png

然后就会看到一个完整的http请求过程,包含3次握手和挥手等:
image.png

如果要让显示的结果变少,那就写过滤规则,根据协议或者端口过滤具体的数据包,比如 http udp tcp port这样的。

如果是要看具体的内容,那就用 追踪流,可以查看tcp流。


感觉你的这个场景用wireshark不太合适,wireshark它只能查看明文传输的内容,大概率查看排行榜这个功能接口是走的https协议,不会走明文的传输协议,wireshark上面就只能看到一个一个的数据包,解析不了数据包里面的内容。

可以试试proxifier配合charles。
如果是手机游戏,再在电脑上开个虚拟机,用proxifier代理虚拟机程序,也能成功代理虚拟机里面的游戏。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进