频道栏目
首页 > 安全 > 网络安全 > 正文

IEEE802.11w无线安全协议剖析

2017-05-18 10:46:08      个评论      
收藏   我要投稿

IEEE802.11w无线安全协议剖析。IEEE 802.11协议规定无线帧包含数据帧、控制帧和管理帧三类,本文将详细剖析此无线安全协议。

\

 

数据帧的任务是在工作站间传递数据,数据帧信息会因为所处的网络环境不同而发生变化。控制帧多用于为数据帧提供服务,保证工作站之间数据能可靠传输。控制帧能够选择通信信道、维护载波监听功能、清理工作区域、对收到的数据作出应答等。管理帧起监督作用。比如对 STA加入无线网络、退出无线网络、在基站间的漫游等进行管理。

IEEE 802.11i提供给企业网络管理员使用的安全保护,只适应于网络中的数据通信。若管理员想管理或者控制无线网络的运行,基本上无能为力。目前管理、控制报文并未受到保护,机密性、真实性、完整性无法得到保证,容易受到仿冒或者监听。为了在一定程度上消除这个安全隐患,802.11w 诞生了。它经由保护无线网络“管理帧”的过程来改善安全性,能够在一定程度上制止通过“管理帧“进攻网络的行为。

1.1 802.11w协议内容

IEEE802.11w无线安全协议剖析。IEEE 802.11协议规定无线帧包含数据帧、控制帧和管理帧三类,本文将详细剖析此无线安全协议。

\

数据帧的任务是在工作站间传递数据,数据帧信息会因为所处的网络环境不同而发生变化。控制帧多用于为数据帧提供服务,保证工作站之间数据能可靠传输。控制帧能够选择通信信道、维护载波监听功能、清理工作区域、对收到的数据作出应答等。管理帧起监督作用。比如对 STA加入无线网络、退出无线网络、在基站间的漫游等进行管理。

IEEE 802.11i提供给企业网络管理员使用的安全保护,只适应于网络中的数据通信。若管理员想管理或者控制无线网络的运行,基本上无能为力。目前管理、控制报文并未受到保护,机密性、真实性、完整性无法得到保证,容易受到仿冒或者监听。为了在一定程度上消除这个安全隐患,802.11w 诞生了。它经由保护无线网络“管理帧”的过程来改善安全性,能够在一定程度上制止通过“管理帧“进攻网络的行为。

1.1 802.11w协议内容

1.1.1 无线管理帧

IEEE规定的802.11管理帧的通用格式如图1-1所示。

\

图 1- 1 管理帧基本结构

管理帧十分具有弹性。帧主体中的数据,长度不会变化的位叫做固定式位;长度在一定范围内可变的位就叫做IE(information element, 信息元素)位。信息元素指的就是长度有所变化的数据块。每一个数据块均会标注上类型编号与大小。不同IE的数据位具有不同的解释方式。802.11标准允许增加新的 IE 。

1.1.2 802.11w协议简介

802.11w保护的管理帧,包括去认证帧、去关联帧、强健Action帧。强健Action帧主要包含: SpectrumManagement 、Qos、DLS、Block Ask 、Radiomeasurement、Fast BSS Transition、 SA Query 、ProtectedDual of Public Action、Vendor-specfic Protected帧[27] 。

对于单播管理帧采用数据帧的临时密钥对其进行加密保护。对广播管理帧采用新提出的加密套件BIP进行保护,提供了完整性校验以及重放保护。

802.11w协议一致性测试的内容主要包括两部分:管理帧保护和SA Query处理机制,SA Query处理机制中涉及的 SA Query Request和SA Query Response帧属于强壮Action帧,同样受 802.11w标准保护。

1.1.3 RSNIE变更

