wireshark抓包新手使用教程

wireshark抓包新手使用教程

Wireshark是非常流行的網(wǎng)絡(luò)封包分析軟件,可以截取各種網(wǎng)絡(luò)數(shù)據(jù)包,并顯示數(shù)據(jù)包詳細(xì)信息。常用于開(kāi)發(fā)測(cè)試過(guò)程各種問(wèn)題定位。本文主要內(nèi)容包括:

1、Wireshark軟件下載和安裝以及Wireshark主界面介紹。

2、WireShark簡(jiǎn)單抓包示例。通過(guò)該例子學(xué)會(huì)怎么抓包以及如何簡(jiǎn)單查看分析數(shù)據(jù)包內(nèi)容。

3、Wireshark過(guò)濾器使用。通過(guò)過(guò)濾器可以篩選出想要分析的內(nèi)容。包括按照協(xié)議過(guò)濾、端口和主機(jī)名過(guò)濾、數(shù)據(jù)包內(nèi)容過(guò)濾。

Wireshark軟件安裝

軟件下載路徑:wireshark官網(wǎng)。按照系統(tǒng)版本選擇下載,下載完成后,按照軟件提示一路Next安裝。

如果你是Win10系統(tǒng),安裝完成后,選擇抓包但是不顯示網(wǎng)卡,下載win10pcap兼容性安裝包。下載路徑:win10pcap兼容性安裝包

Wireshark 開(kāi)始抓包示例

先介紹一個(gè)使用wireshark工具抓取ping命令操作的示例,讓讀者可以先上手操作感受一下抓包的具體過(guò)程。

1、打開(kāi)wireshark 2.6.5,主界面如下:

[圖片上傳失敗...(image-ea2b44-1669374018939)]

2、選擇菜單欄上Capture -> Option,勾選WLAN網(wǎng)卡(這里需要根據(jù)各自電腦網(wǎng)卡使用情況選擇,簡(jiǎn)單的辦法可以看使用的IP對(duì)應(yīng)的網(wǎng)卡)。點(diǎn)擊Start。啟動(dòng)抓包。

image

3、wireshark啟動(dòng)后,wireshark處于抓包狀態(tài)中。

image

4、執(zhí)行需要抓包的操作,如ping www.baidu.com

5、操作完成后相關(guān)數(shù)據(jù)包就抓取到了。為避免其他無(wú)用的數(shù)據(jù)包影響分析,可以通過(guò)在過(guò)濾欄設(shè)置過(guò)濾條件進(jìn)行數(shù)據(jù)包列表過(guò)濾,獲取結(jié)果如下。說(shuō)明:ip.addr == 119.75.217.26 and icmp 表示只顯示ICPM協(xié)議且源主機(jī)IP或者目的主機(jī)IP為119.75.217.26的數(shù)據(jù)包。

image

5、wireshark抓包完成,就這么簡(jiǎn)單。關(guān)于wireshark過(guò)濾條件和如何查看數(shù)據(jù)包中的詳細(xì)內(nèi)容在后面介紹。

Wireshakr抓包界面

image

說(shuō)明:數(shù)據(jù)包列表區(qū)中不同的協(xié)議使用了不同的顏色區(qū)分。協(xié)議顏色標(biāo)識(shí)定位在菜單欄View --> Coloring Rules。如下所示

image

WireShark 主要分為這幾個(gè)界面

1. Display Filter(顯示過(guò)濾器), 用于設(shè)置過(guò)濾條件進(jìn)行數(shù)據(jù)包列表過(guò)濾。菜單路徑:Analyze --> Display Filters。

image

2. Packet List Pane(數(shù)據(jù)包列表), 顯示捕獲到的數(shù)據(jù)包,每個(gè)數(shù)據(jù)包包含編號(hào),時(shí)間戳,源地址,目標(biāo)地址,協(xié)議,長(zhǎng)度,以及數(shù)據(jù)包信息。 不同協(xié)議的數(shù)據(jù)包使用了不同的顏色區(qū)分顯示。

image

3. Packet Details Pane(數(shù)據(jù)包詳細(xì)信息), 在數(shù)據(jù)包列表中選擇指定數(shù)據(jù)包,在數(shù)據(jù)包詳細(xì)信息中會(huì)顯示數(shù)據(jù)包的所有詳細(xì)信息內(nèi)容。數(shù)據(jù)包詳細(xì)信息面板是最重要的,用來(lái)查看協(xié)議中的每一個(gè)字段。各行信息分別為

(1)Frame: 物理層的數(shù)據(jù)幀概況

(2)Ethernet II: 數(shù)據(jù)鏈路層以太網(wǎng)幀頭部信息

