Wireshark的數(shù)據(jù)包截獲與協(xié)議分析_第1頁
Wireshark的數(shù)據(jù)包截獲與協(xié)議分析_第2頁
Wireshark的數(shù)據(jù)包截獲與協(xié)議分析_第3頁
Wireshark的數(shù)據(jù)包截獲與協(xié)議分析_第4頁
Wireshark的數(shù)據(jù)包截獲與協(xié)議分析_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

Wireshark的數(shù)據(jù)包截獲與協(xié)議分析1引言在數(shù)據(jù)包的截獲方面,Winpcap是一個可在Windows環(huán)境下運行的包俘獲結構,它由三部分組成:一個數(shù)據(jù)包截獲驅(qū)動程序、一個底層動態(tài)鏈接庫(Packet.dll)和一個高層靜態(tài)鏈接庫(wpcap.lib)。它的核心部分是數(shù)據(jù)包俘獲驅(qū)動程序,在WindowsNT/2000系統(tǒng)中,它實現(xiàn)為一個內(nèi)核驅(qū)動程序(packet.sys),在Windows95/98系統(tǒng)中是一個虛擬設備驅(qū)動程序(packet.vxd),包俘獲驅(qū)動程序通過NDIS(NetworkDriverInterfaceSpecification)同網(wǎng)絡適配器的驅(qū)動程序進行通信,NDIS是網(wǎng)絡代碼的一部分,它負責管理各種網(wǎng)絡適配器以及在適配器和網(wǎng)絡協(xié)議軟件之間的通信。在庫的高層是一個動態(tài)鏈接庫(packet.dll)和一個靜態(tài)鏈接庫(wpcap.lib),這兩個庫的作用是將俘獲應用程序同包俘獲驅(qū)動程序相隔離,屏蔽低層的實現(xiàn)細節(jié),避免在程序中直接使用系統(tǒng)調(diào)用或IOCTL命令,為應用程序提供系統(tǒng)獨立的高層接口(API函數(shù)),從而在Windows9x、Windows2000/XP系統(tǒng)下,對驅(qū)動程序的系統(tǒng)調(diào)用都是相同的。使用Winpcap,我們可以編寫出用于網(wǎng)絡協(xié)議實驗分析、故障診斷、網(wǎng)絡安全和監(jiān)視等各種應用程序,這方面的一個典型例子就是可在Windows系統(tǒng)下運行的Wireshark,Wireshark和Winpcap都可從網(wǎng)上下載,通過Wireshark我們可以從網(wǎng)上攔截數(shù)據(jù)包并對數(shù)據(jù)包進行網(wǎng)絡協(xié)議分析,下面介紹一個分析實例。2數(shù)據(jù)包的截獲與鏈路層協(xié)議分析Wireshark安裝完成后,單擊它的Capture—Start菜單,打開俘獲選項對話框,在這些選項中比較重要的是設置混雜模式(Promiscuousmode)選項,選中這個選項使得網(wǎng)卡并不檢驗數(shù)據(jù)幀的目的地址,從而它可以截獲網(wǎng)上的任何幀,其他選項可用默認設置,再單擊OK按鈕即可進行數(shù)據(jù)包截獲,截獲的數(shù)據(jù)幀分別在Wireshark的包列表(PacketList)、包細節(jié)(PacketDetails)和包字節(jié)(PacketBytes)三個窗口中顯示。依次顯示了這三個窗口的部分內(nèi)容,最上面的包列表窗口按俘獲的順序顯示出幀的一般信息,如被俘獲的時間、包的協(xié)議類型等。當應用層的數(shù)據(jù)通過網(wǎng)絡協(xié)議棧(如TCP/IP協(xié)議棧)到達物理層傳輸時,各層協(xié)議都要在數(shù)據(jù)包上封裝一個報頭,而中間的包細節(jié)窗口就從低層到高層顯示出數(shù)據(jù)包的各層協(xié)議信息,在下面的包字節(jié)窗口上,則以十六進制和ASCII碼顯示了被截獲數(shù)據(jù)包的詳細內(nèi)容。1.數(shù)據(jù)鏈路層的分析數(shù)據(jù)鏈路層一般采用以太網(wǎng)的IEEE802.3標準。其中數(shù)據(jù)部分包括了更高層的協(xié)議內(nèi)容,由于前導碼被網(wǎng)絡硬件用于接收信號的同步,因此Wireshark已從數(shù)據(jù)幀中去掉了前導碼,在的包細節(jié)窗口中,顯示出幀的頭部信息,可以讀出這個幀的目的物理地址為00:90:1a:40:2a:d0,源物理地址為00:e0:4c:82:22:6b。幀類型是0x8864,它表示PPPOE會話,在ADSL寬帶網(wǎng)接入中,數(shù)據(jù)鏈路層通常要包括這種在以太網(wǎng)上的點到點協(xié)議(PPPOE)。包字節(jié)窗口中緊跟著高亮顯示的幀頭部就是幀的數(shù)據(jù)區(qū)和CRC校驗碼,并未顯示幀數(shù)據(jù)區(qū)的全部。3網(wǎng)絡層協(xié)議的分析網(wǎng)絡層協(xié)議在TCP/IP中包括網(wǎng)間互聯(lián)協(xié)議(IP)消息控制協(xié)議、(ICMP)路由信息協(xié)議、(RIP)等,它要實現(xiàn)地址解析及路由管理等功能,IP協(xié)由議中的數(shù)據(jù)報格式可以分析出版本號為4,即這個數(shù)據(jù)報為IPv4,報頭長度20字節(jié),服務類型00表示是普通數(shù)據(jù)包,數(shù)據(jù)報總長度886字節(jié),標識為0x3e06,當數(shù)據(jù)報需要分片傳送時,這個域用來指出接收到的數(shù)據(jù)片屬于哪一個數(shù)據(jù)報,標志04表示該報文不分片,片偏移為0,生存時間128,協(xié)議域06表示上層協(xié)議是TCP,頭部校驗和0xcce3表示正確,源IP地址是11,目的IP地址為78,包字節(jié)窗口中的數(shù)據(jù)區(qū)顯示了上層協(xié)議的TCP段內(nèi)容。4傳輸層協(xié)議的分析TCP/IP的傳輸層協(xié)議包括用戶數(shù)據(jù)報協(xié)議(UDP)、傳輸控制協(xié)議(TCP)等,TCP要在IP服務上提供可靠的、面向連接的字節(jié)流傳輸,它是以數(shù)據(jù)段(segment)的形式交換數(shù)據(jù),忽略選項后的數(shù)據(jù)段格式從包細節(jié)窗口可看出,TCP源端口號1140,目的端口號80,其中80是HTTP協(xié)議的保留端口號,在包字節(jié)窗口中顯示出序列號的實際值是0x000af00b,但它等于本次連接的初始序號加上報文第一個字節(jié)在整個數(shù)據(jù)流中的序號,因此包細節(jié)窗口顯示了相對于建立連接的初始握手序列號的相對值1,圖中的下一序列號847就意味著數(shù)據(jù)區(qū)長度是846字節(jié)。同理確認號的相對值也為1,頭部長度20字節(jié),標志位0x0018指示ACK標志為1,表明確認號有效,PSH為1表示接收方將數(shù)據(jù)不做緩存,將接收到的數(shù)據(jù)立即傳輸給應用層。窗口字段指示發(fā)送方想要接收的最大字節(jié)數(shù)為8484,這個域用于進行流量控制,校驗和0x1168表明正確。協(xié)議頭部以后顯示了本層協(xié)議的數(shù)據(jù)區(qū)。5應用層協(xié)議的分析TCP/IP的應用層協(xié)議通常包括文件傳輸協(xié)議(FTP)、簡單郵件傳輸協(xié)議(SMTP)、超文本傳輸協(xié)議(HTTP)等等,使用Wireshark也可方便地對它們進行分析,例如對于HTTP協(xié)議,可查看客戶端的GET、POST等請求方法、請求頭內(nèi)容、請求數(shù)據(jù),服務器端應答的狀態(tài)行、響應頭、響應數(shù)據(jù)等,具體分析方法與上面類似,這里不再重復。ASSIC第0?32號及第127號(共34個)是控制字符或通訊專用字符,如控制符:LF(換行)、CR(回車)、FF(換頁)、DEL(刪除)、BEL(振鈴)等;通訊專用字符:SOH(文頭)、EOT(文尾)、ACK(確認)等;第33?126號(共94個)是字符,其中第48?57號為0?9十個阿拉伯數(shù)字;65?90號為26個大寫英文字母,97?122號為26個小寫英文字母,其余為一些標點符號、運算符'號等OAscnW控制字符ASCI[值控制字符ASCIlil控制字符ASCHli控制字符0NUT32(space)64辟961SOH336SA57a2STX34tf66B98b3ETX35#67C99c4EOT365ED100dSENQ37%69E101e6ACK38&70F102f7BEL39r71G103g8BS40(72H104h9HT41)73I10510LF42*74J10611VT43+75K107k12FF44f76L108113CR4577M109m14so464>7EN110n15SI47f79O111o16DLE48a80P112p17DCI牯181Q113qIBDC350282R114r19DC3513B3XUSs20DC4524S4T116tKIAl/EQC1911-J■■24CAN56888X120X25EM57989Y121V26SUB5890Z122z27ESC5991E123<28FS60<92¥124129GS6193i125y30RS62>94A126z31US63?95127DELNUL提T垂直制表SOH幅超并始FF走齦控制ETB偉懸組傳送雄束STX正文開始CR回車CAN作度ETX正文結束so移位輸出EM維盡EOY傳輸蟾稟S1移位輸入SUB換薰ENQ詢問字符DLE空格ESC換碼DC1設備控制1FS文宇分隔符BEL報警DC2設備控制2GS組分隔符BS退一格DC3設備控制3RS記錄分隔符HT橫向列表DC4設備控制4NAK否定US單元分?隔符DEL刪除三次握手抓包過程分析首先來一張三次握手經(jīng)典圖解客戶端TCP三次握手客戶端服務端客戶端發(fā)送湖報文,并置發(fā)送序號為XSYN=1ACK=X+1=YloV服務端發(fā)送必熾蔑報文,并置發(fā)送序號為Y,在確汶序號為X+1客戶端發(fā)送戢K報文,并置發(fā)送序號為乙在確認序號為Y+1

