1. 程式人生 > 其它 >Wireshark零基礎使用教程(超詳細)

Wireshark零基礎使用教程(超詳細)

一、Wireshark是什麼

Wireshark是使用最廣泛的一款「開源抓包軟體」,常用來檢測網路問題、攻擊溯源、或者分析底層通訊機制。

它使用WinPCAP作為介面,直接與網絡卡進行資料報文交換。

二、Wireshark抓包原理

Wireshark使用的環境大致分為兩種,一種是電腦直連網際網路的單機環境,另外一種就是應用比較多的網際網路環境,也就是連線交換機的情況。

「單機情況」下,Wireshark直接抓取本機網絡卡的網路流量;
「交換機情況」下,Wireshark通過埠映象、ARP欺騙等方式獲取區域網中的網路流量。

  • 埠映象:利用交換機的介面,將區域網的網路流量轉發到指定電腦的網絡卡上。
  • ARP欺騙:交換機根據MAC地址轉發資料,偽裝其他終端的MAC地址,從而獲取區域網的網路流量。

三、Wireshark安裝入門。

安裝完成後,我們學習一下快速抓包。

1. 選擇網絡卡

開啟 Wireshark 後,會直接進入「網絡卡選擇介面」,WLAN 是我連線無線的網絡卡,我們抓一下這個網絡卡的流量,雙擊網絡卡名,自動開始抓包。

2. 停止抓包

點選左上角的「紅色按鈕」,可以停止抓包

3. 儲存資料

點選右上角的「檔案」,選擇「儲存」,可以儲存抓包的資料


也可以直接點選工具欄的儲存按鈕

四、介面介紹


Wireshark 的主介面包含6個部分:

  1. 選單欄:用於除錯、配置
  2. 工具欄:常用功能的快捷方式
  3. 過濾欄:指定過濾條件,過濾資料包
  4. 資料包列表:核心區域,每一行就是一個數據包
  5. 資料包詳情:資料包的詳細資料
  6. 資料包位元組:資料包對應的位元組流,二進位制

五、基礎操作

接下來,我們學習一下Wireshark常用的操作。

1. 調整介面大小

工具欄中的三個「放大鏡」圖示,可以調整主介面資料的大小。

從左到右依次是:放大、縮小、還原預設大小。

2. 設定顯示列

資料包列表是最常用的模組之一,列表中有一些預設顯示的列,我們可以新增、刪除、修改顯示的列。

1)新增顯示列

想要在資料列表中顯示某一個欄位,可以將這個資料欄位新增至顯示列中。
左鍵選中想要新增為列的欄位,右鍵選擇「應用為列」


選中欄位,按 Ctrl + Shift + I ,也可以實現同樣的效果。

新增為列的欄位會在資料列表中顯示。

2)隱藏顯示列

暫時不想檢視的列,可以暫時隱藏起來。
在顯示列的任意位置右鍵,取消列名的「勾選」,即可隱藏顯示列。

3)刪除顯示列

不需要檢視的欄位,可以從顯示列中刪除。
右鍵需要刪除的列,點選最下方的「Remove this Column」


注意:隱藏欄位時,在列名欄的任意位置右鍵即可;而刪除欄位時,需要在指定的列名位置右鍵,以防誤刪。

3. 設定時間

資料包列表欄的時間這一列,預設顯示格式看起來很不方便,我們可以調整時間的顯示格式。
點選工具欄的「檢視」,選擇「時間顯示格式」,設定你喜歡的格式。

4. 標記資料包

對於某些比較重要的資料包,可以設定成高亮顯示,以達到標記的目的。
選中需要標記的資料包,右鍵選擇最上面的「標記/取消標記」


選中資料包,按 Ctrl + M 也可以實現同樣的效果,按兩次可以取消標記。

5. 匯出資料包

演示快速抓包時,我們講過儲存資料包的操作,儲存操作預設儲存所有已經抓取的資料包。但有時候,我們只需要儲存指定的資料包,這時候可以使用匯出的功能。

1)匯出單個數據包

選中資料包,點選左上角的「檔案」,點選「匯出特定分組」


「匯出分組介面」,選擇第二個 「Selected packets only」,只儲存選中的資料包。

2)匯出多個數據包

有時候我們需要匯出多個數據包,Wireshark有一個匯出標記的資料包的功能,我們將需要匯出的資料包都標記起來,就可以同時匯出多個數據包。

點選左上角的「檔案」,點選「匯出特定分組」


「匯出分組介面」,勾選第三個 「Marked packets only」,只匯出標記的資料包。

6. 開啟混雜模式

區域網的所有流量都會發送給我們的電腦,預設情況下,我們的電腦只會對自己mac的流量進行解包,而丟棄其他mac的資料包。
開啟混雜模式後,我們就可以解析其他mac的資料包,因此,我們使用Wireshark時,通常都會開啟混雜模式。

點選選單欄的「捕獲」按鈕,點選「選項」


勾選 在所有介面上使用混雜模式。

六、過濾器操作

過濾器是Wireshark的核心功能,也是我們平時使用最多的一個功能。

Wireshark提供了兩個過濾器:抓包過濾器 和 顯示過濾器。兩個過濾器的過濾思路不同。

  1. 抓包過濾器:重點在動作,需要的包我才抓,不需要的我就不抓。
  2. 顯示過濾器:重點在資料的展示,包已經抓了,只是不顯示出來。

1. 抓包過濾器

抓包過濾器在抓包前使用,它的過濾有一個基本的語法格式:BPF語法格式。

1)BPF語法

BPF(全稱 Berkeley Packet Filter),中文叫伯克利封包過濾器,它有四個核心元素:型別、方向、協議 和 邏輯運算子。

  1. 型別Type:主機(host)、網段(net)、埠(port)
  2. 方向Dir:源地址(src)、目標地址(dst)
  3. 協議Proto:各種網路協議,比如:tcp、udp、http
  4. 邏輯運算子:與( && )、或( || )、非( !)

四個元素可以自由組合,比如:

  • src host 192.168.31.1:抓取源IP為 192.168.31.1 的資料包
  • tcp || udp:抓取 TCP 或者 UDP 協議的資料包

2)使用方式

使用抓包過濾器時,需要先停止抓包,設定完過濾規則後,再開始抓包。

停止抓包的前提下,點選工具欄的捕獲按鈕,點選選項。


在彈出的捕獲選項介面,最下方的輸入框中輸入過濾語句,點選開始即可抓包。


提示:抓包過濾器的輸入框,會自動檢測語法,綠色代表語法正確,紅色代表語法錯誤。

2. 顯示過濾器

顯示過濾器在抓包後或者抓包的過程中使用。

1)語法結構

顯示過濾器的語法包含5個核心元素:IP、埠、協議、比較運算子和邏輯運算子。

  1. IP地址:ip.addr、ip.src、ip.dst
  2. 埠:tcp.port、tcp.srcport、tcp.dstport
  3. 協議:tcp、udp、http
  4. 比較運算子:> < == >= <= !=
  5. 邏輯運算子:and、or、not、xor(有且僅有一個條件被滿足)

5個核心元素可以自由組合,比如:

  • ip.addr == 192.168.32.121:顯示IP地址為 192.168.32.121 的資料包
  • tcp.port == 80 :顯示埠為 80 的資料包

2)使用方式

在過濾欄輸入過濾語句,修改後立即生效。


提示:過濾欄有自動糾錯功能,綠色表示語法正確,紅色表示語法錯誤。

轉自:點選領取 https://www.dianjilingqu.com/