您好,欢迎来到意榕旅游网。
搜索
您的当前位置:首页wiresharkTcpUdp抓包分析

wiresharkTcpUdp抓包分析

来源:意榕旅游网
Wireshark

抓包分析

CONTENTS

5 TCP协议抓包分析 5.1 TCP协议格式及特点 5.2实例分析 6 UDP协议的抓包分析 6.1 UDP报文格式及特点 6.2流媒体播放时传输层报文分析

Word资料

5 TCP协议抓包分析

5.1 TCP协议的格式及特点

行 D ...... 4 ...... S.. 1D ......... 16

-1 I ... 源端口 « STCpO27t

…确认号 .&ck_非q

目的端口. dst-poit.....

2 .......... . ...... . 序列号,吕卯 .............. ......... .......

4 首部长度|.保留(6). . |R|C|S|S|¥|1| .......... window

・,・》*>■*・

L A P R S F >■*・*・ I ■ »*>■*・*・ I ■ b * H * I- -fa ■■ I I- k- k- 4- I- -fa

|

..doff., > |. . ■ . *. . G K H T \\ X . ........ ......... .... .............. ....

5 ................. 校验和.ch«ck^ ...... .......................................... 紧急指针.|

I .......... 迭项 ........................... 填充字节一.|

图1 TCP协议报头格式

源端口:数据发起者的端口号; 目的端口:数据接收方的端口号;32bit序 列号,标识当前数据段的唯一性;32bit的确认号,接收数据方返回给发送方的 通知;TCP头部长度为20字节,若TCP头部的Options选项启用,则会增加首 部长度,因此TCP是首部变长的传输层协议;Reserved、Reserved、Nonce、CWR、 ECN-Echo:共6bit,保留待用。

URG: 1bit紧急指针位,取值1代表这个数据是紧急数据需加速传递,取值 0代 表这是普通数据;

ACK: 1bit确认位,取值1代表这是一个确认的TCP包,取值0则不是确认包;

PSH: 1bit紧急位,取值1代表要求发送方马上发送该分段,而接收方尽快的将 报文交给应用层,不做队列处理。取值 0阿迪表这是普通数据;

RST: 1bit重置位,当TCP收到一个不届于该主机的任何一个连接的数据,则向 对方发一个复位包,此时该位取值为1,若取值为0代表这个数据包是传给自己 的; SYN: 1bit请求位,取值1代表这是一个TCP三次握手的建立连接的包,取值为 0就代表是其他包;

FIN: 1bit完成位,取值1代表这是一个TCP断开连接的包,取值为0就代表是 其他包;

Window Size : 16bit窗口大小,表示准备收到的每个 TCP数据的大小;

Checksum: 16bit的TCP头部校验,计算TCP头部,从而证明数据的有效性; Urgent Pointer : 16bit紧急数据点,当功能bit中的URG取值为1时有效;

Options : TCP的头部最小20个字节。如果这里有设置其他参数,会导致头部增 大; Padding :当TCP头部小于20字节时会出现,不定长的空白填充字段,填充容 都是0,但是填充长度一定会是32的倍数;

Data:被TCP封装进去的数据,包含应用层协议头部和用户发出的数据。

5.2请求网页文件时传输层报文分析

下面结合具体的 Wireshark的抓包分析TCP报文的特点。如图2所示

IrariLiis^lfln Conrrol Frctoccl, Src Fori; iLpsin: .1S6&。,DET Pcit: hTip 以。i, S*q: G, L«n: 0 恿 □,? : 11 ps i nc (19^/ 目的怀口号:htm・0O) .5*reai] in;ex; 0.

Scqjtn^e n^ubsr; 3

Header length: 32 fcytes tJ Mass: Cte02 3心)

■ T^lative ^ctjjcnce nunb:r>

000 ...................... = Reserved: Not set

_ 0 ....................... = Ncunce: Not set

....。-…,...=Cocifcst i un Vindov, Reduced (CVR) : Not srt

一一,,0.. *... = EC^-Echc: Not set ….,,.0. ..,. - Ur取砒:Xbt set

................ C ,.. . = AcknorTled^eneiit: Kot set

