Offensive Security Wireless Attacks
简介:无线渗透(PEN-210)向学生介绍审核和保护无线设备所需的技能。这是一门基础课程PEN-200并将使那些希望在网络安全方面获得更多技能的人受益。
在PEN-210中,学生将学习识别802.11网络中的漏洞并执行有组织的攻击。每个学生将建立一个家庭实验室来练习在这个在线自定进度课程中学到的技术。
1 IEEE(电气电子工程师学会)
IEEE 802.11 家族图
频谱划分
IEEE 802.11a
IEEE 802.11a与802.11b几乎同时发布,但由于现有硬件的缺乏和高昂的价格,它没有取得太大的成功。802.11a使用5 GHz频段,与802.11b使用的2.4 GHz频段相比,
有两个主要优点:.(1)2.4 GHz频段与其他设备(如无绳电话、蓝牙设备,甚至微波炉)非常拥挤。(2)5 GHz波段有更多的通道可用,它们不会像2.4 GHz波段那样重叠。
IEEE 802.11b/g标准工作在2.4G频段,频率范围为2.400—2.4835GHz
IEEE 802.11g
IEEE 802.11g使用与802.11a相同的信号调制,但频率为2.4 GHz,因此产生相同的速率。信号范围略好于802.11a,向后兼容IEEE 802.11b。当802.11b设备连接并可以切换到CCK(和其他调制)时,802.11g将回落到较低的速率,从而降低全球网络速度。
2 Wireless network
关于wireless network 基础术语
AP 具备无线至有线(wireless-to-wired)桥接功能的 设备称为基站 STA 携带无线网络接口卡的设备
BSS 一个热点的覆盖范围 BSSID 就是 AP 的 MAC 地
ESS 802.11 允许将几个 BSS 串连为延伸式服务组合。 所有同一个 ESS 的基站将会使用相同的 SSID 一般情况下 ESSID 就是BSSID
EAP 可扩展认证协议
802.1.X 允许网络对无线客户端进行认证的协议
PMK(pairwise master key) 成对主钥 GMK(pairwise master key) 群组主钥
当 STA 离开网络时,网络系统更新群组密钥
PTK(pairwise transient key) 成对临时密钥 GTK(pairwise transient key) 群组临时密钥
2.1 Wireless ooperating mode
- infrastructure
- Ad-Hoc
Ad-Hoc 是P2P的连接, Ad Hoc结构是一种省去了无线中介设备AP而搭建起来的对等网络结构,只要安装了无线网卡,计算机彼此之间即可实现无线互联;其原理是网络中的一台计算机主机建立点到点连接,相当于虚拟AP,而其他计算机就可以直接通过这个点对点连接进行网络互联与共享
2.1.1 Infrastructure Network
2.1.2 Ad-Hoc Network
在ad-hoc网络中,其中一个参与电台承担AP的一些职责,例如:
- 报警
- 新客户端加入网络的身份验证
- 在ad-hoc模式下,承担AP职责的STA不像AP那样将报文转发给其他节点。
2.1.3 Wireless Distribution System(WDS)
- 无线桥接——只允许WDS ap彼此通信.
- 无线重复-允许两个站和ap互相通信
2.1.3 monitor mode 监视器模式
监视器模式并不是真正的无线模式,但它在攻击无线网络时特别重要。简而言之,监视模式允许无线卡“监视”接收到的数据包,而不进行任何过滤。监视器模式本质上相当于无线的“混杂模式”。当使用一些无线驱动程序时,这种模式允许发送原始的802.11帧。airdump -ng、airreplay -ng和许多其他无线工具都需要将适配器置于监视模式下才能操作。
3.数据包与网络交互
3.1 802.11 MAC 帧格式 为了克服干扰问题,mac使用了肯定确认机制,即发出去的帧必须得到回应
IEEE 802 规定 MAC 地址字段采用 6字节(48位) 或 2字节 (16位)两种中的一种。
MAC帧格式全图
3.1.1.1 frame control
协议版本:提供所使用的802.11协议的版本。该值当前为0。
类型和子类型:确定帧的功能。有3个不同的帧类型字段:control(值:1)、data(值:2)和management(值:0)。每个帧类型都有多个子类型字段,
每个子类型决定了要为其关联的帧类型执行的特定函数。稍后再详细介绍。
To DS and From DS:表示帧是否进入或退出配电网。.
More frag:指示是否有更多的帧片段跟随这个帧。.重试:帧正在重传。
Power Mgmt:发送STA是主模式(取值为0)还是省电模式(取值为1)。
WEP:表示帧中是否使用加密和身份验证。
Order:表示帧正在使用严格有序服务类发送。该字段通常不设置。
3.1.1.2 Duration ID
根据帧类型的不同,这个字段可以有不同的含义:.
- Power Save 机制(类型:1,子类型:10):站关联标识(AID)
Power Save通常是在STA端进行的,AP需要一直广播并且很多AP都是固定位置并接电源的,移动性小,所以AP的power save基本上是要求支持STA的power save
- 其他:用于网络分配向量[NAV]计算的持续时间值。
3.1.1.3 Addresses
3.1.1.4 sequence control
two sub field
- Sequence Number 12位 每帧的序列号,对于分帧的每一帧,序列号相同,取值范围 0-4095.
- Fragment Number 4位 发送帧的每个分片数,取值范围 0-15.
3.2 Data
data字段最多可以包含2324字节的数据。最大的802.11 MAC服务数据单元(MSDU)是2304,不同的加密方法都会增加各自的开销:
WEP: 8字节—Data Field: 2304 + 8 = 2312字节
TKIP (WPA1): 20字节-数据字段:2304 + 20 = 2324字节
CCMP (WPA2): 16字节- Data Field: 2304 + 16 = 2320字节
3.1.3 FCS
帧校验序列(FCS)是当前无线帧的循环冗余校验(CRC)。对前面的所有字段执行CRC以生成FCS。当在目的地接收到帧时,将重新计算帧FCS,如果它与接收到的帧相同,则无错误地接收到帧。注意:大多数Wireshark捕获在本课程有FCS删除。
3.2 控制帧 (没有Data字段) Ps-Poll RTS CTS ACK
无线控制帧是告诉设备何时开始结束,是否连接成功失败的短数据。
不同类型的控制帧
3.2.1.1 ACK
接收端正确接收数据之后向发送端返回ACK确认
每个单播帧需要ACK确认
组播和广播不需要ACK确认
尽快响应由硬件完成,而非驱动层
3.2.1.2 PS-POLL
设备四种工作模式:
- Sleep 休眠模式:节点关闭发送和接收进行休眠
- Rx idle 接受空闲状态:节点对信道进行监听,但未接收数据帧
- Rx 接收状态:节点对信道进行监听,并接收数据帧
- Tx 发送状态: 节点发送数据帧
当Type字段设置为1时,表示控制帧;
当Subtype字段设置为13时,表示这是一个ACK帧。
3.2.1.3 RTS/CTS
3.3 管理帧
负责维护AP和STA之间的通信。
3.3.1 信标帧
信标是AP通过广播来保持网络同步的信号。
信标包含有关网络的有用信息,如网络名称(除非SSID广播被禁用)、AP的能力、可用的数据速率等。信标通常每102.4ms发送一次,对于802.11b,速率为1mbit,对于802.11a或g,速率为2mbit。
3.3.2 探测帧
用于扫描现用的接入点
- 探测请求 由STA发送,确保AP范围
- 探测回应 只有当速率和ESSID值与节点支持的速率和ESSID值一致时,才会发送探测响应。响应请求的节点是最后一个发出信标的节点。当网络为基础架构模式时,节点可以是AP;当网络为IBSS (ad-hoc)模式时,节点可以是STA。
3.3.3 认证
接下来我们将简要介绍身份验证帧。在一个认证框架内,认证算法确定使用的认证类型。值“O”表示Open System身份验证,值“1”表示Shared Key身份验证。
身份验证过程由几个身份验证帧组成(交换的帧的确切数量可以有所不同)。身份验证事务序列号跟踪身份验证过程的当前状态,可以取从1到65535的值.
Status代码值将指示身份验证过程中的成功(0)或失败(不包括0)。
3.3.4 关联与重新关联
- 关联 请求 一旦一个工作站成功地向AP进行身份验证,它需要在完全加入网络之前执行关联。
- 重新关联 请求 一个重新关联请求的结构与关联请求几乎相同,除了它也有一个源地址字段。
- 关联 响应 AP通过一个关联响应响应关联请求,该响应可以拒绝或接受关联请求。
3.3.5 解除关联与解除认证
结构图
3.3.5ATIM帧
只在ad-hoc网络中使用。接收站使用此帧通知接收端发送已缓冲的数据。
3.4 数据帧
数据帧包括三部分:帧头,数据部分,帧尾。其中,帧头和帧尾包含一些必要的控制信息,比如同步信息、地址信息、差错控制信息等;数据部分则包含网络层传下来的数据,比如IP数据包,等等。
从应用层发出的消息会经由传输层,网络层,数据链路层,物理层,它们每到一层都会转变形式。
在发送端,数据链路层把网络层传下来的数据封装成帧,然后发送到链路上去;在接收端,数据链路层把收到的帧中的数据取出并交给网络层。不同的数据链路层协议对应着不同的帧,所以,帧有多种,比如PPP帧、MAC帧等,其具体格式也不尽相同。
数据帧(Frame):是一种信息单位,它的起始点和目的点都是数据链路层。
到达传输层变为段(Segment):通常是指起始点和目的地都是传输层的信息单元。
到达网络层变为包/报:数据包(Packet)是一种信息单位,它的起始和目的地是网络层。数据报(Datagram)通常是指起始点和目的地都使用无连接网络服务的的网络层的信息单元。
3.4.2 Null 空帧
空帧仅由MAC报头和FCS组成。它们被电站用来指示进入节电模式。
空帧从工作站发送当工作站退出省电模式时,它发送与电源管理位重置相同的帧,AP将向客 户端发送正在等待的所有缓冲帧。
3.5 与网络的交互
我们可以将这个过程分为3个主要部分:
探测
1. STA首先在所有通道上发送探测来查找AP
2. 范围内的ap响应探测请求
身份验证
1. STA向AP鉴权,缺省情况下向信号最好的AP鉴权、
2. 发生身份验证过程(该过程的长度不同)
3.AP向认证发送响应
关联
1. STA发送关联请求
2. AP发送关联响应
3.用户终端可以与网络通信这个过程完成后,就可以在网络上交换数据了。
注意:对于WPA加密,还有另一个阶段,密钥交换和验证,这发生在关联之后,然后才能使用网络。
在这个阶段之后,STA加入了网络但没有任何IP地址,接下来就是DHCP协议过程。