802.11抓包分析
1.实验目的
分析802.11协议,了解802.11的帧格式
2.实验环境及工具
操作系统:ubuntu 实验工具:WireShark
3.实验原理
(1)802.11MAC层数据帧格式:
Bytes 2 2 6 6 6 2 0-2312 4
Frame Duration Address 1 Address 2 Address SequencData Check control (recipient) (transmitter) 3 e sequence Version Type Subtype To From More Retry Pwr. More Protected Order =00 =10 DS DS Frag. mgt. data Bits 2 2 4 1 1 1 1 1 1 1 1
Version:表明版本类型,现在所有帧里面这个字段都是0
Type:指明数据帧类型,是管理帧,数据帧还是控制帧,00表示管理帧,01表示控制帧,10
表示数据帧
Subtype:指明帧的子类型 ,Data=0000,Data+CF-ACK=0001,Data+CF-Poll=0010,
Data+CF-ACK+CF-Poll=0011,Nulldata=0100,CF-ACK=0101, CF-Poll=0110,Data+CF-ACK+CF-Poll=0111,QoS Data=1000, Qos Data+CF-ACK=1001,QoS Data+CF-Poll=1010, QoS Data+CF-ACK+CF-Poll=1011,QoS Null =1100,
QoS CF-ACK=1101,QoS CF-Poll=1110,QoS Data+CF-ACK+CF-Poll=1111
To DS/From DS:这两个数据帧表明数据包的发送方向,分四种情况:
若数据包To DS为0,From DS为0,表明该数据包在网络主机间传输 若数据包To DS为0,From DS为1,表明该数据帧来自AP 若数据包To DS为1,From DS为0,表明该数据帧发送往AP 若数据包To DS为1,From DS为1,表明该数据帧是从AP发送往AP More flag.:置1表明后面还有更多段
Retry:置1表明这个以前发送一帧的重传 Pwr mgt.:置1表明发送发进入节能模式
More data:置1表明发送发还有更多的帧需要发送给接收方,当AP缓存了处于省电模式下
的网络主机的数据包时,AP给该省电模式下的网络主机的数据帧中该位为1,否则为0
Protected:置1表明该帧的帧体已经被加密
Order:置1告诉接收方高层希望严格按照顺序来处理帧序列 Duration:通告本帧和其确认帧将会占用信道多长时间
Address 1:发送方地址 Address 2:接收地址 Address 3:远程端点 Sequence:帧的编号
Data:有效载荷,长度可达2312字节 Check Sequence:CRC校验码
(2)802.11控制帧,每种控制帧的帧格式不一样,以RTS帧为例说明
Bytes 2 2 6 6 4
Frame Duration Receiver Transmitter Check control Address Address sequence Version Type Subtype To From More Retry Pwr. More Protected Order =00 =01 =1011 DS DS Frag. =0 mgt. Data =0 =0 =0 =0 =0 =0 Bits 2 2 4 1 1 1 1 1 1 1 1
Version:表明版本类型,现在所有帧里面这个字段都是0
Type:指明数据帧类型,是管理帧,数据帧还是控制帧,00表示管理帧,01表示控制帧,10表示数据帧
Subtype:指明数据帧的子类型,Power Save(PS)-Poll(省电轮询)
=1010,RTS=1011,CTS=1100,ACK=1101,CF-End(无竞争周期结束)=1110,CF-End(无竞争周期结束)+CF-ACK(无竞争周期确认)=1111,Block ACK=1001,
控制帧的To DS 至Order除Pwr.mgt.外必然为0 Receiver Address:接收方地址
Transmitter Address:发送发地址,CTS和ACK没有该字段 Check sequence:校验码
(3)管理帧,
Bytes 2 2 6 6 6 2 0-2312 4
Frame Duration Destination control Address Version Type Subtype To From More Retry Pwr. More Protected Order =00 =00 DS DS Frag. =0 mgt. Data =0 =0 =0 Bits 2 2 4 1 1 1 1 1 1 1 1 Version:表明版本类型,现在所有帧里面这个字段都是0
Type:指明数据帧类型,是管理帧,数据帧还是控制帧,00表示管理帧,01表示控制帧,10表示数据帧
Subtype:指明数据帧的子类型,
Association Request(关联请求)=0000, Association Response (关联响应)=0001, Reassociation Request(重关联请求)=0010, Reassociation Response(重关联响应)=0011, Probe Request(探测请求)=0100, Probe Response(探测响应)=0101, Beacon(信标帧)=1000, ATIM(通知传输指示信息)=1001, Disassociation(解除关联)=1010, Authentication(身份验证)=1011, Deauthentication(解除身份验证)=1100
管理帧的To DS 与From DS均为0,其余Frame Control字段意义与数据帧一致 Destination Address:目的地址 Source Address:源地址
BSSID:基本服务集ID, 用于过滤收到的MAC帧(在基础型网络里为工作站所关联的AP的MAC地址)
Sequence:帧序列号
Address Check sequence:校验码
Source Address BSSID Sequence Data Check sequence 4.实验步骤
1.配置wireshark,启动monitor mode,抓取wifi的数据包,如下图
2.分析抓取到的wifi数据包
5.实验结果及分析
1.数据帧
(1)数据帧
Version ,Type 和Subtype的08H,即00001000,后两位00,表明协议版本为0,倒数3、4位10 表明这是一个数据帧,前四位0000是subtype。
Frame control 后8位0AH,即00001010。 To DS=0,From DS=1,表明该数据帧来自AP。More frag=0,表明这是该帧的最后一段,Retry=1,表明这是重传帧,Pwr. Mgt.=0,表明发送方没有进入节能模式;More data=0表明没有更多的帧,即No data buffered .Protected=0,表明没有加密,Order=0,表明没有严格的顺序要求。
Duration位为d500,低位为00,高位为d5,所以持续时间为00d5H=213微秒。Address 1 =0022698ea744,接收方的MAC地址;Address 2= 0611b51a0a05,发送发地址,即AP地址;Address 3= 00005e00040a,远程远端地址;Sequence=3032,高位为32,低位为30,即 0011 0010 0011 0010,段号为0,帧号为0011 0010 0011B=803D,Check sequence=23093131H, 检测结果为正确。
(2)上图帧紧接着的下一个数据帧