乘风破浪,遇见最美Windows 11之现代Windows桌面应用开发 - 使用免费开源跨平台Wireshark抓取更底层网络请求
什么是Wireshark
https://www.wireshark.org
Wireshark是一个免费和开源的数据包分析器。它被用于网络故障诊断、分析、软件和通信协议开发以及教育。该项目最初名为Ethereal,由于商标问题,于2006年5月改名为Wireshark。
Wireshark是跨平台的,在当前版本中使用Qt widget工具包来实现其用户界面,并使用pcap来捕获数据包;它可以在Linux、macOS、BSD、Solaris、其他一些类似Unix的操作系统和Microsoft Windows上运行。还有一个基于终端(非GUI)的版本叫TShark。Wireshark以及与它一起发布的其他程序,如TShark,都是自由软件,根据GNU通用公共许可证第2版或任何后续版本的条款发布。
历史
在20世纪90年代末,毕业于密苏里大学堪萨斯城分校计算机科学系的Gerald Combs在一家小型互联网服务提供商工作。当时的商业协议分析产品价格在1500美元左右,而且不能在公司的主要平台(Solaris和Linux)上运行,因此Gerald开始编写Ethereal并在1998年左右发布了第一个版本。Ethereal的商标由Network Integration Services拥有。
2006年5月,Combs接受了CACE技术公司的工作。Combs仍然拥有Ethereal大部分源代码的版权(其余部分在GNU GPL下可重新发布),所以他使用Ethereal Subversion仓库的内容作为Wireshark仓库的基础。然而,他并不拥有Ethereal的商标,所以他把名字改为Wireshark。2010年,Riverbed Technology收购了CACE,并接管了Wireshark的主要赞助商。Ethereal的开发已经停止了,Ethereal的一个安全咨询建议改用Wireshark。
多年来,Wireshark赢得了多个行业奖项,包括eWeek、InfoWorld和PC Magazine。它也是Insecure.Org网络安全工具调查中评级最高的数据包嗅探器,并且是2010年8月的SourceForge月度项目。
Combs继续维护Wireshark的整体代码,并发布该软件的新版本。该产品网站列出了近2000个额外的贡献作者。
开源
https://gitlab.com/wireshark/wireshark
Wireshark是一个网络流量分析器,或 "嗅探器",适用于Linux、macOS、BSD和其他Unix和类似Unix的操作系统以及Windows。它使用Qt,一个图形用户界面库,以及libpcap和npcap作为 包捕获和过滤库。
Wireshark发行版还包括TShark,它是一个 它是一个面向行的嗅探器(类似于Sun的snoop或tcpdump),使用了 它使用了与Wireshark相同的剖析、捕获文件的读写和数据包过滤代码。的代码,以及editcap,它是一个读取捕获文件的程序。和editcap,后者是一个读取捕获文件并从捕获文件中写出数据包的程序,可能是以不同的捕获文件格式,并带有一些不同的捕获文件格式,并有可能从捕获文件中删除一些数据包、从捕获的数据包中删除。
获取Wireshark
官网安装包
https://www.wireshark.org/#download
- Windows Installer (64-bit)
- macOS Arm 64-bit.dmg
- macOS Intel 64-bit.dmg
Winget命令安装
通过搜索命令,我们能找到它
winget search wireshark
winget install wireshark
使用Wireshark
扫描本地网络接口
启动Wireshark后,它将会扫描本地网络接口,如果你看不到,那么可能要考虑重新安装一次,尤其是把附属的那些组件也安装好。
一般情况下,这里我们选"以太网"即可。双击它就是选中。
监控网络接口流量
选择网络接口之后,即可就进入监控捕获模式了。
如果我们要过滤纯http请求,那么我们可以在"应用显示过滤器"里面输入http
,然后回车生效
这里请求很多,我们也可以Ctrl
+F
来查找,然后选择正确的过滤方式,比如这里我们选字符串方式,输入我们想要查找的字符串即可。
有些时候,抓取一段时间会产生很多请求,我们需要维持当前过滤条件不变清空下重来,那么我们可以点击一个重置按钮。
参考
- https://en.wikipedia.org/wiki/Wireshark