admin管理员组

文章数量:1540694

2024年3月26日发(作者:)

最近出现的对无线互联网安全标准,特别是对Wi-Fi受保护访问(WPA)安全标准的破解,

给企业的网络和敏感商业信息或数据带来了新的威胁。本文介绍了避免遭受这种密码攻击的

最佳手段。同时解释了WEP,WPA,WPA2之间的区别,以及对WEP的破解如何导致802.11

标准的进化。

802.11的有线等效加密标准(WEP)已经在7年前就被破解了。Wi-Fi受保护访问(WPA)

标准是WEP的第一个替代品。从2003年底开始,所有经过Wi-Fi认证的产品都必须使用

WPA。但在2008年底公布的WPA被破解的消息,确切地说是一个对临时密钥完整性协议

(TKIP)所使用的消息完整性检查(MIC)的攻击。尽管出现了这次攻击,但并不代表使

用WPA的无线局域网络(WLAN)走到了尽头,只能说明该标准存在安全问题,值得我们

注意,并需要采取措施避免其所带来的影响。

预备知识

要应对最新的这次攻击,我们首先要了解WEP、WPA和WPA2之间的区别,以及对

WEP的破解是如何推动802.11标准的发展的。

WEP使用RC4对无线接入点(AP)和客户端之间交换的数据进行编码,即加密。同时

利用循环冗余校验(CRC)来发现错误。任何人都可以记录用WEP加密的数据包,但要想

读懂这些数据包的内容,则需要用WEP 密钥进行解密。但不幸的是,黑客们很快就掌握了

通过分析用WEP加密的数据包来猜出所用的密钥(即破解)的方法。因为对一个特定的无

线接入点来说,所有向它发送数据的客户端都使用相同的WEP密钥对全部传送的数据包进

行加密。这样,一但破解出数据传送所用的密钥就可以对以后收到的任何人发送的任何数据

包进行解密。也就是说802.11标准不能通过使用WEP真正的阻止数据泄露。

TKIP作为补丁很快就出现了,它弥补了早期无线接入点(AP)和客户端被WEP削弱

的安全性。TKIP不再使用相同的密钥来加密每一个数据包,它使用的 RC4对每一个数据

包分配了不同的密钥。这些随数据包而变的密钥化解了黑客们对WEP加密方法的破解。另

外,TKIP还使用了带密钥的消息完整性检查(MIC)技术来发现那些被重放和仿冒的数据

包。虽然谁都可以从网络中截获经过TKIP加密的数据包,然后对这些数据包进行修改,最

后再将它们发送到网络中去(注入),但这些数据包最终都会被丢弃,因为在对MIC和校验

和进行检查时就会发现它们与数据包所携带的数据不匹配。当采用TKIP的无线接入点收到

第一个不正确的MIC时,就会发送一个错误报告。如果在60秒内又收到了第二个不正确的

数据包,则无线接入点就会停止监听1分钟,然后再为无线局域网更换密钥,即要求所有的

客户端都开始使用新的“成对主密钥”去生成MIC密钥和用于每个数据包的各不相同的加

密密钥。

这样就弥补了WEP留下的多个漏洞。任何经过WPA认证的产品都可以利用TKIP和它

所使用的MIC抵御对802.11的各种窃听、仿冒和重放攻击(replay attack)。其实早在2003

年IEEE就已经知道了还有多种更有效和更鲁棒的方法来实现这种安全性。这就是为什么

802.11i定义了基于先进加密标准(AES)的密码块链信息认证码协议(CCMP)来代替TKIP

和MIC。现在所有经过Wi-Fi认证的产品都必须支持Wi-Fi保护访问版本2(WPA2),它要

求由用户来选择适用于自己的无线局域网的安全方案。经过WPA2认证的无线接入点在与

旧的客户端交互时,可以接受TKIP或AES-CCMP安全方案,但在与新的客户端交互时,

只支持AES- CCMP。

挑战WPA的完整性

如果有读者对密码攻击及其背后的数学问题感兴趣,建议他们去读一读“对WEP和

WPA的实际攻击”(Practical attacks against WEP and WPA)这篇文章,这是由研究人员Martin

Beck 和Erik Tews撰写并于2008年11月提交到PacSec2008会议上的论文。但我们在这里

只是对相关知识作一简单介绍,解释一下最近这次攻击能够实现什么,不能实现什么,以指

1 / 4

导读者如何避免成为这种攻击的受害者。

随着时间的推移,WEP的破解者变得越来越聪明了,他们使用一些名称古怪的新方法,

如:Korek、PTW和Chopchop就可以更快地恢复出WEP密钥来。Tews和Beck在十一月份

