Kali linux 学习笔记(二十九)无线渗透——802.11头( radiotap头、控制帧、管理帧、数据帧)2020.3.9

前言

根据上一节
已经可以抓取无线包头
本节主要详细学习包头
历时2日

1、 radiotap头

  • 802.11发射和接收的事实标准
  • linux在驱动和API中内建支持radiotap
  • 802.11发射前,网卡驱动在802.11头前面添加radiotap头
  • 网卡接收802.11时,驱动通知MAC层,此帧头包含radiotap头
  • radiotap为802.11帧传递额外信息,厂家可自定义
  • 不破坏原始头结构,增加传递的信息

结构

header
  • reversion:8bit,值始终为0
  • pad:8bit,始终是0,占位
  • length:整个radiotap的长度
  • present flags:32bit,指示data会出现的内容
data
  • MAC timestamp:时间戳
  • flags:8bit,一些标记
  • data rate:速率
  • channel frequency:信道频率
  • channel type:信道类型以及详细信息
  • SSI signal:信号强度

2、802.11MAC头部

  • DU(data unit):数据单元,信息传输的最小数据集合
  • 传递过程逐层封装(encapsulation)
  • 一个DU对下层而言是SDU(service data unit),对上层而言是PDU(protiocol data unit)
  • MSDU->完整性检查->分帧->添加起始向量->加密->添加MAC头->MPDU
  • MPDU+物理头=PPDU(见下图),然后RF发射
    在这里插入图片描述

802.11的MAC头部如图所示
在这里插入图片描述

(1)header

frame control(2bytes)

在这里插入图片描述

  • protocol version:2bit,值为0,1,2,3
  • type:2bit,0是管理帧,1是控制帧,2是数据帧
  • subtype:子类型
  • toDS:1是STATION到AP
  • fromDS:与前者相反,四种组合见图
    在这里插入图片描述
  • more frag:1bit,1是有后续分段
  • retry:1bit,1表示重传帧
  • power management:1bit,0是活动模式,1是省电模式
  • more data:1bit,当AP缓存了至少一个MSDU时,会向省电模式的STATION发生该值为1的帧
  • protected frame:1bit,数据载荷为空时值为0
  • order:1bit,通常为0,若为1表示数据必须按严格顺序处理
duraiton/ID(2bytes)
  • control帧时,作用随type和subtype变化
  • PS Poll帧(type=1,subtype=10)时,表示STATION关联AID
  • 其他情况下,作为一种载波侦听机制,表示接收下一帧之前需要保持的时间间隔,用于NAV(network allocation vector)计算
MAC layer address(6bytes)

有四种

sequence control(2bytes)
  • sequence number:每个帧的编号,0-4095,同一帧不同分段的该值相同
  • fragment number:标识分段位置顺序的编号,0-15

(2)frame body(变长)

  • 未加密:256bytes上层头+2048data
  • WEP:增加8bytes
  • TKIP(WPA1):增加20bytes
  • CCMP(WPA2):增加16bytes
    *control类型的没有这个部分

(3)FCS(4bytes)

  • 发送端对header和framebody进行CRC计算,结果即为FCS
  • 接收端进行相同计算,结果一致,返回ACK,否则丢弃
    *wireshark抓包时已经删了FCS

3、控制帧

其type和subtype见图
在这里插入图片描述

(1)ACK

  • 接收端正确接收数据后向发送端返回ACK
  • 每个单播帧都要ACK立刻确认,组播和广播不需要
  • 硬件完成,而非驱动层
结构
  • type:01
  • subtype:1101
  • receiver address:6bytes,接收地址
  • FCS:4bytes

(2)PS-poll帧

  • RF系统的放大器:主要耗电组件
  • 省电模式:关闭信号发射器节省电源
  • AID:STATION关联到AP时,AP给的association ID

(3)RTS/CTS

  • CSMA/CA的一种补充手段
  • 降低冲突产生的可能性
  • 正式通信前通过请求应答机制,确信通信介质的可用性
  • 锁定传输介质和预约通信时间
  • 只有在传输长帧时使用:阈值由驱动接口定义
  • 过程:A发RTS给B,未发生冲突,B返回CTS给A,然后进行正常数据传输

4、管理帧

如图所示
在这里插入图片描述

(1)beacon帧

详细可参考:https://blog.csdn.net/rs_network/article/details/50676786

  • AP发送的广播帧,通告无线网络的存在(BSSID、ESSID)
  • 发包频率102.4ms(可变)
  • 隐藏AP不发SSID广播
  • 速率:802.11g
  • 信道:11
结构
  • IBSSI status:1是AD-HOC,0是infrastructure
  • privicy:1是WEP/WPA加密
  • ESSID:会展示名称和长度

(2)probe帧

  • STATION扫描现有AP

(3)authentication帧

  • 身份认证
  • 有多个帧交换过程
结构
  • algorithm:1是共享秘钥身份验证,0是开放系统身份验证
  • seq:1-65535,每次验证过程该值唯一
  • challenge text:只有共享秘钥才有
  • status code:成功/失败

(4)association帧

  • 身份验证成功后,STATION执行关联操作

5、数据帧

在这里插入图片描述

  • null data:只包含MAC头和FCS,STATION用于声明进入省电模式

结语

本节较为详细的了解了802.11头内容
并通过抓包有些许体会

下一节学习加密算法

发布了30 篇原创文章 · 获赞 4 · 访问量 2283

猜你喜欢

转载自blog.csdn.net/weixin_44604541/article/details/104759873