日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

抓包mysql协议_Mysql 通信协议抓包分析

發(fā)布時間:2024/9/19 数据库 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 抓包mysql协议_Mysql 通信协议抓包分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

mysql在傳輸層使用的TCP協議。一個TCP payload可能有多個mysql packet。如下圖所示。

TCP head

TCP payload

(mysql packet1, mysql packet2,mysql packet 3...)

下面通過抓包分析其結構。

執(zhí)行如下SQL語句,并抓包:

mysql> show databases;

+--------------------+

| Database |

+--------------------+

| information_schema |

| mysql |

| performance_schema |

| sys |

+--------------------+

4 rows in set (0.00 sec)

client 請求包

PACKET: 75 bytes, wire length 75 cap length 75 @ 2018-10-10 16:17:44.545962 +0800 CST

- Layer 1 (04 bytes) = Loopback{Contents=[2, 0, 0, 0] Payload=[..71..] Family=IPv4}

- Layer 2 (20 bytes) = IPv4{Contents=[..20..] Payload=[..51..] Version=4 IHL=5 TOS=0 Length=71 Id=0 Flags=DF FragOffset=0 TTL=64 Protocol=TCP Checksum=0 SrcIP=172.24.232.150 DstIP=172.24.232.150 Options=[] Padding=[]}

- Layer 3 (32 bytes) = TCP{Contents=[..32..] Payload=[..19..] SrcPort=51905 DstPort=3306(mysql) Seq=1194291158 Ack=850183053 DataOffset=8 FIN=false SYN=false RST=false PSH=true ACK=true URG=false ECE=false CWR=false NS=false Window=9352 Checksum=10648 Urgent=0 Options=[TCPOption(NOP:), TCPOption(NOP:), TCPOption(Timestamps:462864359/462163474 0x1b96bfe71b8c0e12)] Padding=[]}

- Layer 4 (19 bytes) = Payload19 byte(s)

tcp:&{{[202 193 12 234 71 47 111 214 50 172 195 141 128 24 36 136 41 152 0 0 1 1 8 10 27 150 191 231 27 140 14 18] [15 0 0 0 3 115 104 111 119 32 100 97 116 97 98 97 115 101 115]} 51905 3306(mysql) 1194291158 850183053 8 false false false true true false false false false 9352 10648 0 [202 193] [12 234] [TCPOption(NOP:) TCPOption(NOP:) TCPOption(Timestamps:462864359/462163474 0x1b96bfe71b8c0e12)] [] [{1 1 []} {1 1 []} {8 10 [27 150 191 231 27 140 14 18]} {0 0 []}] {}}

tcp payload:[15 0 0 0 3 115 104 111 119 32 100 97 116 97 98 97 115 101 115]

前4個字節(jié)是mysql packet head.

前3個字節(jié)表示mysql payload 長度15個字節(jié):

15 0 0

第4個字節(jié)0,表示序列號0

第5個字節(jié)開始是mysql payload body,3表示查詢COM_QUERY

接著后面的字節(jié)(ASCII碼),就是具體的查詢語句(即show databases):

115 104 111 119 32 100 97 116 97 98 97 115 101 115

mysql server返回的結果

首先是ACK,其中不包含mysql packet。

PACKET: 56 bytes, wire length 56 cap length 56 @ 2018-10-10 16:17:44.546001 +0800 CST

- Layer 1 (04 bytes) = Loopback{Contents=[2, 0, 0, 0] Payload=[..52..] Family=IPv4}

- Layer 2 (20 bytes) = IPv4{Contents=[..20..] Payload=[..32..] Version=4 IHL=5 TOS=0 Length=52 Id=0 Flags=DF FragOffset=0 TTL=64 Protocol=TCP Checksum=0 SrcIP=172.24.232.150 DstIP=172.24.232.150 Options=[] Padding=[]}

- Layer 3 (32 bytes) = TCP{Contents=[..32..] Payload=[] SrcPort=3306(mysql) DstPort=51905 Seq=850183053 Ack=1194291177 DataOffset=8 FIN=false SYN=false RST=false PSH=false ACK=true URG=false ECE=false CWR=false NS=false Window=12645 Checksum=10629 Urgent=0 Options=[TCPOption(NOP:), TCPOption(NOP:), TCPOption(Timestamps:462864359/462864359 0x1b96bfe71b96bfe7)] Padding=[]}

tcp:&{{[12 234 202 193 50 172 195 141 71 47 111 233 128 16 49 101 41 133 0 0 1 1 8 10 27 150 191 231 27 150 191 231] []} 3306(mysql) 51905 850183053 1194291177 8 false false false false true false false false false 12645 10629 0 [12 234] [202 193] [TCPOption(NOP:) TCPOption(NOP:) TCPOption(Timestamps:462864359/462864359 0x1b96bfe71b96bfe7)] [] [{1 1 []} {1 1 []} {8 10 [27 150 191 231 27 150 191 231]} {0 0 []}] {}}

tcp payload:[]

接著,返回的是結果集。結果集中包括7個mysql packet。下面逐一分析。

