Wireshark簡(jiǎn)介
Wireshark(前稱Ethereal)是一個(gè)網(wǎng)絡(luò)封包分析軟件。 網(wǎng)絡(luò)封包分析軟件的功能是截取網(wǎng)絡(luò)封包,并盡可能顯示出最為詳細(xì)的網(wǎng)絡(luò)封包資料。 Wireshark使用WinPCAP作為接口,直接與網(wǎng)卡進(jìn)行數(shù)據(jù)報(bào)文交換。
在過(guò)去,網(wǎng)絡(luò)封包分析軟件是非常昂貴的,或是專門(mén)屬于盈利用的軟件。 Ethereal的出現(xiàn)改變了這一切。 在GNUGPL通用許可證的保障范圍底下,使用者可以通過(guò)免費(fèi)的途徑取得軟件與其源代碼,并擁有針對(duì)其源代碼修改及客制化的權(quán)利。 Ethereal是全世界最廣泛的網(wǎng)絡(luò)封包分析軟件之一。
Wireshark抓包示例
1、下載并且安裝好Wireshark后打開(kāi)軟件(本文以Wireshark Version 3.4.9 介紹)打開(kāi)后我們可以看到,Wireshark可以自動(dòng)識(shí)別出電腦上面的網(wǎng)卡(包括虛擬網(wǎng)卡),這里我們雙擊我們需要抓包的網(wǎng)卡。
2、雙擊進(jìn)入此界面后,Wireshark已經(jīng)自動(dòng)開(kāi)始了抓包過(guò)程,如果網(wǎng)卡在與其他網(wǎng)絡(luò)設(shè)備通訊,我們就能看到如下圖所示的各種網(wǎng)絡(luò)協(xié)議報(bào)文。
3、平 www.ebyte.com
4、由于Wireshark抓取的是網(wǎng)卡物理層的數(shù)據(jù),所以所有通過(guò)該網(wǎng)卡收發(fā)的數(shù)據(jù)都會(huì)被Wireshark抓取,這就讓我們從海量數(shù)據(jù)中找到我們需要關(guān)注的網(wǎng)絡(luò)包就如同大海撈針,但是Wireshark提供了強(qiáng)大的數(shù)據(jù)包過(guò)濾功能,我們就能比較輕松地找到對(duì)應(yīng)的包。 比如上面我已經(jīng)ping了我司官網(wǎng),現(xiàn)在Wireshark已經(jīng)抓取了兩萬(wàn)多條報(bào)文,只要通過(guò)在過(guò)濾器輸入”ip.addr == 101.37.40.78 && icmp“就能找到對(duì)應(yīng)的報(bào)文。
TCP報(bào)文抓包分析示例
1、Wireshark的抓包
開(kāi)啟Wireshark的抓包功能后,通過(guò)電腦連接到本地搭建的回顯服務(wù)器,電腦上面的客戶端發(fā)送了一段數(shù)據(jù)到服務(wù)器,服務(wù)器回傳到電腦上的客戶端。
2、過(guò)濾報(bào)文
此時(shí)我們?cè)赪ireshark的過(guò)濾欄中輸入“ip.addr == 192.168.3.6”就能過(guò)濾出網(wǎng)絡(luò)報(bào)文中基于IP協(xié)議簇,且IP地址(源地址或目標(biāo)地址)為192.168.3.6的網(wǎng)絡(luò)報(bào)文。 如下圖所示:
Wireshark在封包展示界面中根據(jù)網(wǎng)絡(luò)協(xié)議模型,展示出了各層協(xié)議的重要信息如下圖所示:
Frame:表示物理層
Ethernet II:數(shù)據(jù)鏈路層信息,包括源主機(jī)MAC,目標(biāo)主機(jī)MAC與協(xié)議類型如IPV4(0x0800)
Internet Protocol Version 4:IP協(xié)議幀信息,包括源主機(jī)IP地址,目標(biāo)主機(jī)IP地址等
Transmission Control Protocol:TCP協(xié)議相關(guān)信息,包括源端口與目標(biāo)端口號(hào),接收窗口大小等
3、TCP握手過(guò)程
Wireshark常用過(guò)濾器設(shè)置
1、Wireshark中的邏輯運(yùn)算符
1.1 比較運(yùn)算符如:== (等于)、! =(不等于) 、>(大于) 、<(小于) 、>=(大于等于) 、<=(小于等于)
ip.src == 192.168.3.6 過(guò)濾源主機(jī)IP地址或者目標(biāo)主機(jī)IP地址為192.168.3.6的報(bào)文
1.2 邏輯運(yùn)算符如:&&(與)、|| (或)、! (非)
ip.src == 192.168.3.6 && && tcp.srcport == 8001,則只顯示報(bào)文源主機(jī)地址為192.168.3.6且源端口為為8001的報(bào)文
2、協(xié)議過(guò)濾
根據(jù)網(wǎng)絡(luò)協(xié)議過(guò)濾報(bào)文,即在抓包過(guò)濾框中輸入?yún)f(xié)議相關(guān)字段即可,包括”TCP”,”UDP””HTTP””ICMP”等。
3、MAC地址過(guò)濾
eth.addr == 382602:dd 過(guò)濾源主機(jī)MAC地址或者目標(biāo)主機(jī)MAC地址為382602:dd的報(bào)文
eth.src== 382602:dd 過(guò)濾源主機(jī)MAC地址為382602:dd的報(bào)文
eth.dst== 382602:dd 過(guò)濾目標(biāo)主機(jī)MAC地址為382602:dd的報(bào)文
4、ip地址過(guò)濾
Ip.addr == 192.168.3.6 過(guò)濾源主機(jī)IP地址或者目標(biāo)主機(jī)IP地址為192.168.3.6的報(bào)文
Ip.src== 192.168.3.6 過(guò)濾源主機(jī)IP地址為192.168.3.6的報(bào)文
ip.dst == 192.168.3.240 過(guò)濾目標(biāo)主機(jī)IP地址為192.168.3.240的報(bào)文
5、端口過(guò)濾
tcp.port==80 過(guò)濾基于TCP協(xié)議且目標(biāo)端口號(hào)或源端口號(hào)為80的報(bào)文
udp.srcport == 8001 過(guò)濾基于UDP協(xié)議且端口號(hào)為8001的報(bào)文
tcp.dstport == 8001 過(guò)濾基于TCP協(xié)議且目標(biāo)端口號(hào)為8001的報(bào)文
6、http模式過(guò)濾
http.request.method=="GET", 過(guò)濾基于http協(xié)議且http請(qǐng)求方式為”GET”的報(bào)文
審核編輯:湯梓紅
-
網(wǎng)絡(luò)
+關(guān)注
關(guān)注
14文章
7485瀏覽量
88540 -
Mac
+關(guān)注
關(guān)注
0文章
1095瀏覽量
51339 -
源代碼
+關(guān)注
關(guān)注
96文章
2943瀏覽量
66617 -
分析軟件
+關(guān)注
關(guān)注
0文章
26瀏覽量
7098 -
Wireshark
+關(guān)注
關(guān)注
0文章
49瀏覽量
6489
原文標(biāo)題:干貨丨網(wǎng)絡(luò)封包分析軟件——Wireshark抓包教程
文章出處:【微信號(hào):cdebyte,微信公眾號(hào):億佰特物聯(lián)網(wǎng)應(yīng)用專家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論