IE(Information Element,信息元素)是管理帧的组成成分,其长度可变。管理帧会通过 IE来与别的系统交换信息。信息元素一般包括一个Element ID(元素识别码) 位、一个 Length(长度)位和一个长度不定的位。16bit的 Capability Information (能力信息)位,用于在发送Beacon帧时通告一个服务集内的工作站本网络所具有的能力。它同样能够用于Probe Request 和 Probe Response帧中。每个bit位各自代表一个旗标,分别代表网络具备何种功能。STA 使用这些公告信息判断自己是否支持该 BSS所有的功能。一般情况下,不具备性能通告中要求的能力的工作站,不能加入此服务集。首先AP通过信标帧广播 RSN能力,使得无线工作站之间能够互换安全信息。版本 Version属于必要位,802.11定义了版本 0, 1保留未用,版本2以上未定义[22] 。群组密码套件 Group Data CipherSuit在同一时间能且只能选择一种。并且所选套件必须和全部接入该服务集的工作站的组密码套件兼容。密码套件选项占四个字节,由厂商的OUI以及代表密码套件的编号组成, 802.11系列协议所使用的OUI为00-0F-AC ,IEEE802.11w中定义的标准密码套件如表2-2所示;成对密码套件 Pairwise Cipher Suites(count+list) 作用是保护单播管理帧,它包含二字节的计数字段与4*n(n为正整数) 字节它允许的密码套件描述符。除信息元素长度有受限外,协议并未规定其允许的密码套件数量;身份认证与密钥管理套件 Authentication andKey Management Suites(count+list)也存在好几种身份认证类型,它由一组四个字节的识别码组成。包括一个 OUI和一组套件类型标识符。 AKM取不同值时对应的认证和密钥管理类型如表2-3所示。强健安全网络能力 RSN Capability 字段占两个字节,用于描述发送方的安全性能。

802.11w协议提出在RSN信息元素的RSN capabilities(如表 1-1)中增加MFPR及MFPC位; AKM 字段新增类型00-0F-AC:5和00-0F-AC:6;并且新增Group Management Cipher suit 字段。

增加的MFPR和MFPC位用来协商保护管理帧能力,MFPR 位置1表示强制要求管理帧保护,MFPC位置 1 表示支持管理帧保护;通过MFPR及MFPC位的设置来协商保护管理帧能力。

AKM字段新增类型00-0F-AC:5及00-0F-AC:6分别表示认证类型为 802.1x及PSK,相较00-0F-AC:1和 00-0F-AC:2 ,把加密算法从SHA1变为SHA256。

Group Management Cipher suit字段用来保护广播或多播管理帧[1],新增密码套件BIP 用来保护广播或多播的完整性,BIP协议运用AES加密算法,在CBC-MAC模式下计算认证码。健壮安全网络信息元素格式如图 2-所示。

\

图 1- 2 强健安全网络信息元素格式

Element ID :协议设定为48(十进制)。

Length:定义了从该字段以后RSN IE字段的总字节数。

Version:版本类型,值为1。

Group Cipher Suite(组播加密套件):该字段标识了使用何种加密算法进行组播加密,字段结构如图2-3。

\

图 1- 3 加密套件选择器格式

Pairwise Cipher Suite Count:多存在于STA发往AP的帧中,该字段为 1。而在AP广播所带的RSN IE中,该字段值为 AP 支持的加密套件总数。

Pairwise Cipher Suite List:该字段列出了所用的加密算法,格式类似组播加密算法的标识格式,数量与Pairwise CipherSuite Count字段的值一致。

AKM Suite Count:标识使用的AuthenticationKey Management (AKM)套件的数量。

AKM Suite List:结构同字段Pairwise CipherSuite List,具体值见表1-3[22] 。

RSN Capability :此字段用于描述发送端能力,后六位保留未用,必须设定为0,字段结构如表1-1 所示[22]。

表 1- 1 RSN Capability字段结构

B0

B1

B2-B3

B4-B5

B6

B7

B8

B9

B10-B15

PreAuth

No Pairwise

PTKSA Replay Counter

GTKSA Replay Counter

MFPR

MFPC

Reserved

Peer Key Enabled

表 1- 2 加密套件选择器

OUI

Suite type

Meaning

00-0F-AC

0

Use group cipher suite

00-0F-AC

1

WEP-40

00-0F-AC

2

TKIP

00-0F-AC

3

Reserved

00-0F-AC

4