(3)Internet Protocol Version 4: 互聯(lián)網(wǎng)層IP包頭部信息

(4)Transmission Control Protocol: 傳輸層T的數(shù)據(jù)段頭部信息,此處是TCP

(5)Hypertext Transfer Protocol: 應(yīng)用層的信息,此處是HTTP協(xié)議

image

TCP包的具體內(nèi)容

從下圖可以看到wireshark捕獲到的TCP包中的每個(gè)字段。

image

4. Dissector Pane(數(shù)據(jù)包字節(jié)區(qū))。

Wireshark過(guò)濾器設(shè)置

初學(xué)者使用wireshark時(shí),將會(huì)得到大量的冗余數(shù)據(jù)包列表,以至于很難找到自己自己抓取的數(shù)據(jù)包部分。wireshar工具中自帶了兩種類(lèi)型的過(guò)濾器,學(xué)會(huì)使用這兩種過(guò)濾器會(huì)幫助我們?cè)诖罅康臄?shù)據(jù)中迅速找到我們需要的信息。

(1)抓包過(guò)濾器

捕獲過(guò)濾器的菜單欄路徑為Capture --> Capture Filters。用于**在抓取數(shù)據(jù)包前設(shè)置。**

image

如何使用?可以在抓取數(shù)據(jù)包前設(shè)置如下。

image

ip host 60.207.246.216 and icmp表示只捕獲主機(jī)IP為60.207.246.216的ICMP數(shù)據(jù)包。獲取結(jié)果如下:

image

(2)顯示過(guò)濾器

顯示過(guò)濾器是用于在抓取數(shù)據(jù)包后設(shè)置過(guò)濾條件進(jìn)行過(guò)濾數(shù)據(jù)包。通常是在抓取數(shù)據(jù)包時(shí)設(shè)置條件相對(duì)寬泛,抓取的數(shù)據(jù)包內(nèi)容較多時(shí)使用顯示過(guò)濾器設(shè)置條件顧慮以方便分析。同樣上述場(chǎng)景,在捕獲時(shí)未設(shè)置捕獲規(guī)則直接通過(guò)網(wǎng)卡進(jìn)行抓取所有數(shù)據(jù)包,如下

image

執(zhí)行ping www.huawei.com獲取的數(shù)據(jù)包列表如下

image

觀察上述獲取的數(shù)據(jù)包列表,含有大量的無(wú)效數(shù)據(jù)。這時(shí)可以通過(guò)設(shè)置顯示器過(guò)濾條件進(jìn)行提取分析信息。ip.addr == 211.162.2.183 and icmp。并進(jìn)行過(guò)濾。

image

上述介紹了抓包過(guò)濾器和顯示過(guò)濾器的基本使用方法。在組網(wǎng)不復(fù)雜或者流量不大情況下,使用顯示器過(guò)濾器進(jìn)行抓包后處理就可以滿足我們使用。下面介紹一下兩者間的語(yǔ)法以及它們的區(qū)別。

wireshark過(guò)濾器表達(dá)式的規(guī)則

1、抓包過(guò)濾器語(yǔ)法和實(shí)例

抓包過(guò)濾器類(lèi)型Type(host、net、port)、方向Dir(src、dst)、協(xié)議Proto(ether、ip、tcp、udp、http、icmp、ftp等)、邏輯運(yùn)算符(&& 與、|| 或、!非)

(1)協(xié)議過(guò)濾

比較簡(jiǎn)單,直接在抓包過(guò)濾框中直接輸入?yún)f(xié)議名即可。

TCP,只顯示TCP協(xié)議的數(shù)據(jù)包列表

HTTP,只查看HTTP協(xié)議的數(shù)據(jù)包列表

ICMP,只顯示ICMP協(xié)議的數(shù)據(jù)包列表

(2)IP過(guò)濾

host 192.168.1.104

src host 192.168.1.104

dst host 192.168.1.104

(3)端口過(guò)濾

port 80

src port 80

dst port 80

(4)邏輯運(yùn)算符&& 與、|| 或、!非

src host 192.168.1.104 && dst port 80 抓取主機(jī)地址為192.168.1.80、目的端口為80的數(shù)據(jù)包

host 192.168.1.104 || host 192.168.1.102 抓取主機(jī)為192.168.1.104或者192.168.1.102的數(shù)據(jù)包

!broadcast 不抓取廣播數(shù)據(jù)包

2、顯示過(guò)濾器語(yǔ)法和實(shí)例

(1)比較操作符

比較操作符有== 等于、!= 不等于、> 大于、< 小于、>= 大于等于、<=小于等于。

(2)協(xié)議過(guò)濾