PACKET: 215 bytes, wire length 215 cap length 215 @ 2018-10-10 16:17:44.546415 +0800 CST

- Layer 1 (04 bytes) = Loopback{Contents=[2, 0, 0, 0] Payload=[..211..] Family=IPv4}

- Layer 2 (20 bytes) = IPv4{Contents=[..20..] Payload=[..191..] Version=4 IHL=5 TOS=0 Length=211 Id=0 Flags=DF FragOffset=0 TTL=64 Protocol=TCP Checksum=0 SrcIP=172.24.232.150 DstIP=172.24.232.150 Options=[] Padding=[]}

- Layer 3 (32 bytes) = TCP{Contents=[..32..] Payload=[..159..] SrcPort=3306(mysql) DstPort=51905 Seq=850183053 Ack=1194291177 DataOffset=8 FIN=false SYN=false RST=false PSH=true ACK=true URG=false ECE=false CWR=false NS=false Window=12645 Checksum=10788 Urgent=0 Options=[TCPOption(NOP:), TCPOption(NOP:), TCPOption(Timestamps:462864359/462864359 0x1b96bfe71b96bfe7)] Padding=[]}

- Layer 4 (159 bytes) = Payload159 byte(s)

tcp:&{{[12 234 202 193 50 172 195 141 71 47 111 233 128 24 49 101 42 36 0 0 1 1 8 10 27 150 191 231 27 150 191 231] [1 0 0 1 1 75 0 0 2 3 100 101 102 18 105 110 102 111 114 109 97 116 105 111 110 95 115 99 104 101 109 97 8 83 67 72 69 77 65 84 65 8 83 67 72 69 77 65 84 65 8 68 97 116 97 98 97 115 101 11 83 67 72 69 77 65 95 78 65 77 69 12 33 0 192 0 0 0 253 1 0 0 0 0 19 0 0 3 18 105 110 102 111 114 109 97 116 105 111 110 95 115 99 104 101 109 97 6 0 0 4 5 109 121 115 113 108 19 0 0 5 18 112 101 114 102 111 114 109 97 110 99 101 95 115 99 104 101 109 97 4 0 0 6 3 115 121 115 7 0 0 7 254 0 0 34 0 0 0]} 3306(mysql) 51905 850183053 1194291177 8 false false false true true false false false false 12645 10788 0 [12 234] [202 193] [TCPOption(NOP:) TCPOption(NOP:) TCPOption(Timestamps:462864359/462864359 0x1b96bfe71b96bfe7)] [] [{1 1 []} {1 1 []} {8 10 [27 150 191 231 27 150 191 231]} {0 0 []}] {}}

tcp payload:[1 0 0 1 1 75 0 0 2 3 100 101 102 18 105 110 102 111 114 109 97 116 105 111 110 95 115 99 104 101 109 97 8 83 67 72 69 77 65 84 65 8 83 67 72 69 77 65 84 65 8 68 97 116 97 98 97 115 101 11 83 67 72 69 77 65 95 78 65 77 69 12 33 0 192 0 0 0 253 1 0 0 0 0 19 0 0 3 18 105 110 102 111 114 109 97 116 105 111 110 95 115 99 104 101 109 97 6 0 0 4 5 109 121 115 113 108 19 0 0 5 18 112 101 114 102 111 114 109 97 110 99 101 95 115 99 104 101 109 97 4 0 0 6 3 115 121 115 7 0 0 7 254 0 0 34 0 0 0]

mysql packet 1

column count

1 0 0 1 1

前3個字節(jié)定義了payload長度為1。

1 0 0

第4個字節(jié)1,表示序列號1。

第5個字節(jié)開始是payload body,只有1個字節(jié),為1,表示column count 為1.

mysql packet 2

75 0 0 2 3 100 101 102 18 105 110 102 111 114 109 97 116 105 111 110 95 115 99 104 101 109 97 8 83 67 72 69 77 65 84 65 8 83 67 72 69 77 65 84 65 8 68 97 116 97 98 97 115 101 11 83 67 72 69 77 65 95 78 65 77 69 12 33 0 192 0 0 0 253 1 0 0 0 0

列名Database相關信息。

ASCII碼字符(Database)

68 97 116 97 98 97 115 101

mysql packet 3

19 0 0 3 18 105 110 102 111 114 109 97 116 105 111 110 95 115 99 104 101 109 97

類似,前4個字節(jié)定義了payload長度19和序列號3.

接著,payload中可解析出 row 值為 "information_schema"

mysql packet 4

6 0 0 4 5 109 121 115 113 108

類似,前4個字節(jié)定義了payload長度6和序列號4.

接著,payload中可解析出 row 值為 "mysql"

mysql packet 5

19 0 0 5 18 112 101 114 102 111 114 109 97 110 99 101 95 115 99 104 101 109 97

類似,前4個字節(jié)定義了payload長度19和序列號5.

接著,payload中可解析出 row 值為 "performance_schema"

mysql packet 6

4 0 0 6 3 115 121 115

類似,前4個字節(jié)定義了payload長度4和序列號6.

接著,payload中可解析出 row 值為 "sys"

mysql packet 7

7 0 0 7 254 0 0 34 0 0 0