CCMP-default pairwise cipher suite for data frames in RSNA

00-0F-AC

5

WEP-104

00-0F-AC

6

BIP-default group management cipher suite in an RSNA with management frame protection enabled

00-0F-AC

7

Group addressed traffic not allowed

00-0F-AC

8-255

Reserved

Vendor OUI

Other

Vendor-specific

Other

Any

Reserved

表 1- 3 身份认证与密钥管理套件选择器

OUI

State type

Meaning

Authentication type

Key management type

00-0F-AC

0

Reserved

Reserved

00-0F-AC

1

Authentication negotiated over IEEE 802.1X or using PMKSA catching as defined in 8.4.6.2 – RSNA default

RSNA key management as defined in 8.5 or using PMKSA catching as defined in 8.4.6.2 – RSNA default

00-0F-AC

2

PSK

RSNA key management as defined in 8.5, using PSK

00-0F-AC

3-255

Reserved

Reserved

Vendor OUI

Any

Vendor-specific

Vendor-specific

Other

Any

Reserved

Reserved

1.1.4 无线终端协商上线

1.1.4.1 802.11w 能力协商

STA发送关联请求帧,AC解析关联请求帧中的RSNIE。在原有的基础上新增解析 MFPC位和MFPR位及Group Management Cipher Suite字段,解析完成后,对 MFPC及MFPR位按表1-4所示进行协商。当 AP 没有保护管理帧功能时,允许STA上线;当AP开启保护管理帧功能时,分以下两种情况考虑。

1) AP端的MFPC置1,MFPR置0,STA端的MFPC置0或1,MFPR置0时,允许STA上线,并回应关联响应报文,PMF Status字段的值为Inactive;若STA端的MFPC置1,MFPR置1,也允许STA上线,回应关联响应报文,PMF Status字段值为Active;若STA端的MFPC置0,MFPR置1,AP不允许STA上线,回应携带错误码31的关联响应报文。

2) AP端的MFPC和MFPR都置1,STA端的MFPC置1,MFPR置0或1时,允许STA上线,回应关联响应报文,PMF Status字段的值是Active;若STA端的MFPC置0,MFPR置0或1,则回应携带错误码31的关联响应报文。

然后对广播管理帧进行协商,若AP设置Group Management Cipher Suite为 BIP ,且STA默认为BIP,允许STA 上线;否则,不允许 STA上线。

表 1- 4 扩展服务集中健壮管理帧协商原则

AP MFPC

AP MFPR

STA MFPC

SPA MFPR

AP Action

STA Action

0

0

0

0

The AP may associate with the STA

The STA may associate with the AP

1

0

0

0

The AP may associate with the STA

The STA may associate with the AP

1

0 or 1

1

0 or 1

The AP may associate with the STA

The STA may associate with the AP

1

1

0

0

The AP shall reject associations from the STA with the Status Code“Robust management frame policy violation”

The STA shall not associate with the AP

0

0

1

1

No action

The STA shall not try to associate with the AP

0

0

1

0

The AP may associate with the STA

The STA may associate with the AP

1

0 or 1

0

1

The STA advertises an invalid setting. The AP shall reject associations from the STA with the Status Code “Robust management frame policy violation”

The STA shall not try to associate with the AP

0

1

1

0 or 1

No action

The AP advertises an invalid setting. The STA shall not try to associate with the AP

1.1.4.2 AKM套件协商

STA发送关联请求帧后与AC协商身份认证与密钥管理方式,以保证服务的私密性与完整性。

AKM字段新增类型00-0F-AC:5及00-0F-AC:6对应 802.1x及PSK,相较于00-0F-AC:1, 00-0F-AC:2 ,变化体现在对密钥衍生算法进行了升级,并且使用AES-128-CMAC算法保证信息完整性;因此AKM套件 00-0F-AC :5和00-0F-AC:6 提升了 RSN的安全性能。

被测设备对这些AKM套件若都支持,即支持00-0F-AC:1,00-0F-AC:2 ,00-0F-AC:5,00-0F-AC:6,则首先选00-0F-AC:5 ,对应的结果为 802.1x_SHA256。