ACK=Y+1=Z下面使用wireshark實際分析三次握手過程打開wireshark,打開瀏覽器輸入網(wǎng)址/hello_yz并訪問;停止捕獲,紅方塊。不停止的話后面一直抓一直抓;在封包列表中可以找到下圖數(shù)據(jù):4.8513480055DB-LSP-1.56Dropb%Protocol4.8605160002UDPport:58179915.43O557OO20UDP324SOUPC<925.4490490000TCP?+—.&6,49854S€fl=0Wln=8192Len=0MSS=1460WS=4SACK_PERM=1935.45312200002TCP66http-alt>49854[SYN,ACK]Seq=OAck=lWin=32767Len=0MSS=1460SACK_PERM=1WS=2048945.4531740000TCP5449854>http-alt[ACK]Seq=lAck=lwin=66792Len=0955.4536O3OO00HTTP8GEThttp:

在圖中可以看到,訪問/hello_yz網(wǎng)站過程中,wireshark截獲到了三次握手的三個數(shù)據(jù)包,第四個包才是http的。這也說明http確實是使用TCP建立連接的。下面進行三個數(shù)據(jù)包的詳細分析。首先對封包詳細信息分析說明選中一條TCP協(xié)議數(shù)據(jù)包,它的封包詳細信息如下圖:Transmi5sioncontrolProtocoltsrcPort:49B53(49853)PDstPort:http(8Sourceport:49853(4985B)Destinationport:http(80)Streamindex:6]equencenumber:1Cr^!?1vesequencenymber)know!edgmencnurftber:1(relativeacknumber)erlength:20byresgs:0x010(mk)dowsizeva)ue:16652Iculatedwindowsizjf:66608]dowsizescalingractor:4][val/dationdisablied]第一次握手數(shù)據(jù)包,可以看到客戶端發(fā)送一個TCP,標志位為SYN,序列號為0,代表客戶端請求建立連接。如下圖:

