TCP/IP 抓包分析

TCP + IP 數據包格式:

應用層->TCP->IP->網絡接口層

TCP層數據包結構:TCP頭部+實際數據 (TCP頭包括源和目標主機端口號、順序號、確認號、校驗字等)

 

1TCP包頭內存佔用24byte:

源主機端口號      (2bytes)

目標主機端口號    (2bytes)

序號              (4bytes)

確認序號          (4bytes)

數據偏移          (4bits)

保留              (6bits)

URG/ACK/PSH/

RST/SYN/FIN       (6bits)

窗口              (2bytes)

校驗和            (2bytes)

緊急指針          (2bytes)

選項              (3bytes)

 

IP層數據包結構 IP頭部+TCP數據信息(IP頭包括源和目標主機IP地址、類型、生存期等)

 

2IP包頭內存佔用(20-24bytes):

版本號             (4bits)       IPv4-0100 IPv6-0110

IP包頭長度         (4bits)       4字節爲單位   總長度=包頭長度*4

服務類型           (1byte)

IP包總長           (2bytes)    

標識符             (2bytes)    

標記               (3bits)

分段序號           (13bits)

生存時間           (1byte)     

協議               (1byte)

頭部校驗           (2bytes)

源主機IP地址       (4bytes)    

目標IP地址         (4bytes)

可選項          

 

網絡接口層   :幀頭+IP數據包+幀尾 (幀頭包括源和目標主機MAC地址及類型,幀尾是校驗字)

3.內存佔用:

源主機MAC地址         (6bytes)

目標主機MAC地址       (6bytes)

類型                  (2bytes)          

 

協議名

協議號

  本  描  述

IP

0

互連網協議

ICMP

1

互連網消息協議

GGP

3

網關——網關協議

TCP

6

傳輸控制協議

EGP

8

外部網關協議

UDP

17

用戶數據報協議

Xns_IDP

22

Xerox NS IDP

rdp

27

可靠數據流協議

rvd

66

MIT遠程虛擬磁盤

1:常見的TCP/IP協議號 

 

 

端口號

關鍵字

  本  描  述

7

Echo

回波

9

Discard

丟棄

11

Users

活動的用戶

13

Daytime

日期

15

Netstat

網絡狀態

20

ftp

Port方式

21

ftp

文件傳輸協議

23

Telnet

遠程登錄

25

SMTP

電子郵件

37

Time

時間

43

Nicname

別名查詢

69

TFTP

普通文件傳送協議

79

Finger

用戶信息查詢

80

HTTP

超文本傳輸協議

101

Hostname

NIC主機名服務

110

POP3

郵局協議離線協議標準

2:專用程序端口號

 

 例一:訪問192.168.1.51截下的一下握手包

0000  00 24 81 0d f3 30 4a 42 08 00 00 00 08 00 45 00

0010  00 3c 1c 60 40 00 40 06 99 fc c0 a8 01 dc c0 a8

0020  01 33 0a c5 00 50 07 2d af f0 00 00 00 00 a0 02

0030  16 d0 37 13 00 00 02 04 05 b4 04 02 08 0a ff ff

0040  b3 90 00 00 00 00 01 03 03 01

幀頭:

目標主機 Mac:      00 24 81 0d f3 30

源主機Mac:         4a 42 08 00 00 00

處理類型:          IP協議(ETHERNET V2)

IP(20字節):

版本號             4  IPV爲4

IP包頭長度         5  IP包頭爲20字節

IP包總長           60 IP包(包頭)+TCP包爲60字節

標識符             0x1c60

標記               4000>>13  

分段序號           4000&0x1fff

生存時間           0x40

協議               6  上層TCP

頭部校驗           0x99fc

源主機IP地址       c0 a8 01 dc -  192.168.1.220

目標IP地址         c0 a8 01 33 -  192.168.1.51

TCP(24):

源主機端口號       0x0ac5

目標主機端口號     0x0050

序號               0x072daff0 發送的第一字節的序號

確認序號           0x00000000

數據偏移           0xa002>>12 = 0xa 數據區偏移40字節同時得到選項長度                 0xa002>>6&0x3f = 0x0

URG/ACK/PSH/ 

RST/SYN/FIN        0xa002&0x3f = 0x2

窗口               0x16d0

校驗和             0x3713

緊急指針           0x0000   

選項               可變長度 IP總長度-IP包頭-20爲當前選項和數據的長度

 例二:訪問192.168.1.51截獲的一次HTTP請求包

 

0000  00 24 81 0d f3 30 4a 42  08 00 00 00 08 00 45 00  

0010  01 1e 26 df 40 00 40 06  8e 9b c0 a8 01 dc c0 a8  