若支持PSK,即00-0F-AC:2,00-0F-AC:6 则首选00-0F-AC:6,结果为PSK_SHA256。

若支持802.1x,即00-0F-AC:1,00-0F-AC:5则首选00-0F-AC:5, 结果为802.1x_SHA256。

当协商的AKM为00-0F-AC:5 或6时,EAPOL-Key帧的填充和密钥衍生算法会发生改变,密钥衍生算法由prf 变成kdf,具体改变在密钥协商一节中有介绍。

1.1.4.3 密钥协商

802.11w标准中,STA首次接入AP时,经由四次握手的过程完成单播及组播密钥的协商,对管理帧进行保护。

CCMP安全协议中的密钥有单播密钥和组播密钥两种[30]。客户端认证成功后,单播密钥被通信双方 STA 和AP同时拥有。单播密钥又名成对密钥。它的层次结构非常复杂:最顶层的是PMK( Pairwise Master Key ,成对主密钥),PMK主要用于导出所有别的成对密钥。当用户认证为802.1X 认证时, PMK在AP对STA认证完成后由 Radius 服务器产生并下发给AP和STA。当客户端认证方式为 PSK 认证时,配置的PSK直接转换为PMK 。但是 ,真正用来保证AP和STA 间安全连接的是成对临时密钥 PTK(Pairwise TemporaryKey)而非PMK 。 PTK是由PMK导出的一个单独加密组,代表一系列密钥。PTK 由临时密钥 TK(Temporal Key)、密钥加密密钥KEC(EAPOL-Key Encryption Key) 和密钥认证密钥KCK(EAPOL-Key Conformation Key)三部分组成。其中,TK 用于加密通信数据; KEK同于加密EAPOL-Key中所携带的数据;KCK 用于对 EAPOL-Key进行认证。STA重新关联到AP 时要更新 PTK,PTK的实时性由nonce 来保证 [26]。当STA和 AP 生成一个新的PTK之后,AP再用它来传送组播临时密钥 GTK给STA。由PMK 生成由 PTK过程如图1-4所示,其中 AA 代表AP的Mac地址, SPA代表STA的MAC 地址。

\

图 1- 4 成对密钥衍生过程

802.11w中的RSN四次握手协商密钥发生在PMK成功获取后,过程如图 1-5。

\

图1- 5 四次握手密钥协商过程

1) AP向STA发送Message 1帧,该帧中包含用于产生PTK的随机数Anonce,并表明目前正在进行PTK的发布过程,Message 1没有受到任何的加密及认证保护。

2) STA收到Message 1后得到Anonce并选择一个随机数Snonce用PRF算法计算出PTK,PTK=SHA1_PRF(PMK,Len(PMK),“Pairwisekeyexpansion”,MIN(AA,SA)||Max(AA,SA)||Min(ANonce,SNonce)||Max(ANonce,SNonce));而后发送Message 2帧给AP,该帧中包含Snonce及STA的RSN信息元素,并且该帧使用了计算得到的PTK中的前16个字节作为MIC KEY(又称KCK)对Message 2进行MIC完整性校验。

3) AP收到Message 2后,得到Snonce并计算出PTK、GTK、IGTK。同时使用计算出的PTK中的KCK对数据进行MIC校验。如果校验不成功,就会丢弃Message 2。如果校验成功,则向STA 发送Message 3[25]。Message 2帧中包含要求STA装入PTK(包括PTK中的TK、KEK和KCK)、GTK和IGTK及AP的RSN信息元素,并且AP对Message 2帧进行了MIC认证。为实现对组播管理帧的保护,802.11w协议标准规定:AP对接收到的EAPOL-KeyMessage 2进行解析,并且在原有EAPOL-Key基础上增加了IGTK/IPN协商,然后将IGTK和IPN协商结果添加到原来的EAPOL-Key之后,封装成新的EAPOL-KeyMessage3和RSN IE一起下发给STA。