提交的论文中描述了如何应用Chopchop风格的攻击很快地恢复出MIC密钥,而不是WEP

密钥或者TKIP成对主密钥。当攻击者获取了用户的MIC密钥后就可以对发往无线客户端

的经TKIP加密的数据包进行修改,并重新发送出去。例如,攻击者可以向你的客户端发送

一份伪造的ARP应答,使得这些客户端将数据包指向错误的局域网设备。

那么这种攻击是如何实施的呢?首先,要抓取一个使用TKIP加密的数据包,数据包的

内容应该是事先完全知道的。ARP消息就比较合适。因为这种数据包很容易识别,而且它

所携带的数据基本上是可以预知的,除了源和目的IP地址的最后一个字节,当然也不包括

MIC及校验和。

然后,对这个加密的数据包进行重放,以试图猜出正确的MIC和校验和。如果校验和

出错了,无线接入点会认为是传输错误造成的,只是简单地将这个数据包丢弃。如果校验和

是正确的,而MIC出错了,无线接入点就会发送一个MIC错误报告帧。攻击者必须重复这

一过程,直到猜出正确的MIC。这时,攻击者同时获得了数据和相应的MIC,可以很容易

地计算出MIC密钥。

但对于一次实际的攻击,攻击者必须能在很短的时间内猜出那个密钥,以免触发了防护

机制对密钥进行更换。为了避免触发密钥更新,攻击者在每分钟内只能造成一个错误的MIC。

可是,在支持Wi-Fi多媒体(WMM)服务质量(QoS)的无线接入点中,要为每一个优先

级分配一个不同的计数器,使得在每分钟出现8

个错误的MIC(每个优先级一个)时也不会触发密钥更新。这样,猜出全部12个未知字节

(MIC和校验和)的时间也就是12分钟多一点,远远小于大多数通过WPA认证的无线接

入点所使用的缺省密钥更新间隔。

Tews和Beck除了对这种方法进行了定义,还实现了攻击工具的概念验证版——

tkiptun-ng。攻击者可以利用tkiptun-ng工具从一个基本了解的数据包中恢复出MIC密钥,

然后再利用其它aircrack-ng工具将这个被修改的能够躲过WPA完整性防护机制的数据包重

新注入。请注意这个被恢复出来的MIC密钥只能用在无线接入点向目标客户端发出的数据

包上,而且只能在下一次更新密钥前使用。另外,攻击者不能使用这个MIC密钥去破解其

它 TKIP数据包,因为每个数据包的加密密钥是不一样的。

战胜WPA攻击

有一点是显而易见的:要想避免成为这种攻击的受害者,最好的方法就是停止使用

TKIP。CCMP就没有用在这次攻击中被利用的MIC。所以现在最保险的一种方法就是开始

使用WPA2,并将其配置成只允许AES-CCMP。WPA2混合模式允许在命名相同的网络

(SSID)中同时存在TKIP和AES- CCMP的客户端。用户要想知道如何避免使用WPA2混

合模式,可以参考名为“在企业中部署WPA和WPA2”的白皮书。

WPA2对于多数无线局域网来说都被看作是一个富有生命力的选择。WPA2作为Wi-Fi

产品认证的必要条件已有多年。如果用户一直都是通过常规的设备更新周期来使旧的客户端

远离TKIP,那么刚发生的这次对完整性的攻击可以看作是抛弃那些旧的牵连、完全丢掉

TKIP的良好机会。

如果用户无法很快将无线局域网中存在的那些只支持WPA的旧设备替换成支持WPA2

的设备,仍可以采用下列措施来应对这次完整性攻击:

1、如果用户的无线接入点(即无线局域网控制器)可以通过选项关闭MIC错误报告,

那么只要重新配置用户的无线接入点将其关闭即可。这次的完整性攻击需要利用 MIC错误

报告来区分是校验和错误还是MIC错误,关掉了报告功能就等于击退了这次攻击。而且关

2 / 4

掉报告功能不会对用户的无线局域网产生任何实际的影响。

2、如果用户的无线接入点(即无线局域网控制器)中支持对WPA密钥更新的时间间

隔进行配置,就可以通过将该时间间隔减小,使得成对主密钥(pairwise master key)可以在

攻击者猜出完整的MIC密钥之前进行更新。Tews和Beck建议将时间间隔调整到120秒;

而Cisco则建议将时间间隔调整到300秒,以减少对应用802.1X(WPA企业版)的无线局

域网中的RADIUS服务器的影响。

3、

