原文地址:https://cloud.tencent.com/developer/article/1626726
一.什么是Wireshark?
Wireshark是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。在过去,网络封包分析软件是非常昂贵的,或是专门属于盈利用的软件。Ethereal的出现改变了这一切。在GNUGPL通用许可证的保障范围底下,使用者可以以免费的代价取得软件与其源代码,并拥有针对其源代码修改及客制化的权利。Ethereal是目前全世界最广泛的网络封包分析软件之一。
Wireshark是目前全球使用最广泛的开源抓包软件,其前身为Ethereal,是一个通用的网络数据嗅探器和协议分析器,由Gerald Combs编写并于1998年以GPL开源许可证发布。如果是网络工程师,可以通过Wireshark对网络进行故障定位和排错;如果安全工程师,可以通过Wireshark对网络黑客渗透攻击进行快速定位并找出攻击源;如果是测试或软件工程师,可以通过Wireshark分析底层通讯机制等。
Wireshark包括以下基本功能:
分析网络底层协议
解决网络故障问题
寻找网络安全问题
网络流量真实检测
黑客攻击
那么,我们在哪里下载该软件呢?在前文安装的Kali环境中,它已经自带了Wireshark工具,而Windows系统下,可以在其官网进行下载,作者也将其上传至百度云。
https://www.wireshark.org/
https://www.wireshark.org/download.html
相关类似的软件:Sniffer、Fiddler、Omnipeek、Httpwatch、科来网络分析系统等。
二.Wireshark安装
该软件安装非常简单,如下所示。
第一步:直接运行EXE,点击下一步即可。
第二步:选择相关的选项,Wireshark是它的主程序,TShark是协议器,Plugins&Extensions是基本的插件,Tools是基本的工具包,User’s Guide是帮助文档。
第三步:默认选择即可。
第四步:选择安装路径,建议大家尽量安装在纯英文路径下。
安装完成。
三.Wireshark抓取网站用户名和密码
下面通过一个简单的示例讲解Wireshark抓包的基本用法,运行软件如下图所示。
第一步:选择目标网站(http://www.xxxxx.org/Login.aspx),并获取其IP地址,可以采用Ping命令实现。这里采用站长之家(http://ip.tool.chinaz.com/)获取,其IP地址为:124.114.152.116 。
第二步:打开wireshark软件,选择网卡后,启动软件抓包功能。(也可以在设置选项)
第三步:启动Wireshark软件,显示如下图所示。
第四步:打开目标网站并刷新,输入用户名和密码登录。
第五步:登录成功之后停止抓包,并使用下面的过滤器获取HTTP协议且与该IP地址相关的信息。 http and ip.addr==124.114.152.116
第六步:通过分析HTML登录方式,发现它是POST方式(很常见,GET方式的链接有参数),下面这两个是登录页面。
第七步:点击该POST且包含login的登录页面,点击最后一行“HTML Form URL Encoded:application/x-www-form-urlencoded”,获取如下图所示的用户名和密码。如果密码被MD5加密,可以寻找在线网站进行解密。
Form item: “username” = “yangxiuzhang”
Form item: “password” = "xxxxxxxx"
讲到这里,我们通过Wireshark成功获取了自己登录账号和密码。同样,可以尝试抓取其他小伙伴的账号和密码,因为你们在同一个wifi下。通过获取目标网站的IP地址,就能截取数据包实现该功能。所以,大家在外尽量不要使用开放的wifi。
第八步:如果不设置HTTP协议,可以显示所有写一下的数据包,如下图所示。
第九步:最后补充其他的过滤器,比如获取表单提交的POST请求(GET请求URL有参数),我们可以使用下面代码获取。 http.request.method==POST
过滤表达式的规则:
第十步:过滤规则是可以组合的,如下图所示。 http.request.method==“POST” and http and ip.addr==124.114.152.116
四.总结
Wireshark和网络协议息息相关,涉及协议:HTTP、FTP、Telnet、网络协议TCP/IP协议栈、路由协议(RIP/EIGRP/OSPF/ISIS/BGP)、交换协议(TRUNK/VTP/STP/HSRP),如下图所示,后面的文章将结合抓包原理进行更详细讲解。