扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
对无线网安全的破坏,特别是对WPA安全标准的破解可以威胁企业网络的安全性及敏感业务信息。本文将揭示避免遭受密码攻击的破坏,解释WEP、WPA、WPA2的不同点,以及WEP的破解如何导致802.11标准的演化。
无线安全标准WEP的破解应当是几年以前的事儿了。WEP的第一个替代品WPA在2003年之后得到了全部新验证产品的响应和要求。但在2008年12月,关于WPA被破解的报告,特别是针对临时密钥完整性协议(TKIP)所使用的MIC(消息完整性检查)的新型攻击更是引起了恐慌。但笔者认为这种新型的攻击并不是使用WPA协议的WLAN的丧钟,你完全可以避免这种攻击。
理解最新的攻击
为理解最新的攻击,我们需要理解WEP、WPA、WPA2协议的不同点,以及WEP破解如何导致802.11标准的演进。
WEP使用RC4来加密无线接入点和客户端之间的数据交换,实施循环冗余校验码来定位差错。任何人都可以记录WEP加密的数据包,但如果没有WEP密钥的解密,这些用户就无法理解这些数据包。不幸的是,攻击者很快就可以知道如何分析WEP加密的数据包,从而猜测此密钥。因为每一个客户端都使用同样的WEP密钥来加密发送给特定接入点的每一个数据包,被破解的密钥可以解密所有将要发送的数据包,而不管是谁发送的数据包。结果,WEP不能真正地阻止802.11数据窃听。
开发临时密钥完整性协议(TKIP)的目的是为了快速修复比较陈旧的访问点及受到WEP损害的客户端。TKIP不再使用相同的密钥解密每一个数据包,而是为每个数据包使用不同密钥的RC4。这些密钥可以消除WEP加密破解者的威胁。此外,TKIP使用加了密钥的消息完整性检查(MIC)来检测被重放攻击或伪造的数据包。任何人都可以发送(即插入)被捕获或修改经TKIP加密的数据包,但这些数据包会被丢弃,因为MIC及校验和与数据包所承载的数据并不匹配。在收到第一个受损的数据包时,使用TKIP的接入点通常会传输一个错误报告。如果在60秒内收到了第二个受损的数据包,接入点通常会再停止监听一分钟,然后再为WLAN分配密钥,要求所有的客户端开始使用一个新的“密钥对”来生成MIC密钥和每个数据包的加密密钥。
这就堵住了WEP所遗留的诸多漏洞。所有通过WPA鉴定的产品都可以使用TKIP及其MIC来抵制802.11的数据窃听、伪造、重放攻击。但早在2003年的时候,IEEE就知道存在更为有效和强健的方法来提供这种安全性。这就是802.11i还定义了一个CCMP(计数器模式密码块链信息认证码协议)的原因,它使用了高级加密标准(AES)来替换TKIP及其MIC。所有的Wi-Fi认证产品现在必须支持WPA2,使得客户们可以为其WLAN选择恰当的安全。经WPA2认证的那些与比较陈旧的客户端会话的接入点还可以使用TKIP或AES-CCMP,而那些与新客户端会话的接入点只能使用AES-CCMP。
挑战WPA的安全性
几年来,WEP的破解者们已经变得很聪明了,他们使用一些具有奇特名字(如Korek、PTW、Chopchop等)的新方法来更快速地恢复WEP密钥。国外的研究人员拓斯和拜克曾描述如何应用快速的Chopchop类型的攻击来恢复一个MIC密钥,而不是WEP密钥或TKIP成对密钥。知道了你的MIC的另外一个攻击者可以插入被篡改的经TKIP加密的数据包,发送给客户端。例如,攻击者可以给你的客户端发送一个伪造的ARP响应,导致其将数据包错误地传给其它的局域网设备。
这种攻击是怎样进行的呢?第一步是捕获一个TKIP加密的包含几乎完全可知其数据的数据包。ARP的消息机制运行良好,因为其易于识别并携带可预测的数据,除了源/目标IP地址的最后一个字节,以及MIC和校验和。
下一步就是重放加密的数据包,试图猜测恰当的MIC和校验和。如果校验和错误,接入点会呈现一个传输错误并丢弃此数据包。如果校验和正确但MIC错误,接入点会传输一个MIC失败报告帧。这个过程必须不断重复,直至猜中正确的MIC,此时攻击者就既知道数据和MIC,又可以轻易地计算MIC密钥。
但作为一次实际攻击,攻击者必须能够快速猜测密钥,而不会激发可能改变密钥的防御机制。为避免密钥重置,攻击者可以每分钟仅发送一个错误的MIC。然而,在支持WMM(Wi-Fi多媒体)的QoS的接入点上,可在每一个级别上应用不同的计数器,准许每分钟生成多达8个错误的MIC而不会生成新密钥。猜测全部12个未知字节可在12分钟之内完成,这远远少于多数WPA认证的接入点所使用的默认重放时间间隔。
拓斯和拜克两位研究人员使用了一种称之为tkiptun-ng的攻击工具。任何人可以使用tkiptun-ng来恢复已知数据包的MIC密钥,然后再用其它aircrack-ng工具重新注入数据包的被篡改版本(它已经绕过了WPA完整性保护机制)。注意,在再次生成密钥之前,被恢复的MIC密钥仅能用于从接入点到目的客户端的数据包。而且,MIC密钥不能用于窃听其它的TKIP数据包,因为这种数据依然受到每个数据包加密密钥的保护。
战胜WPA攻击
说白了,避免受到这种攻击危害的最佳方法是停止使用TKIP。在这种攻击中被利用的MIC并没有被CCMP所采用,因此你最快捷的方法是开始使用WPA2,并对其进行配置,仅启用AES-CCMP。
Wi-Fi认证的产品要求使用WPA2已经有多年了,如果你一直依赖于标准的设备更新周期来从TKIP迁移那些陈旧的客户端,这种新的安全攻击可能成为完全放弃TKIP的动机。
然而,如果你的WLAN只包括一些较老的WPA设备(这些设备不可能由支持WPA2的设备来替换之),你可以采取以下的步骤:
1. 如果你的接入点(或WLAN控制器)提供了选项来禁用MIC的失败报告,你需要重新配置接入点。这种安全性攻击要求MIC报告来区分错误的校验和及错误的MIC;关闭报告选项会挫败攻击,而不会影响WLAN的性能。
2. 如果你的接入点(或WLAN控制器)提供了一个可配置的WPA重建密钥的时间间隔,你应当减少此时间间隔,使攻击者猜到整个MIC密钥之前能够更新“密钥对”。 拓斯和拜克建议用120秒,思科建议用300秒来减少对WLAN中RADIUS的影响。
3. 如果你的接入点(或WLAN控制器)提供了选项禁用WMM,这可能会延长用来猜测MIC密钥的时间。但对防止攻击却是不够的,而且不可能成为WLAN安全性与功能性的一个很好的制衡点。
为进一步限制由更频繁的重建密钥所引起的额外成本,你可能需要将WPA客户端与WPA2客户端隔离开。将WPA客户端迁移到其自已的SSID有助于帮助管理员计划其退役进程,并更容易看出哪些设备有可能被攻击者实施漏洞利用。
最后,需要记住的是,WPA和WPA2并不是确保消息安全性的唯一方法。更高一层的VPN协议,如IPsec和SSL等都可以用其自己的加密消息认证来检测数据包伪造。虽然高层的VPN不能像ARP一样用于LAN广播数据包,但它们可用于护卫所有的TCP/IP数据包防止安全攻击,而无需依赖于WPA的安全检查。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。