國Frame92:66bytesonwire(528bits),66bytescaptured(528bits)oninterface0EEthernetII,src:Elitegro_61:32:2c(74:27:ea:61:32:2c),Dst:Al1-H5RP-routers_70(00:00:0c:07:ac:70)SinternetProtocolversion4ssrc:2(2)sDSt:00C00)日TransmissionControlProtocol,SrcPort:49854(49854),DstPort:http-alt(80S0),Seq:0,Len:0Sourceport:49854(49854)Destinationport:http-alt(8080)[stireaminidex:7][sequiermnumbe『:0十vesequencenumber)Headerlength:32田[.Flags:0區(qū)。田[.Flags:0區(qū)。02(5YN)[calculatedwindowsize:8192]Schecksum:0xa8d2[validationdisabled]Eoptions:(12bytes),Maximumsegmentsize,No-operation(nop),windowscale,No-operation(nop),no-第二次握手數(shù)據(jù)包,可以看到服務器發(fā)回確認包,標志位為田Frame93:66bytesonwire(528bits),66bytescaptured(528bits)oninterface0?EthernetII,Src:cisco_63:79:45(10:8c:cf:63:79:45),Dst田Frame93:66bytesonwire(528bits),66bytescaptured(528bits)oninterface0?EthernetII,Src:cisco_63:79:45(10:8c:cf:63:79:45),Dst:Elitegro_61:32:2c(74:27:ea:61:32:2c)+internetProtocolVersion4,src:00(00),Dst:2(2)EtransmissioncontrolProtocol,srcPort:http-alt(8080),DstPort:49854(49854),Seq:0,Ack:1,Len:0sourceport:http-alt(8080)Destinationport:49854(49854)[streamindex:7]sequencenumber:0(relativesequencenumber)Acknowledgmentnumber:1(relati

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論