... ........... 0.,. 一 FusJi: N©t set

--+ .,, -. - Q, + = : Kot set …,.……。=Fin; Nel ter 订海河: 3192

niecksum:队了理照 [validation di^aM^d' 1 Options; (12 bytrs)

)la^inua scincnt SLEC: 14€0 b\"tcs NOF

Winds’ ;寸旦1B; 2 inultiply ay 4) NOP NOF

TCP SACK FerrnRred Option: True

图2 TCP协议中请求建立连接

首先,注意到该报文的SYN字段为1,因此该报文为建立连接的报文。 窗口 个数为8192。Option字段中指明了最长字段长度为1460字节

Iran:flii£5:on Comrol Frot^tol, Src Port: st:p (83),处i Port: li^incl 匚969), SECI: 0r Ack: 1. Len: Q 源的口号:http < 50) effiaa^:iipfiinci(i969) :Stre与m 1] CSE典.,v 0 . H . P . B.. = NIOTCC ; Not set . 0 = Con&^sTion Tin GOT Reduced (CW): Not set 「….0 ............... ... 二 ECN-icho; XDI set

一(X 日… m Urgent」此t sut .=;\"1= 如:千5?1福鼓11日顷《<£> .・.・■.一 ・・□... = Push: Net

「二■土 .■,・_* ■ 0. ■ = RewuT;_NcH 5蚌T 曰… = Svii:

LEzpcrt In.fG (.Chia'i ■- SequentrJ : Conxie^ tioiu establ Ish ac knofflcd^e (SYN\"AC?! : =crver port ht tp_ iMe = 5£.^^ : Conne-ct ion rst abl i sh. acknOTled^r, {SYK-ACKJ : Errv-r pert hitp2 'Severity level:匚hat: _CT二up: Sequence\"

…….-“ ..B 工。二 FIn: Not set Fz ndo-ff size: S192

u Checksan: OK53ac [vfilidation disabled! =i Qpt ion:: (lz trtes)

/alHiruci stetent size: 13B0 tyies XOP NOF

图3服务器返回请求建立连接的确认

图3表示出了服务器向用户返回请求建立连接报文的确认字段, 其中SYN为 1, ACK为1。传送的数据序列号为0。窗口大小仍然为8192。图3即为TCP协 议建立连接过程中的三次握手中的第二次握手。

Tmiiirsloa Csnrrol Frcrocol, 5rc Fort;

谆 lipslnc: (1969)

目的■□号:http (BO) [5LHE f h : 1 . 1 巽qu(1969J. Crt Port: 3V:D 茂0* SSQ: 1, Ack: 1, Len: C

朗g miibem 1 (reLailHequem匚宣 nuaibEr 胃 a F1BI>: Oi:G (ACK)

000* …

0.

r

Hf■pTjtn: TO b\"『-

= Rtacrvcd: 5砒 s?t

D,

=ycnce: Ng MI

=CDDEesTio^ Tindo- r.=c^ced -ECS-Echo: XcT set =Ltgemt: ?(ct set

=AckuCTwlcdgEncnt z ScT =Not get ~

.TT15

.V

-:二二& set a __

=i 如i

iet _. . 7b_.pin: Not ^'index'兵M: iW56「

3 CbKkiti^ oiiTLTS [Validation disabled] 王'SEC' ACE 3^1dlrp;l:'

图4建立连接的“第三次握手”

上图中,图2、图3、图4代表了 TCP协议建立连接时的三次握手。同时, 从图4中可以看出窗口长度是一个变量。并且首部长度字段为 字段

TrarLsmlsslon Cotitrfll Prototol, Src Part: 11^9Lncl (19fl9h Dfit Pori: httj ugj 7也好虹: 0

■fi

ilipsiriil'.1969:

WNWCZ号;把T?郁。】

20,没有option

上TTciiin index: 1]

Sequence ftunit-ri: TQfi re:aTl;e jequence ntnber

4

^cknai'ledvciiicnt nunber; E;6 relative ack nubci\"

Hesjcrlcnnth: TC \"s thclJ

(FIN, ACK)

000, ................. = Reserved^ Not set

…。 .......................

-Nonce: Net set

ConfCition ftindzw Keztd (t^E. : Nct i-rt ECN-EtM: Not sei [frgent: NOT set

,・

Aw kn口si取I?宣■宣nt E Set

+ ri a * i! 4 Ii - ■

0i! ■ ■

*・・■■■ B i a- *■ r ^3 ■ n ・・■■■ ・・■!!■ ■‘・ 0 a ,

'■ , , ■■ ■ J ■ , ■,■ ~

Viodm size; .1E2B5

Pu-Ehi Not “t

Reset: :tot set Sym Xpi set

-Fin- 5eT>

K. _ LJ, ■ 5

J

i Ch^ilcsut: Jrtstfi lYalidflticin 出遂

〃 iBHQ-调:anal: :1 -i

Trinsmissian Central Frctcefll, Srt Port: hits 的m, Dst Pert. Iip3:n=l (1 驻mK_.__箜尹 27Gr A;k: TpJ二>“ 0 天凭匚 目即 St口号 illpslncl 1BW) [StredM index; 1L sequence numtcr: rclB^i^c sequence nvmccr: kncrl ad jemen t numb e r !■ 707 i reZBTive ack nuMber' HeadeT leagihi 20 b.tem ODO a. K a x Ke^trved; Net set

■ ■一

0 •一土 OKII 板1

ACK

Non;e: Ntit set

Conge si ion Ifndo^1 deduced (CTR3: Not 珀 T ECN-Echo: Not sei trffent s Kot ACt

Ac kn QTI edigri ent Set

_

■ rCL_

S\"z: Not set FL扫:Noi ?t Ee^et: Not 5&t 1 = Pin: S«T T

7indCT size: 7050 ffl Checksm.b 0x92L 3 [vdlidailor; dljabled]

图5 TCP关闭连接的过程

~ranonl55i.cn Control FroToecl, Src Pert: Ilr'lncl (19F91T DST Porr : HTJ (501707, ALU^^TTPLen: 0

站 MO-^:lla£lnjcl<1969.:

旦的厦口号:httpCeo)

'Stieam. indcTt: 1]

Sequence nun^er; 707 ■relative sequence nunbcr1 AckiiGTlcdgw?nt nontcr; 277 (relative ack inniibcr

Header Length: 20 b^tes

Flags: CtelO OCO. . .............. = Reserved: JCot set

.* * 0

…,一

« B a u« ■ Nance; JSct set

CL … ……■ Cange^Tlan Window Reduced (Cli'R} ■ HE set

—二一 —0 ° …―MH

set

in; Noi sei

-7EknEledgeaent; Set

二+

・*,・

+…,…土

*・・■ 0・-F = Push: Kat set

F....・・..0.. = Reset: Kot ser »., . »... .. 0. = Syn 2 Kct sei

_ 0 = Finr 阮t set

Cinder size: 16385

-Chet k^dn: O^6eb5 IvalLiitldn dl^dblcd. -:SEQ/ACK

图6 TCP关闭连接时的第三次握手

图5,图6分别是TCP关闭连接时的三次握手。图5中上半部分是用户发起结束 TCP连接的请求报文,同时用户对收到的服务器数据做出响应, 并返回服务器的 请求容。图5中下半部分为服务器的结束连接部分,其余响应与用户相同。图 6 中用户返回最终确认报文,结束连接。

6 UDP协议的抓包分析

6.1 UDP报文格式及特点

图7中给出了 UDP报文格式。可以看出,UDP是一种固定格式的协议,其 头部共64bit,包含4个等长的部分,分别表示原端口号、目的端口号、 文段长度以及校验和

UDP头部格式 UDP报

16-bit source port 16-brt UDP length Data

16-bit destination port 16-bit UDP checksum 图7 UDP协议格式 利用Wireshark抓取流媒体播放时的UDP报文协议如图8所示。协议头部 包含4部分,其中目的端口号为13777,源端口号为:13000,校验和为0x989e, 整个协议长度为:43字节,从数据部分的长度为35字节也可以看出头部为8字 节,刚好是16*4bits。校验和后面[validation disaled]部分意思不明确。

User Datag;rajii Protocol, Src Port: 13000 (13000), Dst Port: 13777 (13777) Source port: 13000 (13000)

Dcstinarion port: L3777 (13777) Length: 43

E Checksum: 0x989e [validation di sabled] Data (35 bytes)

Data: 77020008000100b9e4103f0001D004090o0178dcg4061350... [Length: 35] |

图8 Wireshark UDP 抓包结果

根据UDP首部固定长度的特点,其长度字段最大能表示 65536字节,那么 一个UDP协议最多能够包含的数据长度即为 65528字节。

6.2流媒体播放时传输层报文分析

图9为使用千千静听播放歌曲时 Wireshark所抓数据包的UDP部分。

2637 15, 221250 26 J 3 17.33489} 264D 20. 3脆古吨 2641 30. 4罚打9

192. L6S. 1. JOCI 123. 123,113.135 feBO::£B.?:6586:s£2启 ££02::c ftEO:: cat: &566: ffD2 ::c 192.163. 1. :34 1 虱 18SLL 场 192.163. :. 101 192. 1&8.1.255 f«80 WE 6SS6: d62e ffD2! s c fe8D;:cafl;6366id62e f 印蔚;c fcEC:: CBC:6S66:C;62C ffO Zz:c

192. 1&S. 1- 102 1S2, 166. J. 100 feSC::cae::6566:d62e f切2::c 192. IBS. 1B 100 228. 255. 255- ESC

1&2. l&fl, :. 100

22D. 1&6二& 30 192. Jb^. 1. 100 220.166.18. 30 1 鬼.IB土 :.:睫 220. 165.28.30

U>?

SSDP

SSDP

UDP

Source pori: L3000 11 SEARCH Hllr. 1.1 M-SEARCE1 * HTTF/1.) Scur;e »on: f6J6

DeBTlnsriflr. gt:

13777

Lnailcn port4 6646

2&42 20, S593U

2643 24a 33D977 2Ei6 27. 33M7? 2647 3Q- 3知廿卯 2652 3L 109639 笠W 3*处\"3

265S 35- 492479 2667 3& &fI443 266S 36. 974194 海勺 3&.97?an^

ERE兑ELotal ikster Arc^unEeaent 2011 20Z2O42ZHS.

SSDP M-SE ABCH * HTTF/1. 1

SSDP

55DF UUF 5 SUP 5'EDP

M-SEAHOi * HTTFA,1

M-5EARCH * HTTF/1. I port: SO7S6

M-SE^HCH t HHP/1,1 M-SEAFEH + HTTP/J. I Scarce port: 13000 S匚vice port: 1300D Eeuree MfT: L3QQD Stektce- grt: 1300 D L _ L _ _ port 13000

T Source port: LSO'O

DesTlnaticin port:

P R FT

2M. ]66. 18, SO

192. 1G3. :. :30 220. Ib5. IE. 30

2670 S6.984D9B 192. IBS. I. 100 宜 1 如.I), JO-U 既3U

VHP

LDP

tDF

2672 37. 0*1164

192. 365. 1. :0Q

LBP roF

De st Inst ion p^rl: IhrEt loaticn port:

st ■ nnt i-dn : ^ssilcidtlon p jrt: festitiatictt f; 1 : ??3 IHM 比-r^ri :

-

ZSCOG 13COO 13CO0 13000 13000 13000

图9 \"千千静听'Wireshark抓包结果

观察图10,不难发现一个奇怪现象,在前面几个 UDP协议时本地IP地址是 变动的。同时SSDP以及不知名协议在传输层均是使用 UDP协议。SSDP协议具 体容如图10

Frjjn* 1860: 20S bvits on irt 0664 bi208 byita capturtd (16^4 biia)

EttieiMt II. SK;'QuaRtaM;_13:3d.;2f (ZO:7c :8f; 13:3d:2f)P Dst: IFvGmcait.OO:00:00:0c (3S:33:00:00:Og:£k)

1

Internet PTotcml VVTIIOTII 6B Src: feSO\" * CM:S5&6:dG2e:4al3 CftSO: :c&e:656G:d62e* falS) P Dst: ff02::c (ffG2 : ■ E Us^r Ua ■a gran Frot occl, arc Fort: 5970T 597Q7), Dst Fort: ssdp (19GO)

1

Source pciri: 59?07 (59707)

De^ t inatian port: =sd|p (1SD0*

LeEis-th^l54

Hypeztext Twa三ter FIQIQCSI p M-SEARCH * HTTF/L

Host; :FF02;:;C:;1900\\r\\n

□:T: urn.::Jlicrosoft: ¥indcra-s F二皿

u Rrzciutisn Prct^sc&l: V4: IF-'& :LinkLDCffliL' r 3

Man: *5 5dtP: d 1 sco v er^ \\r \\n MX:. 3 \\r \\BI

\\r\\n

图10 SSDP协议

根据SSDP协议的具体容,除了看出其应该是应用层协议以外,没有其他的 额外信息。但是值得注意的是,UDP长度字段指示为154字节,出去8字节的 首部长度还应该有146字节的数据部分,说明HTP部分就是整个数据字段。

同时还有一个值得注意的现象,如图11所示

Frame 2733: 04 byort wire '.-672 bits.)s 84 bytes captured (i672 bits) Ethernet II, 9toe: Tp^Linkl_22jO6:c4 (f4!ec!3S:22:0€:e4); Dit: Qi:antaMl_l3:3d2 2f (^0:7c:Bf:19:3d:2f) J nt erne t Protocol, Src: LJO, 136.156.171 (H0.166, )56,171), Dst: 192, L63. L 100 (192,166, 1.100) User Daracram Prot:eol. Src Fort: dbeoctrrol-oti: 1158;, U二t Port: 13000 (13C00. Source nori: dbc:n7rcl-on2 1133J

Inuiluii purl: 13C00 U3O8G ~ CheckitEi: 0xD323 Lval IdAtion disfibled] Data (42 b^Ttt)

DM fl: 7 r QOQO @005006224 0 CflO 0 01 c 0013 d£4c c 9c05 c Be ft f.». [Length: 42?

FwaiiM 2734: 92 bytcs 口口 (73C biisj j 92 bvtcs captured (79B bi 气0逍二取n

Ellmnet II, Sre: Quanlalll_5 3:3d:2f (M:7r :flf :lS:3d:2P), Dst: rp-LlnkT_22:06:e4 (f4:n::Sa:22:flB;eU Internet PtotocaL Src: 成 168. LUM) (192.1B& 1,100). Dst: 110. IHEu 15& 171 (110- )86.356.171)

User Dstagram ProtccoL, ETC Pwtf 13000 U300C\\ D3t Perte cibcsntroL-or3 1L58> Scur:e port: 13X0 (130C0)

Desii^ailon pcru dbcontrsl-oni 1155;

n藏Si*

旧 Checkeu■: O^acda [vaZldailon d控able迫

Data (50 by

OBTA: 7700000005()062£4000000240&]!1<±24=(:^^£040£^^ .. [Length: 50?

图11奇怪的现象

图11中奇怪之处已用红色椭圆标出。首先上面的报文是接收报文,下面的

报文是发送报文。首先,就数据部分而言,上下报文只有一个字符的差异e和f, 即1110和1111。同时UDP协议中长度字段之差为8字节刚好为UDP首部长度。 不得不使人猜想,用户乂将服务器发送来的数据加上头部打包发回给服务器。 但 是UDP是无确认机制的服务,如果报文错误,将被直接丢弃不会返回错误的响 应。上图中的现象还有待进一步确认。

总结

通过抓包分析,加深了对TCP建立连接以及关闭连接时三次握手的认识。 但是TCP传输层协议的具体实现过程,由丁抓的包太多没有能够具体分析,因 此对课本的理解还有待加强。 关丁 UDP协议,其校验和后的[validation disabled] 是否能够说明其快速的传输是建立在舍弃最大正确概率的基础上,

这一点仍不是

很活楚。但是在TCP协议抓包时校验和后也出现了同样的字段,是否乂说明是 计算机设置的问题。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- yrrf.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务