张 磊, 王 辉
随着信息技术的发展,人们对网络的使用便利性的要求越来越高。无线网络的出现试图让人们能够在任何时间、任何地点,通过任何设备都能联入网络。无线网络技术正逐渐发展成熟,对应无线路由器等无线网络设备的价格已经非常亲民,并开始大量普及使用。然而,当网线被无形的无线信号取代后,虽然大大提高网络使用的便利性,但同时因为物理传输发生了变化等原因,也增加了网络数据传输的不安全性。WEP和WPA作为主要的两大加密协议,用以对无线网络数据传输和用户验证等进行加密以提高无线网络的安全性[1]。
无线局域网(WLAN,Wireless Local Area Networks)的传输原理和普通有线网络一样采用ISO/RM七层网络模型,但在模型的物理层和数据链路层中,WLAN采用射频(RF,Radio Frequency)技术来取代有线双绞铜线所构成的局域网络,进行无线传输。
从传输方式可将WLAN传输分为:无线电波方式和红外线方式。红外线传输方式应用最为广泛,其传输的最大优点是不受无线电波的干扰,但因为穿透性差功率低等原因导致传输距离极短。无线电波传输采用无线电波进行传输,覆盖范围远大于红外传输,还具有隐蔽和保密等特点,具有很高的可用性。因此,无线局域网一般采用无线电波方式进行数据传输。
WLAN加密方式为:WEP加密、WPA加密、802.11i和 WAPI加密,但 802.11i技术尚不成熟,中国自主研制的 WAPI处于起步状态,设备对 802.11i和 WAPI支持程度也较低,现主要采用WEP和WPA的加密方式[2]。
有线对等保密算法(WEP,Wired Equivalent Privacy),是一种数据加密算法。在 WEP加密的无线局域网中,所有客户端与无线接入点的数据都会以一个共享密钥(shared key)进行加密。WEP使用CRC-32来验证正确性,用 RC4串流加密技术达到机密性。
WEP加密方式如图1所示。
图1 WEP加密流程
具体流程为:①发送端通过计算原始数据包明文的32位 CRC循环冗余校验码来进行完整性校验值ICV(Integrity Check Value)的校验;②将校验码和明文构成传输载荷,在发送端和无线AP间共享一个长度为40 bit或104 bit的密钥,在发送端为每个数据包选定一个长度为 24 bit的数作为初始向量 IV(Initialized Vector),将 IV与密钥连接起来,构成一个长度 64 bit或128 bit的种子密匙;③将密匙送入RC4伪随机数生成器PRNG (Pseu-do-random Number Generator)中,生成加密密钥流;④将加密密钥流与传输载荷按位进行异或操作,获得密文[3]。
从上述加密流程可以看出,WEP的加密体制存在缺陷:发送端将 IV以明文形式和密文一起发送,当密文传送到AP后,AP从数据包中提取出IV和密文,将IV和所持有共享密钥送入伪随机数发生器得到的解密密钥流和加密密钥流相同。在接收端再将解密密钥流和密文进行异或运算,就得到了明文,将明文进行 CRC计算后就可以得到校验码ICV还原出密码。其解密流程如图2所示。
图2 WEP解密流程
因此,密匙的长度并不是 WEP 安全性的主要因素,静态的KEY是导致WEP不安全的主要原因。
Wi-Fi网络安全存取其认证分为 2种:①802.1x+EAP的方式,用户提供认证所需凭证,并通过特定认证服务器(一般是RADIUS服务器)来实现认证,该种加密方式多用于在大型企业无线网络;②WPA预共享密钥(WPA-PSK),该认证是第一种认证方式的简化模式,省去了专门认证服务器,仅要求在每个WLAN 节点预先输入一个密钥即可实现认证并获得访问权。这里的密钥仅仅用于认证,而不用于加密过程。
WEP使用一个静态的密钥来加密,WPA不断的转换密钥,使用动态密匙。其安全性要明显高于WEP加密。
WPA采用暂时密钥集成协议(TKIP,Temporal Key Integrity Protocol)加密, TKIP在WEP密码认证中添加了信息检测(MIC)、信息包单加密功能、具有序列功能的初始向量和密钥生成功能 4种算法来提高安全强度, TKIP使用的密钥与WLAN中每台设备的MAC 地址及更大的初始化向量合并,来确信每个站点均使用不同的密钥流进行加密,最后使用RC4加密算法对数据进行加密[4]。
由于TKIP对WEP加密的改进,WPA-PSK无法通过获取大量数据包来破解还原KEY。但仍可以通过截取其四次握手包来破解还原KEY。其破解流程如图3所示。
图3 WPA四次握手流程
4次握手流程为:①WPA-PSK初始化,AP广播SSID;②第1次握手,STATION发送一个随机数SNonce,AP端接收到SNonce后产生一个随机数ANonce,ANonce 用算法产生PTK,提取这个PTK 前16个字节组成一个MIC KEY;③第3次握手,AP发送上面产生的ANonce到STATION,STATION端用接收到ANonce,使用算法产生MIC值后产生PTK,提取这个PTK前16个字节组成一个MIC KEY,用这个MIC KEY和802.1x data数据帧得到MIC值;④第4次握手,STATION端用数据帧在最后填充上MIC值和两个字节的0后发送这个数据帧到AP,AP端收到数据帧后提取MIC,并把这个数据帧的MIC部分都填上0,这时用这个新数据帧,和用上面AP产生的MIC KEY 使用同样的算法得出MIC对比,若MIC等于STATION发送过来的MIC,则第四次握手成功。
这里的仿真平台为VMWARE7虚拟机下的 Ubuntu 9.1系统。WEP和WPA的KEY用算号器随机预生成,针对WEP和WPA分别使用SPOONWEP和SPOONWPA套件进行破解。测试设备为:①使用Netgear GR614 V9路由作为测试AP;②Intel 4965无线网卡和ZYDAS USB网卡作为测试网卡。
对 WEP进行交互注入,信道为 6,传输速度为802.11g,信号强度 96%,结果:其运行状态和结果如图4,55秒破解获得KEY。
图4 WEP注入式破解状态
对WPA进行字典破解[5],信道为6,传输速度为802.11g,信号强度96%,KEY随机生成。其运行状态如图5示。
图5 WPA字典算号破解状态
成功获取握手包,但由于随机产生的KEY不在字典库中,无法得到结果。更换字典库使预先生成 KEY包含在字典中,成功获得KEY,破解成功。
经过仿真可以发现,WEP加密破解安全系数较低;虽然WPA是WEP的增强,但还是通过握手包被截取后通过字典穷举算号的方法破解。因此,目前 WLAN的安全协议还有待提高,尤其是 WEP加密非常脆弱,已经不能作为合格的WALN加密协议使用,可以使用改进的WPA和WPA2加密或是WAPI加密来提高无线局域网的安全性。
[1]袁爱杰,胡中栋,万梅芬.基于无线网络安全WEP协议的探究[J]. 计算机时代,2009(09):14-15.
[2]郭凤宇,刘振兵,申海平.无线网络中加密体制及算法研究[J].网络安全技术与应用,2006(09):86-88.
[3]沈基明,曹秀英. 802.11WLAN安全漏洞分析和改进方案[J].通信技术,2002(07):67-69.
[4]王春晓,张鹏.关于无线局域网的安全规范 WPA的研究[J].通信技术,2010,43(09):145-146.
[5]李国朋,潘进,李波.基于WPA 的安全机制缺陷的攻击实现[J]. 电脑知识与技术,2008(06):1351-1352.