0020  01 33 0a c7 00 50 06 54  95 42 2b 42 d2 b1 80 18  

0030  0b 68 2b 5e 00 00 01 01  08 0a ff ff b3 9a 00 00 

0040  00 00 47 45 54 20 2f 69  6e 64 65 78 2e 67 69 66 

0050  20 48 54 54 50 2f 31 2e  31 0d 0a 48 6f 73 74 3a  

0060  20 31 39 32 2e 31 36 38  2e 31 2e 35 31 0d 0a 41   

0070  63 63 65 70 74 3a 20 2a  2f 2a 0d 0a 52 65 66 65  

0080  72 65 72 3a 20 68 74 74  70 3a 2f 2f 31 39 32 2e  

0090  31 36 38 2e 31 2e 35 31  0d 0a 55 73 65 72 2d 41  

00a0  67 65 6e 74 3a 20 4d 6f  7a 69 6c 6c 61 2f 34 2e  

00b0  30 20 28 63 6f 6d 70 61  74 69 62 6c 65 3b 20 4d  

00c0  53 49 45 20 36 2e 30 3b  20 45 49 53 20 69 50 61  

00d0  6e 65 6c 20 32 2e 30 20  3b 20 41 52 4d 39 32 36  

00e0  29 0d 0a 41 63 63 65 70  74 2d 45 6e 63 6f 64 69 

00f0  6e 67 3a 20 69 64 65 6e  74 69 74 79 0d 0a 43 6f  

0100  6e 6e 65 63 74 69 6f 6e  3a 20 63 6c 6f 73 65 0d  

0110  0a 50 72 6f 78 79 2d 43  6f 6e 6e 65 63 74 69 6f  

0120  6e 3a 20 63 6c 6f 73 65  0d 0a 0d 0a   

 

幀頭:

目標主機 Mac:    00 24 81 0d f3 30

源主機Mac:       4a 42 08 00 00 00

處理類型:        IP協議(ETHERNET V2)

IP(20字節):

版本號           0x45>>4

IP包頭長度       0x45&0xf    5*4=20字節

服務類型         0x00

IP包總長         0x011e     IP+數據)

 

標識符           0x26df

標記             4000>>13  

分段序號         4000&0x1fff

生存時間         0x40

協議             6  上層TCP

頭部校驗         0x8e9b

源主機IP地址     c0 a8 01 dc -  192.168.1.220

目標IP地址       c0 a8 01 33 -  192.168.1.51

TCP(24):

源主機端口號     0x0ac7

目標主機端口號   0x0050

序號             0x06549542

確認序號         0x95422b42

數據偏移         0x8018>>12 = 0x8(數據區偏移爲32字節)

保留             0x8018>>6&0x3f = 0x0

URG/ACK/PSH/ 

RST/SYN/FIN      0x8018&0x3f = 0x18

窗口             0x0b68

校驗和           0x2b5e

緊急指針         0x0000   

選向             01 01 08 0a ff ff b3 9a 00 00 00 00(32-20)字節

數據區  

47 45 54 20 2f 69  6e 64 65 78 2e 67 69 66 

0050  20 48 54 54 50 2f 31 2e  31 0d 0a 48 6f 73 74 3a  

0060  20 31 39 32 2e 31 36 38  2e 31 2e 35 31 0d 0a 41   

0070  63 63 65 70 74 3a 20 2a  2f 2a 0d 0a 52 65 66 65  

0080  72 65 72 3a 20 68 74 74  70 3a 2f 2f 31 39 32 2e  

0090  31 36 38 2e 31 2e 35 31  0d 0a 55 73 65 72 2d 41  

00a0  67 65 6e 74 3a 20 4d 6f  7a 69 6c 6c 61 2f 34 2e  

00b0  30 20 28 63 6f 6d 70 61  74 69 62 6c 65 3b 20 4d  

00c0  53 49 45 20 36 2e 30 3b  20 45 49 53 20 69 50 61  

00d0  6e 65 6c 20 32 2e 30 20  3b 20 41 52 4d 39 32 36  

00e0  29 0d 0a 41 63 63 65 70  74 2d 45 6e 63 6f 64 69 

00f0  6e 67 3a 20 69 64 65 6e  74 69 74 79 0d 0a 43 6f  

0100  6e 6e 65 63 74 69 6f 6e  3a 20 63 6c 6f 73 65 0d  

0110  0a 50 72 6f 78 79 2d 43  6f 6e 6e 65 63 74 69 6f  

0120  6e 3a 20 63 6c 6f 73 65  0d 0a 0d 0a


原出處:http://blog.sina.com.cn/ybstudio

發佈了43 篇原創文章 · 獲贊 33 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章