如果用户的无线接入点(即无线局域网控制器)可以通过选项关闭WMM或将发往禁用优

先级的数据包丢弃,就可以延长攻击者猜出MIC密钥所需的时间。但这种方法不足以预防

此次攻击,对于用户的无线局域网来说并不是一种有效的安全性/可用性折中方案。

为了进一步减少由于频繁更新密钥所带来的额外开销,可以考虑将WPA客户端与

WPA2客户端分开。让WPA客户端使用自己专有的SSID,这样用户就更容易安排何时撤换

它们,同时也更容易发现哪些设备可能会被完整性攻击所利用。

对于那些突然出现大量校验和错误及MIC错误的SSID,如果这些错误是由某一个特定

终端引起的,用户就应该对这些SSID进行更密切的监视。这些错误在无线局域网中是经常

可以看到的,是不会引起报警的。但对于无线入侵防御系统(IPS)来说,会很快发现tkiptun-ng

攻击的特征。

最后,要记住WPA和WPA2并不是确保消息完整性的唯一方式。象IPsec、SSL等更

高层次的VPN协议可以利用他们自身的密钥消息认证代码来检测仿冒。尽管更高层次的

VPN协议不能用于象ARP这样的局域网广播数据包,但仍可以用它们来保护所有的TCP/IP

数据包免受完整性攻击,而不是只依赖WPA完整性检查。(编辑:)

WPA和WPA2区别

Wi-Fi 所制定的商业化标准基本上也都符合 IEEE 所制定的技术性标准。

WPA(Wi-Fi Protected Access) 事实上就是由Wi-Fi 联盟所制定的安全性标准 , 这个商业化

标准存在的目的就是为了要支持 IEEE 802.11i 这个以技术为导向的安全性标准。而 WPA2

其实就是 WPA 的第二个版本。 WPA 之所以会出现两个版本的原因就在于 Wi-Fi 联盟的

商业化运作。

我们知道 802.11i 这个任务小组成立的目的就是为了打造一个更安全的无线局域网 ,

所以在加密项目里规范了两个新的安全加密协定 – TKIP 与CCMP 。其中 TKIP 虽然针

对 WEP 的弱点作了重大的改良 , 但保留了 RC4 演算法和基本架构 , 言下之意 ,TKIP

亦存在着RC4 本身所隐含的弱点。因而 802.11i 再打造一个全新、安全性更强、更适合应

用在无线局域网环境的加密协定 -CCMP 。所以在 CCMP就绪之前 ,TKIP 就已经完成了。

但是要等到 CCMP 完成 , 再发布完整的 IEEE 802.11i 标准 , 可能尚需一段时日 , 而

Wi-Fi 联盟为了要使得新的安全性标准能够尽快被布署 , 以消除使用者对无线局域网安全

性的疑虑 , 进而让无线局域网的市场可以迅速扩展开来 ,因而使用已经完成 TKIP 的

IEEE 802.11i 第三版草案 (IEEE 802.11i draft 3) 为基准 , 制定了 WPA。而于 IEEE 完成并

公布 IEEE 802.11i 无线局域网安全标准后 ,Wi-Fi 联盟也随即公布了 WPA 第 2 版 (WPA

2)。所以:

WPA= IEEE 802.11i draft 3 = IEEE 802.1X/EAP + WEP( 选择性项目 )/TKIP

WPA2 = IEEE 802.11i = IEEE 802.1X/EAP + WEP( 选择性项目 )/TKIP/CCMP

3 / 4

( 有些无线网路设备中会以 AES 、 AES-CCMP 的字眼来取代 CCMP)

在有些无线网路设备的规格中会看到像 WPA-Enterprise / WPA2-Enterprise 以及

WPA-Personal / WPA2-Personal 的字眼 , 其实 WPA-Enterprise / WPA2-Enterprise 就是

WPA / WPA2 ; WPA-Personal / WPA2-Personal 其实就是 WPA-PSK / WPA2-PSK, 也就

是以 ”pre-share key”或 ” passphrase” 的验证 (authentication) 模式来代替 IEEE

802.1X/EAP 的验证模式 ,PSK模式下不须使用验证服务器 ( 例如 RADIUS Server), 所以

特别适合家用或 SOHO 的使用者。

转自:

我想一般用户不可能去弄。都是psk了。

2

回复x:WEP、WPA、WPA2是wifi不同安全级别的认证方式,psk是一种具体的加

密算法,WPA和WPA2又分为个人和企业,只有企业级的认证才需要认证服务器,WPA

personal, WPA2 personal并不需要专门额外的认证服务器

4 / 4

本文标签: 无线密钥攻击数据包局域网