類似,前4個字節(jié)定義了payload長度7和序列號7.

client ACK

不包含mysql packet

PACKET: 56 bytes, wire length 56 cap length 56 @ 2018-10-10 16:17:44.546457 +0800 CST

- Layer 1 (04 bytes) = Loopback{Contents=[2, 0, 0, 0] Payload=[..52..] Family=IPv4}

- Layer 2 (20 bytes) = IPv4{Contents=[..20..] Payload=[..32..] Version=4 IHL=5 TOS=0 Length=52 Id=0 Flags=DF FragOffset=0 TTL=64 Protocol=TCP Checksum=0 SrcIP=172.24.232.150 DstIP=172.24.232.150 Options=[] Padding=[]}

- Layer 3 (32 bytes) = TCP{Contents=[..32..] Payload=[] SrcPort=51905 DstPort=3306(mysql) Seq=1194291177 Ack=850183212 DataOffset=8 FIN=false SYN=false RST=false PSH=false ACK=true URG=false ECE=false CWR=false NS=false Window=9347 Checksum=10629 Urgent=0 Options=[TCPOption(NOP:), TCPOption(NOP:), TCPOption(Timestamps:462864359/462864359 0x1b96bfe71b96bfe7)] Padding=[]}

tcp:&{{[202 193 12 234 71 47 111 233 50 172 196 44 128 16 36 131 41 133 0 0 1 1 8 10 27 150 191 231 27 150 191 231] []} 51905 3306(mysql) 1194291177 850183212 8 false false false false true false false false false 9347 10629 0 [202 193] [12 234] [TCPOption(NOP:) TCPOption(NOP:) TCPOption(Timestamps:462864359/462864359 0x1b96bfe71b96bfe7)] [] [{1 1 []} {1 1 []} {8 10 [27 150 191 231 27 150 191 231]} {0 0 []}] {}}

tcp payload:[]

參考

總結

以上是生活随笔為你收集整理的抓包mysql协议_Mysql 通信协议抓包分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 免费观看a毛片 | 国产日韩欧美激情 | 毛片的网址 | 欧美日本韩国一区二区三区 | 欧美精品激情 | 四虎av网站 | 91国在线啪 | 丰满人妻一区二区三区46 | 理论片大全免费理伦片 | 国产精品s| 国产视频第一页 | 激情小视频在线观看 | 国产乱码在线 | 中文字幕av专区 | av手机天堂网| 日日射射 | 2020av视频| 国产精品久久久久久久天堂 | 国产精品白嫩极品美女视频 | 欧美精品一二三四区 | 久久久久久久久久99 | 国产精品成人无码专区 | 国产真实乱人偷精品 | 国产免费不卡 | 特大黑人巨交吊性xx | 色就是色欧美色图 | 性做爰视频免费播放大全 | www国产| 一二区免费视频 | 色爱AV综合网国产精品 | 欧美大黑bbbbbbbbb在线 | 成人va视频 | 七月丁香婷婷 | 国产精品夜色一区二区三区 | 精品人妻一区二区三区日产乱码 | 强睡邻居人妻中文字幕 | 中文字幕 国产精品 | 亚洲一区精品视频在线观看 | 久久久精品免费观看 | 亚洲卡一卡二 | 四虎在线观看视频 | 国产精品你懂得 | av不卡高清 | 三上悠亚在线一区 | 亚洲理论中文字幕 | 豆花av在线 | 26uuu精品一区二区在线观看 | 老熟妇一区二区三区 | 日韩欧美国产高清91 | 亚洲国产无线乱码在线观看 | 欧美色xxxx | 91国产中文字幕 | av国产在线观看 | 亚洲精品成人a | 在线免费h| 国产一级二级在线 | 这里只有精品999 | 污污视频网站在线免费观看 | 免费av网址在线观看 | 性折磨bdsm欧美激情另类 | 欧美日韩亚洲一区 | 亚洲国产毛片aaaaa无费看 | 国产精品乱子伦 | 老地方在线观看免费动漫 | 91精品视频免费 | 欧美一区二区三区四区视频 | 国产精品自拍片 | 中国免费看的片 | www天天操| 男人天堂一区 | 色噜噜一区二区 | 国产又粗又深又猛又爽又在线观看 | 免费观看的黄色网址 | 欧美丰满熟妇bbbbbb百度 | 热久久网站 | 亚洲一区图片 | 国语对白做受按摩的注意事项 | 免费毛片看片 | brazzers精品成人一区 | 亚洲色婷婷一区二区三区 | 欧美性猛交xxx乱大交3蜜桃 | 韩国电影大尺度在线观看 | 亚洲爱爱视频 | 久久网伊人 | 日本人六九视频 | 五月天婷婷丁香 | www.色网站 | 久久精品国产亚洲av嫖农村妇女 | 天天影视色| 免费在线精品视频 | 天堂中文在线免费观看 | 日韩欧美色图 | 色天天综合 | 亚洲精品毛片av | 最新久久久 | 外国av网站| 欧美日韩不卡一区 | 日韩欧美一二三区 | 国产精品一区二区三区在线免费观看 |