1. 程式人生 > >抓包工具wireshark使用 mac

抓包工具wireshark使用 mac

共四部分

  1.wireshark簡介

  2.wireshark mac版安裝

  3.wireshark 抓取普通http

  4.高階應用

 

1.wireshark 簡介(百度百科)

  Wireshark(前稱Ethereal)是一個網路封包分析軟體。網路封包分析軟體的功能是擷取網路封包,並儘可能顯示出最為詳細的網路封包資料。Wireshark使用WinPCAP作為介面,直接與網絡卡進行資料報文交換。

  網路封包分析軟體的功能可想像成 "電工技師使用電錶來量測電流、電壓、電阻" 的工作 - 只是將場景移植到網路上,並將電線替換成網路線。在過去,網路封包分析軟體是非常昂貴的,或是專門屬於盈利用的軟體。Ethereal的出現改變了這一切。在GNUGPL通用許可證的保障範圍底下,使用者可以以免費的代價取得軟體與其原始碼,並擁有針對其原始碼修改及客製化的權利。Ethereal是目前全世界最廣泛的網路封包分析軟體之一。

  網路管理員使用Wireshark來檢測網路問題,網路安全工程師使用Wireshark來檢查資訊安全相關問題,開發者使用Wireshark來為新的通訊協定除錯,普通使用者使用Wireshark來學習網路協定的相關知識。當然,有的人也會“居心叵測”的用它來尋找一些敏感資訊……

  Wireshark不是入侵偵測系統(Intrusion Detection System,IDS)。對於網路上的異常流量行為,Wireshark不會產生警示或是任何提示。然而,仔細分析Wireshark擷取的封包能夠幫助使用者對於網路行為有更清楚的瞭解。Wireshark不會對網路封包產生內容的修改,它只會反映出目前流通的封包資訊。 Wireshark本身也不會送出封包至網路上。

 

2.wireshark mac版安裝

  我用的mac系統是10.12,網路上有人說需要安裝一些X11或者是XQuartz的,我自己嘗試下載安裝並不需要安裝其他元件,下載網址: http://www.pc6.com/mac/112232.html

  一直點下一步就好了,安裝後開啟:

 

3.wireshark 抓取普通http報文

  點選左上角的鯊魚頭就可以開始捕獲包了,介面包含了三部分內容:

第一塊:分組的列表項,很多,有序號、時間、源地址、目的地址、協議、長度等

第二塊:具體的某個分組的詳細資訊,具體對應網路分層,每一行資訊自己看,截個圖

第三塊:以二進位制顯示,可以不用管

 

可以看到現在已經有一些密密麻麻的資料流記錄了,不過都不是我們需要的, 先做一個post訪問再過濾

sts-MacBook-Pro:~ garfield$ curl -l -H "Content-type: application/json" -X POST -d '{"header": {"requestTime": "2018100910320000","requestSeq": "e379853d-d93e-4249-b9be-8a272b","appId": "bc1f4a2a995b47db9018031801984857"},"content": {"duration": "300","idCard": "350123199502150000sfsdafwjdhsjofwofnsdfnjdwfnew1561651dsfsdnklndsjfn1165165165fdsfhweufwehfjdsnfiefenf350123199502150000sfsdafwjdhsjofwofnsdfnjdwfnew1561651dsfsdnklndsjfn1165165165fdsfhweufwehfjdsnfiefenf350123199502150000","expressParam": "expressParamexpressParaexpres","name": "name","isPic": "0","availableTimes": "5"}}{"header": {"requestTime": "2018100910320000","requestSeq": "e379853d-d93e-4249-b9be-8a272b","appId": "bc1f4a2a995b47db9018031801984857"},"content": {"duration": "300","idCard": "350123199502150000sfsdafwjdhsjofwofnsdfnjdwfnew1561651dsfsdnklndsjfn1165165165fdsfhweufwehfjdsnfiefenf350123199502150000sfsdafwjdhsjofwofnsdfnjdwfnew1561651dsfsdnklndsjfn1165165165fdsfhweufwehfjdsnfiefenf350123199502150000","expressParam": "expressParamexpressParaexpres","name": "name","isPic": "0","availableTimes": "5"}}' http://10.1.4.34:8080/post

做完後在過濾條件中加入條件,意思是目標網址為10.1.4.34:

ip.dst == 10.1.4.34

意思是,目標ip地址為10.1.4.34,得到:

點開協議為http的訪問,從訪問的具體資訊中可以看到傳送到10.1.4.34

同理,用ip.src == 10.1.4.34 能夠看到對方返回的物件.

過濾條件有很多種,比較簡單的是輸入"ip."之後會提示的當前頁面存在的欄位,如"ip.addr,ip.proto等",具體擴充套件可以點開右邊的"Exprission"按鈕,會展示很多欄位

只不過大多欄位看不懂,且平時用不到,以後再探究吧

 

4.高階應用

1.wireshark可以對包,流量,時間進行分析,具體在頭頂的statistic中:

可以得到多種資料分析圖

I/O graph是流量圖,裡面還可以進行過濾,計算等:

最後一行我自定義新增的圖,可以自定義顏色和風格等.

其他圖表有全流程時間表(round-trip graphs),包長度(package length)分析等,感覺不實用,以後再記

2.資料包跟蹤

提取出兩個應用之間的通訊,比如我用手機QQ和電腦QQ通訊,得到的資料流右鍵跟蹤:

得到完整報文,雙色標識來往包資料:

可以儲存檢視包內容,這裡因為是QQ包,被處理後無法識別而已,不過可以看見我QQ號~~~

待續...