比較簡(jiǎn)單,直接在Filter框中直接輸入?yún)f(xié)議名即可。注意:協(xié)議名稱(chēng)需要輸入小寫(xiě)。

tcp,只顯示TCP協(xié)議的數(shù)據(jù)包列表

http,只查看HTTP協(xié)議的數(shù)據(jù)包列表

icmp,只顯示ICMP協(xié)議的數(shù)據(jù)包列表

image

(3) ip過(guò)濾

ip.src ==192.168.1.104 顯示源地址為192.168.1.104的數(shù)據(jù)包列表

ip.dst==192.168.1.104, 顯示目標(biāo)地址為192.168.1.104的數(shù)據(jù)包列表

ip.addr == 192.168.1.104 顯示源IP地址或目標(biāo)IP地址為192.168.1.104的數(shù)據(jù)包列表

image

(4)端口過(guò)濾

tcp.port ==80, 顯示源主機(jī)或者目的主機(jī)端口為80的數(shù)據(jù)包列表。

tcp.srcport == 80, 只顯示TCP協(xié)議的源主機(jī)端口為80的數(shù)據(jù)包列表。

tcp.dstport == 80,只顯示TCP協(xié)議的目的主機(jī)端口為80的數(shù)據(jù)包列表。

image

(5) Http模式過(guò)濾

http.request.method=="GET", 只顯示HTTP GET方法的。

(6)邏輯運(yùn)算符為 and/or/not

過(guò)濾多個(gè)條件組合時(shí),使用and/or。比如獲取IP地址為192.168.1.104的ICMP數(shù)據(jù)包表達(dá)式為ip.addr == 192.168.1.104 and icmp

image

(7)按照數(shù)據(jù)包內(nèi)容過(guò)濾。假設(shè)我要以IMCP層中的內(nèi)容進(jìn)行過(guò)濾,可以單擊選中界面中的碼流,在下方進(jìn)行選中數(shù)據(jù)。如下

image

右鍵單擊選中后出現(xiàn)如下界面

image

選中Select后在過(guò)濾器中顯示如下

image

后面條件表達(dá)式就需要自己填寫(xiě)。如下我想過(guò)濾出data數(shù)據(jù)包中包含"abcd"內(nèi)容的數(shù)據(jù)流。包含的關(guān)鍵詞是contains 后面跟上內(nèi)容。

image

看到這, 基本上對(duì)wireshak有了初步了解。

Wireshark抓包分析TCP三次握手

(1)TCP三次握手連接建立過(guò)程

Step1:客戶端發(fā)送一個(gè)SYN=1,ACK=0標(biāo)志的數(shù)據(jù)包給服務(wù)端,請(qǐng)求進(jìn)行連接,這是第一次握手;

Step2:服務(wù)端收到請(qǐng)求并且允許連接的話,就會(huì)發(fā)送一個(gè)SYN=1,ACK=1標(biāo)志的數(shù)據(jù)包給發(fā)送端,告訴它,可以通訊了,并且讓客戶端發(fā)送一個(gè)確認(rèn)數(shù)據(jù)包,這是第二次握手;

Step3:服務(wù)端發(fā)送一個(gè)SYN=0,ACK=1的數(shù)據(jù)包給客戶端端,告訴它連接已被確認(rèn),這就是第三次握手。TCP連接建立,開(kāi)始通訊。

image

(2)wireshark抓包獲取訪問(wèn)指定服務(wù)端數(shù)據(jù)包

Step1:?jiǎn)?dòng)wireshark抓包,打開(kāi)瀏覽器輸入www.huawei.com。

Step2:使用ping www.huawei.com獲取IP。
image
Step3:輸入過(guò)濾條件獲取待分析數(shù)據(jù)包列表 ip.addr == 211.162.2.183

[圖片上傳失敗...(image-f81666-1669374018939)]

圖中可以看到wireshark截獲到了三次握手的三個(gè)數(shù)據(jù)包。第四個(gè)包才是HTTP的, 這說(shuō)明HTTP的確是使用TCP建立連接的。

第一次握手?jǐn)?shù)據(jù)包

客戶端發(fā)送一個(gè)TCP,標(biāo)志位為SYN,序列號(hào)為0, 代表客戶端請(qǐng)求建立連接。 如下圖。

image

數(shù)據(jù)包的關(guān)鍵屬性如下:

SYN :標(biāo)志位,表示請(qǐng)求建立連接

Seq = 0 :初始建立連接值為0,數(shù)據(jù)包的相對(duì)序列號(hào)從0開(kāi)始,表示當(dāng)前還沒(méi)有發(fā)送數(shù)據(jù)

