了解使用wireshark抓包工具

了解使用wireshark抓包工具

一、簡介

1、什么是wireshark

百度:

Wireshark(前稱Ethereal)是一個網絡封包分析軟件。網絡封包分析軟件的功能是擷取網絡封包,并盡可能顯示出最為詳細的網絡封包資料。Wireshark使用WinPCAP作為接口,直接與網卡進行數據報文交換。

在過去,網絡封包分析軟件是非常昂貴的,或是專門屬于盈利用的軟件。Ethereal的出現改變了這一切。在GNUGPL通用許可證的保障范圍底下,使用者可以以免費的代價取得軟件與其源代碼,并擁有針對其源代碼修改及客制化的權利。Ethereal是目前全世界最廣泛的網絡封包分析軟件之一。

開源軟件,用GPL協議發行,所以可以免費在任意數量機器上使用

2、主要應用

幫助管理員解決網絡問題

幫助安全工程師用來檢測安全隱患

開發人員用來測試協議執行情況

用來學習網絡協議

等等。

3、特性

跨平臺支持windows/unix平臺

在接口實時抓包

能詳細顯示包的詳細協議信息

可以打開/保存捕捉的包

可以導入導出其他程序支持的包數據格式

可以通過多種方式過濾包

多種方式查找包

通過過濾以多種彩色顯示包

創建多種統計分析。。。

4、多種網絡接口

可以捕捉多種網絡接口,甚至無線局域網接口

5、哪些事情不能做?

不能用作入侵檢測系統,不會處理網絡事務,僅是監視網絡,不會發送網絡包或做其他交互的事情,但可以做名稱解析

二、使用wireshark

1、打開后看到的第一頁面,這里就稱為初始頁面吧

image

2、怎么樣開始抓包

通過捕獲選項

上面的初始頁面,有兩個入口可以點擊一個是在main工具欄,一個是中間位置的captrue options

image

點擊captrue options圖標》彈出網卡如多網卡指定抓包網卡》開始抓包

image

3、wireshark窗口的介紹

wireshark主要分為7個界面

主菜單

菜單頁面包括file、edit、view、go、capture、analyze、statistics、help

main工具欄

一些快捷導航,比如capture,開始,停止等等

過濾器

指定需要捕獲所需要的條件,比如源地址/目標地址

封包列表

已經捕獲到的封包,有源地址/目標地址,端口;顏色的不同代表不同的

封包詳情

顯示封包中的各字段

16禁止數據

顧名思義

地址欄

地址欄及一些雜項

image

4、過濾條件

通過集中表達式規則進行過濾

1)protocols

比如tcp,ether,fddi,ip,arp,rarp,decnet,lat,sca,moprc,mopdl,tcp and udp

2)direction

src,dst,src and dst,src or dst(不指定就是雙向)

3)host(新版,老版本沒有host)

net,port,host,portrange

4)logical openrations邏輯運算

and,or,not(下面有官方實例)

5、過濾關系

1)組合表達式

Table 6.6. Display Filter Logical Operations

English C-like Description and example
:-- :-- :--
and && Logical AND. ip.src==10.0.0.5 and tcp.flags.fin
or || Logical OR. ip.scr==10.0.0.5 or ip.src==192.1.1.1
xor ^^ Logical XOR. tr.dst[0:3] == 0.6.29 xor tr.src[0:3] == 0.6.29
not ! Logical NOT. not llc
[…?] See “Slice Operator” below.
in See “Membership Operator” below.

2)運算符號

參考官方https://www.wireshark.org/docs/wsug_html/#DispCompOps

Table 6.5. Display Filter comparison operators

English C-like Description and example
eq == Equal. ip.src==10.0.0.5
ne != Not equal. ip.src!=10.0.0.5
gt > Greater than. frame.len > 10
lt < Less than. frame.len < 128
ge >= Greater than or equal to. frame.len ge 0x100
le <= Less than or equal to. frame.len ? 0x20
contains Protocol, field or slice contains a value. sip.To contains "a1762"
matches ~ Protocol or text field match Perl regualar expression. `http.host matches "acme.(org com net)"`
bitwise_and & Compare bit field value. tcp.flags & 0x02

