在以上解密过程中,接收方使用和发送方相反的过程,但是使用的算法都是相同的。首先进行帧的完整性校验,然后从中取出IV和使用的密码编号,将IV和对应的密钥组合成解密密钥流。最后再通过RC4算法计算出伪随机序列流,进行异或运算,计算出载荷以及ICV内容。对解密出的内容使用WEP加密第一步的方法生成ICV,然后比较ICV和ICV,如果两者相同,即认为数据正确。
WEP漏洞分析
WEP的安全技术源于名为RC4的RSA数据加密技术,是无线局域网WLAN的必要的安全防护层。目前常见的是64位WEP加密和128位WEP加密。随着无线安全的一度升级,WEP加密已经出现了100%的破解方法。通过抓包注入,获取足够的数据包,即可彻底瓦解WEP机密。所以,下面将分析一下WEP加密存在的漏洞。
1.密钥重复
由于WEP加密是基于RC4的序列加密算法。加密的原理是使用密钥生成伪随机密钥流序列与明文数据逐位进行异或,来生成密文。如果攻击者获得由相同的密钥流序列加密后得到的两段密文,将两段密文异或,生成的也就是两段明文的异或,因此能消去密钥的影响。通过统计分析以及对密文中几余信息进行分析,就可以推出明文。因而重复使用相同的密钥是不安全的。
2.WEP缺乏密钥管理
在WEP机制中,对应密钥的生成与分发没有任何的规定,对于密钥的使用也没有明确的规定,密钥的使用情况比较混乱。
数据加密主要使用两种密钥,Default Key和Mapping Key。数据加密密钥一般使用默认密钥中Key ID为0的Default Key密钥。也就是说,所有的用户使用相同的密钥。而且这种密钥一般是使用人工装载,一旦载入就很少更新,增加了用户站点之间密钥重用的概率。
此外,由于使用WEP机制的设备都是将密钥保存在设备中。因此一旦设备丢失,就可能为攻击者所使用,造成硬件威胁。
3.IV重用问题
IV重用问题(也称为IV冲撞问题),即不同的数据加密时使用的IV值相同。而且使用相同的数据帧加密密钥是不安全的。数据加密密钥是基密钥与IV值串联而成。一般,用户使用的基密钥是KeyId为0的Default key,因此不同的数据帧加密使用相同的IV值是不安全的。而且,IV值是明文传送的,攻击者可以通过观察来获得使用相同数据帧加密密钥的数据帧获得密钥。所以,要避免使用相同的IV值,这不仅指的是同一个用户站点要避免使用重复的IV,同时也要避免使用别的用户站点使用过的IV。
IV数值的可选范围值只有224个,在理论上只要传输224个数据帧以后就会发生一次IV重用。
设置WEP加密
通过前面的详细介绍,用户对WEP加密模式有了一个新的认识。为了使用户熟练地使用WEP加密,本节将介绍如何设置WEP加密
WEP加密认证类型
在无线路由器的WEP加密模式中,提供了3种认证类型,分别是自动、开放系统和共享密钥。其中,“自动”表示无线路由器和客户端可以自动协商成“开放系统”或者“共享密钥”。下面将分别对这两种认证类型进行详细介绍。
1.开放系统认证类型
开放系统认证是802.11的默认认证机制,整个认证过程以明文方式进行。一般情况下,凡是使用开放系统认证的请求工作站都能被成功认证,因此开放系统认证相当于空认证,只适合安全要求较低的场合。开放系统认证的整个过程只有两步,即认证请求和响应。
请求帧中没有包含涉及任何与请求工作站相关的认证信息,而只是在帧体中指明所采用的认证机制和认证事务序列号,其认证过程如图。如果802.11认证类型不包括开放系统,那么验证请求结果将会是“不成功”。
2.共享密钥认证
共享密钥认证是可选的。在这种认证方式中,响应工作站是根据当前的请求工作站是否拥有合法的密钥来决定是否允许该请求工作站接入,但并不要求在空中接口传送这个密钥。采用共享密钥认证的工作站必须执行WEP,其基本过程如图。
共享密钥认证过程,也就是前面所介绍的四次握手。下面详细介绍整个认证过程。如下所述。
(1)请求工作站发送认证管理帧。其帧体包括工作站声明标识=工作站的Mac地址、认证算法标识=共享密钥认证、认证事务序列号=1。
(2)响应工作站收到后,返回一个认证帧。其帧体包括认证算法标识=“共享密钥认证”、认证事务序列号=2、认证状态码=“成功”、认证算法依赖信息=“质询文本”。如果状态码是其他状态,则表明认证失败,而质询文本也将不会被发送,这样整个认证过程就此结束。其中质询文本是由WEP伪随机数产生器产生的128字节的随机序列。
(3)如果步骤(2)中的状态码=“成功”,则请求工作站从该帧中获得质询文本并使用共享密钥通过WEP算法将其加密,然后发送一个认证管理帧。其帧体包括认证算法标识=“共享密钥认证”、认证事务序列号=3、认证算法依赖信息=“加密的质询文本”。
(4)响应工作站在接收到第三个帧后,使用共享密钥对质询文本解密。如果WEP的ICV校验失败,则认证失败。如果WEP的ICV校验成功,响应工作站会比较解密后的质询文本和自己发送过的质询文本,如果它们相同,则认证成功。否则,认