4) STA收到Message 3后装入PTK、GTK和IGTK,并且发送特殊的空信息Message 4(EAPOL=Key帧的Key Data字段无任何数据)表示已经装入密钥,AP在收到Message 4后也装入PTK、GTK和IGTK。

至此,四次握手结束,通信过程中所需要的密钥被全部生成,通信双方安装密钥完毕,可以开始传输安全数据。另外,802.11w协议标准还规定当有客户端离开基础服务集时、或者密钥生存周期已到时、或者密钥加密的数据流量达到限制值时,通过组播握手进行GTK密钥、IGTK密钥的更新,并且这两个密钥以加密的方式被分发给通信客户端。IGTK随着GTK的变化而变化。IGTK是802.11w协议中新定义的密钥,BIP运用IGTK对广播管理帧进行签名。IGTK被同一BSS中的STA共享。四次握手协商密钥的过程较难理解,这也是实现802.11w协议一致性自动化测试套必须解决的难题,若不能正确区分各个密钥之间的关系,就无法正确修改程序中加密和解密函数的相关参数,无法对接收的报文正确解密,从而无法对802.11w协议进行一致性测试。

组播握手过程如图1-6所示。

\

图 1- 6 组播握手密钥协商过程

组播密钥层次结构如图1-7所示。

\

图 1- 7 组播密钥衍生过程

EAPOL-Key的具体格式如表1-5所示,其中Key Information字段格式如表 2-6所示。AKM协商为00-0F-AC: 5 或00-0F-AC:6时将做如下改变。

1) EAPOL-Key message 1中Key Information字段的Key Descriptor Version值为3。

2) EAPOL-Keymessage 3中,在原有基础上,使用SHA256算法生成GTK,填充至EAPOL-Key帧keydata字段中,将EAPOL帧和KCK作为AES-128-CMAC算法的输入生成16字节MIC填充至MIC字段。

3) 将BSSID、Gnonce、字符前缀和GMK作为SHA256算法的输入生成GTK。

4) IGTK密钥需要添加到EAPOL-Key的Key Data字段中GTK之后,原802.11i协议中Message3的Key Data Length和Key Data字段将发生变化。

表 1- 5 EAPOL-Key Message 3格式

Protocol Version – 1 octet

Packet Type – 1 octet

Packet BodyLength – 2 octets

Descriptor Type – 1 octet

Key Information – 2 octets

Key Length – 2 octets

Key Replay Counter – 8 octets

Key Nonce – 32 octets

EAPOL – Key IV – 16 octets

Key RSC – 8 octets

Reserved – 8 octets

Key MIC –variable

Key Data Length – 2 octets

Key Data – n octets

表1- 6 Key Information字段格式

B0 B1 B2 B3 B4 B5 B6 B7

Key Descriptor Version

Key Type

Reserved

Install

Key ACK

Key MIC

Secure

Error

Request

Encrypted Key Data

SMK Message

Reserved

1.1.4.4 STA 802.11w能力确认机制

在STA协商为11w并首次上线后,AC 会首先发送一个加密的SA Query request报文,只有收到合法的响应后才完成这个STA上线,否则将 STA 踢下线。

1.1.5 保护管理报文的处理

802.11w保护的管理帧包括单播管理帧和广播管理帧,对单播管理帧和广播管理帧有不同的处理方式。如图1-8所示。

\

图 1- 8 802.11w保护管理帧内容

1.1.5.1 单播管理帧的处理

在AP和某一STA的PMF 协商成功之后(即STA支持11w;STA和 AP协商PTK和IGTK完成), AP 将会对部分单播管理帧进行加密,以提高单播管理帧的机密性、真实性和完整性并保证抗重放性。要求加密的单播管理帧包括:去认证帧、去关联帧和802.11w协议中规定的部分Action 帧。在 PMF协商成功之前,STA不应发送单播健壮Action 帧 ,若AP收到此健壮Action帧,则直接在 AP端忽略此帧,不上送AC。

上一篇:制造勒索病毒的黑客请注意,你摊上大事了!
下一篇:360天眼:WannaCry(想哭勒索蠕虫)技术分析
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训

版权所有: 红黑联盟--致力于做实用的IT技术学习网站