Ack =0:初始建立連接值為0,已經(jīng)收到包的數(shù)量,表示當(dāng)前沒(méi)有接收到數(shù)據(jù)

第二次握手的數(shù)據(jù)包

服務(wù)器發(fā)回確認(rèn)包, 標(biāo)志位為 SYN,ACK. 將確認(rèn)序號(hào)(Acknowledgement Number)設(shè)置為客戶的I S N加1以.即0+1=1, 如下圖

image

數(shù)據(jù)包的關(guān)鍵屬性如下:

Seq = 0 :初始建立值為0,表示當(dāng)前還沒(méi)有發(fā)送數(shù)據(jù)

Ack = 1:表示當(dāng)前端成功接收的數(shù)據(jù)位數(shù),雖然客戶端沒(méi)有發(fā)送任何有效數(shù)據(jù),確認(rèn)號(hào)還是被加1,因?yàn)榘琒YN或FIN標(biāo)志位。(并不會(huì)對(duì)有效數(shù)據(jù)的計(jì)數(shù)產(chǎn)生影響,因?yàn)楹蠸YN或FIN標(biāo)志位的包并不攜帶有效數(shù)據(jù))

第三次握手的數(shù)據(jù)包

客戶端再次發(fā)送確認(rèn)包(ACK) SYN標(biāo)志位為0,ACK標(biāo)志位為1.并且把服務(wù)器發(fā)來(lái)ACK的序號(hào)字段+1,放在確定字段中發(fā)送給對(duì)方.并且在數(shù)據(jù)段放寫(xiě)ISN的+1, 如下圖:

image

數(shù)據(jù)包的關(guān)鍵屬性如下:

ACK :標(biāo)志位,表示已經(jīng)收到記錄

Seq = 1 :表示當(dāng)前已經(jīng)發(fā)送1個(gè)數(shù)據(jù)

Ack = 1 : 表示當(dāng)前端成功接收的數(shù)據(jù)位數(shù),雖然服務(wù)端沒(méi)有發(fā)送任何有效數(shù)據(jù),確認(rèn)號(hào)還是被加1,因?yàn)榘琒YN或FIN標(biāo)志位(并不會(huì)對(duì)有效數(shù)據(jù)的計(jì)數(shù)產(chǎn)生影響,因?yàn)楹蠸YN或FIN標(biāo)志位的包并不攜帶有效數(shù)據(jù))。

就這樣通過(guò)了TCP三次握手,建立了連接。開(kāi)始進(jìn)行數(shù)據(jù)交互

[圖片上傳失敗...(image-343fec-1669374018939)]

下面針對(duì)數(shù)據(jù)交互過(guò)程的數(shù)據(jù)包進(jìn)行一些說(shuō)明:

image

數(shù)據(jù)包的關(guān)鍵屬性說(shuō)明

Seq: 1

Ack: 1: 說(shuō)明現(xiàn)在共收到1字節(jié)數(shù)據(jù)

image

Seq: 1
Ack: 951: 說(shuō)明現(xiàn)在服務(wù)端共收到951字節(jié)數(shù)據(jù)

在TCP層,有個(gè)FLAGS字段,這個(gè)字段有以下幾個(gè)標(biāo)識(shí):SYN, FIN, ACK, PSH, RST, URG。如下

image
其中,對(duì)于我們?nèi)粘5姆治鲇杏玫木褪乔懊娴奈鍌€(gè)字段。它們的含義是:SYN表示建立連接,F(xiàn)IN表示關(guān)閉連接,ACK表示響應(yīng),PSH表示有DATA數(shù)據(jù)傳輸,RST表示連接重置。

Wireshark分析常用操作

調(diào)整數(shù)據(jù)包列表中時(shí)間戳顯示格式。調(diào)整方法為View -->Time Display Format --> Date and Time of Day。調(diào)整后格式如下:

[圖片上傳失敗...(image-e610b4-1669374018939)]

參考文檔

(1)wireshark抓包詳細(xì)圖文教程

出處:https://www.cnblogs.com/linyfeng/p/9496126.html

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,401評(píng)論 6 531
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,011評(píng)論 3 413
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事。” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 175,263評(píng)論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 62,543評(píng)論 1 307
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 71,323評(píng)論 6 404
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 54,874評(píng)論 1 321
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 42,968評(píng)論 3 439
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 42,095評(píng)論 0 286
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,605評(píng)論 1 331
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 40,551評(píng)論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 42,720評(píng)論 1 369
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,242評(píng)論 5 355
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 43,961評(píng)論 3 345
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 34,358評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 35,612評(píng)論 1 280
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 51,330評(píng)論 3 390
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 47,690評(píng)論 2 370

推薦閱讀更多精彩內(nèi)容