WireShark簡介
WireShark是一個網絡封包分析軟件。網絡封包分析軟件的功能是截取網絡的封包,並盡可能顯示出最為詳細的網絡封包資料。WireShark使用WinPCAP作為接口,直接與網卡進行數據報文交換。
WireShark的應用
- 網絡管理員使用WireShark來檢測網絡的問題
- 網路安全工程師使用WireShark來檢查咨詢安全相關問題
- 開發者使用WireShark來為新的通訊協議除錯
- 普通使用者使用WireShark來學習網絡協議的相關知識
WireShark快速分析數據包技巧
- 確定WireShark的物理位置。如果沒有一個正確的位置,啟動WireShark后會花費很長的時間捕獲一些和自己無關的數據
- 選擇捕獲接口。一般都是選擇連接到Internet網絡接口,這樣才可以捕獲到與網絡相關的數據。否則,捕獲到的其他數據對自己也沒有任何幫助。
- 使用捕獲過濾器。通過設置捕獲過濾器,可以避免產生過大的捕獲數據。這樣用戶自分析數據時,也不會受其他數據干擾。而且,還可以為用戶節約大量的時間。
- 使用顯示過濾器。通常使用捕獲過濾器過濾后的數據,往往還是很復雜。為了使過濾的數據包再更細致,此時使用顯示過濾器進行過濾。
- 使用着色規則,通常使用捕獲過濾器過濾后的數據,都是有用的數據包。如果想要更加突出的顯示某個會話,可以使用着色規則高亮顯示。
- 構建圖表。如果用戶想要更明顯的看出一個網絡中數據變化情況,使用圖表的形式可以很方便的展現數據分布情況。
- 重組數據。當傳輸較大的圖片或文件時,需要將信息分布在多個數據包中。這時候就需要使用重組數據的方法來抓取完整的數據。WireShark的重組功能,可以重組一個會話中不同數據包的信息,或者是重組一個完整的圖片或文件。
常見協議包
- ARP協議
- ICMP協議
- TCP協議
- UDP協議
- DNS協議
- HTTP協議
- FTP協議
使用WireShark進行抓包
混雜模式介紹
混雜模式就是接受所有經過網卡的數據包,包括不是發給本機的包,即不驗證MAC地址。普通模式下網卡只接收發給本機的包(包括廣播包)傳遞給上層程序,其他的包一律丟棄。一般來說,混雜模式不會影響網卡的正常工作,多在網絡監聽工具上使用。
WireShark的過濾器使用
開始混雜模式來做一下感受,再次捕獲,在所有接口上使用混雜模式就可以直接進行抓包了。
捕捉ip是36.152.44.96的發送和接受的包
用過濾器篩選TCP的數據包
用過濾器篩選ARP的數據包
用過濾器篩選UDP的數據包
我們使用過濾器輸入“upd”以篩選出udp報文。但是輸入udp之后,會出現多種協議,原因是oicq以及dns都是基於udp的傳輸層之上的協議。
擴展:客戶端向DNS服務器查詢域名,一般返回的內容都不超過512字節,用UDP傳輸即可。不用經過三次握手,這樣DNS服務器負載更低,響應更快。理論上說,客戶端也可以指定向DNS服務器查詢時用TCP,但事實上,很多DNS服務器經行配置的時候,僅支持UDP查詢包。
- ip.src_host == 192.168.112.131 表示源ip地址
- ip.dst_host == 192.168.112.1 表示目標地址
- 我們中間用or進行了拼接,表示或;當然我們也可以使用and表示與
使用WireShark對常用協議抓包並分析原理
常用協議分析---ARP協議
地址解析協議(Address Resolution Protocol),是一個通過解析網絡層地址來尋找數據鏈路層地址的網絡傳輸協議,它在IPv4中及其重要。ARP是通過網絡地址來定位MAC地址。
常用協議分析---ICMP協議