透过管理帧保护看WAPI协议安全性透过管理帧保护看WAPI协议安全性引言无线局域网(WirelessLocalAreaNetwork,WLAN)的安全机制有两种,一种是基于IEEE802.11系列标准的RSNA,另一种是基于三元对等安全架构(Tri-elementPeerArchitecture,TePA)国际标准的无线局域网鉴别与保密基础结构(WLANauthenticationandprivacyinfrastructure,WAPI)。关键词管理帧WAPI安全性WLAN网络安全本质上是对各种帧的保护。WLAN帧按功能不同主要分为三类:数据帧、控制帧和管理帧。数据帧好比802.11的驮马,负责在工作站点之间传输数据。不同网络环境的数据帧会有所差异。与数据帧搭配使用的帧就是控制帧,其负责控制对共享媒体的访问、信道的取得以及载波监听的维护,并在收到数据时予以正面的应答,借此促进工作站之间数据传输的可靠性。管理帧主要负责加入或退出无线网络,以及处理接入点之间连接的各种参数配置及转移事宜。1防御黑客依赖管理帧的保护最初WLAN的安全仅考虑了数据帧的保护,防止空中传输的有用数据被窃透过管理帧保护看WAPI协议安全性取或者篡改。不过,正所谓“道高一尺,魔高一丈”,随着WLAN技术应用范围越来越广阔,黑客们发现数据帧虽然被保护了,但管理帧没有任何保护,黑客可以伪装成合法的客户端,通过发送解除关联和解除链路验证消息,使得接入点上已连接的合法客户端统统断开连接,而重新建立关联和验证需要一定的时间,在重新关联时,黑客可以趁机在客户端与无线接入点之间进行攻击。以解除关联为例,图1是在管理帧未被保护的情况下,利用无线数据分析工具截获的无线报文。图1抓包数据从图1中可以看出,其一数据是完全透明的。鉴于解除关联帧的帧体非常简单,只有2个字节的原因码。黑客对于WEP/WPA/WPA2保护的网络攻击只需透过管理帧保护看WAPI协议安全性三步,攻击行为变得异常简单。具体来说,首先通过抓包网卡进行抓包,找到客户端连接的AP,即可伪造相应的解除关联帧;其次断开客户端的连接,迫使客户端重新进行连接;最后捕获重新进行连接的四次握手,就可以对密码进行离线字典或彩虹表破解攻击。因此,对管理帧进行安全保护非常必要,它能确保更加安全、高效和可靠的无线连接。2WAPI-MFP机制概述前面已经介绍到WLAN的安全机制有两种,一种是RSNA安全机制,另一种是WAPI安全机制,前者问题很多,例如密码易被破解、数据易被拦截、监听、篡改等,所以在该机制上实现管理帧保护意义不大;后者是基于三元对等安全架构,采用双向身份鉴别的一种安全机制,有效杜绝了上述安全隐患,最大程度保护用户隐私。那么基于WAPI安全机制的管理帧保护(WAPIManagementFrameProtection,WAPI-MFP)该怎么做?图2演示的正是WAPI-MFP的实现流程。透过管理帧保护看WAPI协议安全性是否驱动收到探询响应帧根据收到的MFPC,MFPR字段及读取STA端的判断MFP的支持情况STA端MFPC=1,MFPR=0STA端MFPC=0,MFPR=0STA端MFPC=1,MFPR=1AP端MFPC=1,MFPR=1AP端MFPC=1,MFPR=0AP端MFPC=0,MFPR=0AP端MFPC=1,MFPR=1AP端MFPC=1,MFPR=0AP端MFPC=0,MFPR=0AP端MFPC=1,MFPR=1AP端MFPC=1,MFPR=0AP端MFPC=0,MFPR=0不与其进行关联按照原有的操作进行关联,不对管理帧加密按照原有的操作进行关联,不对管理帧加密WAI完成后,对之后的disasso,deauth,action帧进行加解密是否是单播管理帧按照数据帧方式对其进行加解密处理只校验MIC字段,不对其数据部分进行WPI加解密不与其进行关联图2WAPI-MFP的实现流程从图2中可以看出,只有当STA和AP都支持WAPI-MFP时,才会启用WAPI-MFP。MFPC和MFPR字段决定是否支持和启用管理帧保护机制,这两个字段存在于WAPIIE的能力信息字段中。WAPI能力信息字段表示请求或声明的能力信息,该字段长度为2个八位位组,各比特定义如图3所示。透过管理帧保护看WAPI协议安全性B0B1B5B6B7B8B15图3WAPI能力信息比特6:ManagementFrameProtectionRequired(MFPR)。该比特设置为1,通告管理帧保护为强制的。比特7:ManagementFrameProtectionCapable(MFPC)。该比特设置为1,通告管理帧保护可用。3单播帧的WAPI-MFP机制实现WAPI-MFP主要是利用WAI过程协商的密钥对解除链路验证帧。解除关联帧和Action帧进行加密保护,而它们又分为单播帧和组播帧。如果是单播帧,则利用WAI协商的单播密钥使用WPI-SM4算法对其进行加密处理,处理过程和单播数据帧相同。图4为单播帧的加密封装结构。MAC头会话密钥索引KeyIdx保留数据分组序号PN数据(PDU)完整性校验码MICFCS30/241116=1164八位位组:加密后的密文图4单播帧封装结构KeyIdx字段表示单播密钥索引。预鉴别保留MFPRMFPC保留透过管理帧保护看WAPI协议安全性PN字段表示一个整数,标识数据分组序号,该数据分组序号作为OFB、CBC-MAC模式下数据加密和校验时所需的IV。MIC字段是利用完整性校验密钥采用CBC-MAC工作方式对完整性校验数据计算得到。数据发送时的封装过程如下:利用完整性校验密钥与数据分组序号PN,通过工作在CBC-MAC模式的完整性校验算法对完整性校验数据进行计算,得到完整性校验码MIC;利用加密密钥与数据分组序号PN,通过工作在OFB模式的加密算法对MPDU数据及MIC进行加密,得到MPDU及MIC的密文,封装再组帧后进行发送。接收方采用逆向处理。图5是启用WAPI-MFP之后捕获的无线数据报文。透过管理帧保护看WAPI协议安全性图5加密的解除关联帧图5所示,是由AP端向STA端发送的单播解除关联帧。从图中可以看出,原本只有2个字节的帧体经过加密后已经变成无法解析的密文。如果有伪装的AP发送解除关联帧,STA收到后,无法正确解密和校验,则丢弃该帧,仍然保持连接状态,有效防止了黑客的攻击。4组播帧的WAPI-MFP实现对于组播管理帧则采用在尾部添加管理MIC子信息元素(MMIE)字段的方法进行保护。MMIE提供信息完整性保护以防止组播管理帧被篡改。MMIE必须透过管理帧保护看WAPI协议安全性放在所有帧体数据的最后,FCS之前。图6为组播帧的封装结构。类型长度密钥标识IPNMIC八位位组:2121616MAC头MMPDUMMIEFCS30/24=1424八位位组:图6组播帧封装结构类型字段为2(十进制数)。密钥标识字段标识用于计算MIC的组播完整性校验密钥。IPN字段用于标识分组序号,该分组序号作为计算MIC字段的IV值。MMIE中的MIC字段是利用组播完整性校验密钥,通过工作在CBC-MAC模式的完整性校验算法对管理协议数据单元进行计算,得到消息鉴别码。数据发送时的封装过程如下:利用组播完整性校验密钥与管理数据分组序号PN,通过工作在CBC-MAC模式的完整性校验算法对组播管理协议数据进行计算,得到完整性校验码MIC,封装再组帧后进行发送。接收方进行逆向处理。当启用WAPI-MFP之后,AP将MMIE字段添加到需要保护的管理帧。其后任何试图复制、修改和重播帧的操作均使MMIE字段无效,STA收到无效的MMIE字段后,将丢弃该管理帧。透过管理帧保护看WAPI协议安全性由于网络连接时密码最容易被黑客破解,因此启用管理帧保护非常重要。它可以最大化保证用户的网络安全,使用户在畅享无线网络的同时免除后顾之忧。附录:文中涉及的英文注释英文注释AP无线接入点STA客户端Key密钥MIC完整性校验码MMIE管理MIC子信息元素WAPI无线局域网鉴别与保密基础结构WAPI-MFPWAPI管理帧保护