802.11帧的抓取以及分析

更新时间:2023-12-05 03:22:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

802.11帧的抓取以及分析

1. 802.11概述

IEEE 802.11是一个协议簇,主要包含以下规范: 1)物理层规范:802.11b,802.11a,802.11g;

2)增强型MAC层规范:802.11i,802.11r,802.11h等; 3)高层协议规范:802.11f,802.11n,802.11p,802.11s等。

802.11中定义了三种物理层规范,分别是:频率跳变扩展频谱(FHSS)PHY规范、直接序列扩展频谱(DSSS)PHY规范和红外线(IR)PHY规范。

802.11同802.3一样,主要定义了OSI模型中物理层和数据链路层的相关规范,其中数据链路层又可分为MAC子层和LLC子层,802.11与802.3的LLC子层统一由802.2描述。

2. 802.11帧结构分析

2.1一般帧结构

一般802.11MAC帧 Frame control 字段 1)控制字段

*Protocol version:表明版本类型,现在所有帧里面这个字段都是0x00。 *Type:指明数据帧类型,是管理帧,数据帧还是控制帧。

1

*Subtype:指明数据帧的子类型,因为就算是控制帧,控制帧还分RTS帧,CTS帧,ACK 帧等等,通过这个域判断出该数据帧的具体类型。

*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的,也就是说这个是个WDS(Wireless Distribution System)数据帧。

*Moreflag:分片标志,若数据帧被分片了,那么这个标志为1,否则为0。 *Retry:表明是否是重发的帧,若是为1,不是为0。

*PowerManage:当网络主机处于省电模式时,该标志为1,否则为0。

*Moredata:当AP缓存了处于省电模式下的网络主机的数据包时,AP给该省电模式下的网络主机的数据帧中该位为1,否则为0。

*Wep:加密标志,若为1表示数据内容加密,否则为0。 *Order 这个表示用于PCF模式下。

2)Duration/ID(持续时间/标识):表明该帧和它的确认帧将会占用信道多长时间;对于帧控制域子类型为:Power Save-Poll的帧,该域表示了STA的连接身份(AID, Association Indentification)。

3)Address(地址域):源地址(SA)、目的地址(DA)、传输工作站地址(TA)、接收工作站地址(RA),SA与DA必不可少,后两个只对跨BSS的通信有用,而目的地址可以为单播地址(Unicast address)、多播地址(Multicast address)、广播地址(Broadcast address)。 4)Sequence Control(序列控制域):由代表MSDU(MAC Server Data Unit)或者MMSDU(MAC Management Server Data Unit)的12位序列号(Sequence Number)和表示MSDU和MMSDU的每一个片段的编号的4位片段号组成(Fragment Number)。

2.2帧类型

针对帧的不同功能,可将802.11中的MAC帧细分为以下3类: 1)控制帧:用于竞争期间的握手通信和正向确认、结束非竞争期等;

2)管理帧:主要用于STA与AP之间协商、关系的控制,如关联、认证、同步等; 3)数据帧:用于在竞争期和非竞争期传输数据。

Frame Control(帧控制域)中的Type(类型域)和Subtype(子类型域)共同指出帧的类型,当Type的B3B2位为00时,该帧为管理帧;为01时,该帧为控制帧;为10时,该帧为数据帧。而Subtype进一步判断帧类型。

2

2.3各种帧类型的结构

控制帧: (1)RTS帧

(2)CTS帧

(3)ACK帧

(4)PS-POLL帧

管理帧基本结构:

数据帧:

3. 802.11帧的抓取

3.1配置wireshark

启动monitor mode,抓取wifi的数据包,如下图

3

4

3.2结果以及分析

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.控制帧:RTS

5

Version ,Type 和Subtype的b4H,即10110100,后两位00,表明协议版本为0,倒数3、4位01 表明这是一个控制帧,前四位1011是subtype,表明这是一个RTS;Frame control 后8位00H,控制帧的这几位除Pwr.mgt.外必然是0. Pwr.mgt即发送方没有进入节能模式。 CTS帧

Version ,Type 和Subtype的C4H,即11000100,后两位00,表明协议版本为0,倒数3、4位01 表明这是一个控制帧,前四位1100是subtype,表明这是一个CTS. Frame control 后8位00H,控制帧的这几位除Pwr.mgt.外必然是0. Pwr.mgt即发送方没有进入节能模式。Duration位为6f09,低位为6f,高位为09,所以持续时间为096fH=2415微秒。Receiver Address=70f1al496492,接收方的MAC地址;Check sequence=a1d1f7e5H,检测结果为正确。

ACK帧:

6

Version ,Type 和Subtype的d4H,即11010100,后两位00,表明协议版本为0,倒数3、4位01 表明这是一个控制帧,前四位1101是subtype,表明这是一个ACK;Frame control 后8位00H,控制帧的这几位除Pwr.mgt.外必然是0. Pwr.mgt即发送方没有进入节能模式。Duration位为0000,所以持续时间为0微秒,ACK表明该帧的传送结束,所以持续时间为0,Receiver Address =00:22:69:8e:a7:44,接收方的MAC地址; Check sequence=6e24f28cH,检测结果为正确。 Block ACK:

Version ,Type 和Subtype的94H,即10010100,后两位00,表明协议版本为0,倒数3、4位01 表明这是一个控制帧,前四位1001是subtype,表明这是一个Block Ack,这是一个块确定帧

Frame control 后8位00H,控制帧的这几位除Pwr.mgt.外必然是0. Pwr.mgt即发送方没有进入节能模式。Duration位为9400,低位为94,高位为00,所以持续时间为0094H=148微秒。Receiver Address =70f1al496492,接收方的MAC地址。Transmitter Address =3822d67704d3,发送方的MAC地址,Check sequence=d2ed060f,检测结果为正确。

7

余位与Block ACK该种帧有关,Block Ack Type=02H,compressed Block;Block Ack Control=0005H,Block Ack Starting Sequence Control=9320H. 管理帧:

4. 以太网帧格式

以太网帧的抓取:

8

点击Capture,选择以太网,然后点击Start

TCP的包:

9

以太网帧:

Ethernet II和IEEE802.3的帧格式分别如下: Ethernet II帧格式:

IEEE802.3一般帧格式

10

本文来源:https://www.bwwdw.com/article/hnat.html

Top