6、常見過濾需求

1)、數據鏈路層

mac地址過濾

eth.addr==00:0c:29:1c:8b:39

eth.src==00:0c:29:1c:8b:39

eth.dst==00:0c:29:1c:8b:39

2)、網絡層

ip地址過濾

ip.addr==192.168.216.51

ip.src==192.168.216.51

ip.dst==192.168.216.51

3)、傳輸層

tcp/udp

tcp.prot==80

tcp.dstport==80

tcp.srcport==80

4)、應用層

http.request.uri contains ".php"

5)、wireshark支持篩選的還有很多協議,這里不一一列舉,請查看官方文檔

udp、tcp、arp、icmp、smtp、pop、dns、ip、ssl、http、ftp、telnet、ssh、rdp、rip、ospf

6)、協議參數過濾

tcp.flags.syn==0x02 顯示包含syn標志位的數據包

frame.len==119 整個數據包長度,從eth開始到最后

http.request.method=="get" 顯示http請求中method值為get的包

7)、邏輯條件組合篩選

||

&&

!

組合條件“與”

ip.src==192.168.216.51&&ip.dst==192.168.216.52

組合條件“或”

ip.src==192.168.216.51||ip.src==192.168.216.52

組合條件“非”

!(ip.src==192.168.216.51)

三、新版本差異

新版和老版本是存在很多差異的如

1、示例1-mac

image
image

2、示例2-ip

image

3、示例3-tcp

image

4、示例4-http

image

四、分析tcp三次握手

1、三次握手簡單圖示

image

2、第一次握手

客戶端請求建立連接,發送請求包,標志位SYN,序號為0

image

3、第二次握手

服務端返回確認,標志位SYN,ACK,設置初始序列號Y=0, X+1=0+1=1,這個就是acknowledgement number了(確認序號)

image

4、第三次握手

客戶端收到服務器發來的確認號正確,客戶端再次發送確認ACK,SYN標志位為0,ACK標志位是1,確認序號=y+1=0+1,發送序號位x+1=1,服務器收到確認序號值與ack=1連接建立成功,開始傳輸數據

image

五、四次揮手

四次揮手即tcp斷開連接得時候會有四次揮手得過程

為什么需要四次揮手那?

因為tcp協議是一種面向連接的、可靠的、基于字節流的傳輸層通信協議,并且是全雙工模式,需要兩邊連接全部關閉,此tcp會話才算完全關閉,四次揮手使得tcp連接能夠可靠的終止,還有timed_wait也使得連接終止后網絡上殘余的發送給該連接的數據被丟棄而不至于被新連接接收,這種方式也更安全

1、圖示四次揮手

image

2、抓包示例揮手協議圖示

image

3、第一次揮手

屬性:

ACK+FIN:標志位

Seq=23:序列號

ACK=29:接收的序列號+SYN包,也就是確認的序號

第一次揮手,客戶端給服務器發送tcp包,用來關閉客戶端到服務器的數據傳輸,發送FIN ACK報文 seq=23 ack=29

image

4、第二次揮手

第二次揮手,服務器收到FIN,發回一個ACK,Seq=29,ack=23

image

5、第三次揮手

服務端關閉和客戶端連接,發送一個FIN,seq=24,ack=29

image

6、第四次揮手

第四次揮手,客戶端收到服務器發送的FIN后,發回ACK確認,確認序號加1,就是30,這里就完全斷開連接了。

image

Memo

本文轉載整理來自:https://www.cnblogs.com/zhangxingeng/p/11200063.html

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,882評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,208評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事?!?“怎么了?”我有些...
    開封第一講書人閱讀 175,746評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,666評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,477評論 6 407
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,960評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,047評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,200評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,726評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,617評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,807評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,327評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,049評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,425評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,674評論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,432評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,769評論 2 372