电脑技术学习

Wi-Fi及无线网状网(Mesh)的安全

dn001

Wi-Fi是基于IEEE802.11标准的无线网络技术.无线网状网(Mesh)则是Wi-Fi技术的进一步延伸.它通过将无线路由器或交换机之间组网,从而进一步减少布线和提供更大范围的无线上网服务。本文旨在对Wi-Fi及Mesh的安全方面的历史与现状进行一些简单介绍。

为方便起见,文中将用AP表示无线接入点(AccessPoint)。用Mesh表示无线网状网。

Wi-Fi安全的历史与演化

WEP及其漏洞

在1999年通过的802.11标准中,关于安全的部分叫WEP,是英文中WiredEquivalentPrivacy的缩写,本意是实现一种与有线等价的安全程度。

WEP的设计相对简单,它包括一个简单的基于挑战与应答的认证协议和一个加密协议。这两者都是使用RC4的加密算法,密钥的长度是40位(由于密钥会与一个24位的初始向量(IV)连接在一起使用,所以也被称为64位的WEP)。WEP还包括一个使用32位CRC的校验机制叫ICV(IntegrityCheckValue),其目的是用来保护信息不在传输过程中被修改。

WEP在推出以后,很快被发现有很多漏洞,主要有以下几点:

认证机制过于简单,很轻易通过异或的方式破解,而且一旦破解,由于使用的是与加密用的同一个密钥,所以还会危及以后的加密部分。

认证是单向的,AP能认证客户端,但客户端没法认证AP。

初始向量(IV)太短,重用很快,为攻击者提供很大的方便。

RC4算法被发现有”弱密钥”(WeakKey)的问题,WEP在使用RC4的时候没有采用避免措施。

WEP没有办法应付所谓“重传攻击”(ReplayAttack)。

ICV被发现有弱点,有可能传输数据被修改而不被检测到。

没有密钥治理,更新,分发的机制,完全要手工配置,因为不方便,用户往往常年不会去更换。

由于有上面列出的众多缺点,人们可能会觉得WEP一无是处。其实倒不然。WEP从被宣称破解到今天,仍被人们广泛使用,绝非偶然.其原因除了它简单易行,速度较快,对硬件要求低的特点以外,WEP的确也能满足在安全要求不太高的情况下的需求。比如在家庭,旅馆等地,WEP提供的保护往往已足够。所以对WEP的应用也应视需求而定,没必要先入为主.

不过有一点需要提及,就是人们已不大再使用WEP提供的认证,而只用WEP提供的加密。原因已经提到过,WEP的认证不仅较弱,而且可能危及到加密本身。

WEP的改进

-128位WEP

大部分供给商现在都提供一种用104位密钥的WEP(加上24位IV一共128位),这对WEP的安全性有改进,但上面提到的问题仍然存在。

-动态的WEP

为了加强WEP的安全性,一些供给商提出了一些动态密钥的WEP方案。在这样的方案中,WEP的密钥不再是静态不变的,而是能定期动态更新。比如思科(Cisco)提供的LEAP(LightweightExtensibleAuthentication Protocol)就是这样一种方案。LEAP同时还提供双向的基于802.1X的认证。这些方案在一定程度上缓解了WEP的危机,但它们是某个供给商的私有方案而非标准,而且它们离完全解决WEP的所有问题还有差距。

WPA的出现

为了解决WEP的危机,IEEE展开了新的802.11安全标准的制订,但由于一个IEEE标准的制订需要的时间较长,工业界为了填补IEEE标准出台之前的真空,迅速采取了行动。WPA就是Wi-Fi联盟于2002年左右推出的一套自己的标准。

WPA虽然不是IEEE的标准,但也并非空穴来风。它的制订是基于802.11i协议的一个初稿(Draft)。所以它与后来的802.11i终稿在结构以及其它一些方面很相似。其中之一是使用基于802.1X的认证机制。WPA还采用了一套叫TKIP(TemporalKeyIntegrityProtocol)的加密协议。TKIP仍然使用RC4算法,所以当时的已有硬件平台可以在只做软件升级的情况下就支持它。但同时设计者又考虑了WEP的教训,使用了较长的IV,密钥,和动态变化的密钥机制,所以TKIP的安全性较之WEP加密大大提高。WPA同时也加入了对重传攻击的防范,并对校验机制等做了重大改进。这些改进加上Wi-Fi联盟的影响力使WPA推出之后得到了广泛的采用。


;;; 802.11i/WPA2

2004年6月,IEEE终于通过了802.11i协议。Wi-Fi联盟则把其802.11i实现取名WPA2,通常这二者被认为是同一件事。

相对于已出台的WPA,802.11i使用的的加密协议是AES(AdvancedEncryptionStandard)而非TKIP。AES被认为是一个更强的加密系统,它一般需要专门的硬件支持。今天的Wi-Fi产品应该都已支持AES加密。

在安全性的其它方面,802.11i也象WPA一样提供很全面甚至更强的支持。在认证发面,802.1X的体系结构被采用。在密钥使用上,802.11i有一整套密钥等级划分和密钥动态产生及更新机制。802.11i对重传攻击的防范,信息校验等自然也都考虑的非常全面。总而言之,802.11i是一整套非常全面,同时也非常复杂的安全协议系统,代表了当前Wi-Fi安全的最高级支持。由于其复杂性,细节不可能在本文中一一介绍。下面只就其中

采用的802.1X认证体系结构作一个简单介绍。

802.1X

802.1X是IEEE关于局域网络访问控制的标准,它是一个基于端口概念的标准。它可以用来决定是否给予一个用户访问一个网路端口的权限。这里”端口”是指逻辑上的端口.具体到Wi-Fi中,一个客户端与AP的连接(association)就可视为一个端口。

802.1X是一个标准,它使用的主要协议则是基于一个IETF定义的叫EAP的协议。EAP是”可扩展认证协议”的意思(ExtensibleAuthentication

Protocol)。顾名思义,EAP是一个可扩展的协议框架。具体的EAP协议则可以有很多种,例如EAP-TLS,EAP-TTLS,PEAP等等。EAP最初并非为局域网(LAN)设计,所以EAP在局域网上的实现有一个自己的名字:EAPOL,

是EAPoverLAN的意思。EAPOL就是802.1X的核心部分。

802.1X和EAP都并非为Wi-Fi而设计,但却在Wi-Fi上找到了广泛的应用。在802.1X的典型体系结构中,有以下三个参与信息交互的角色:

英文中分别叫Supplicant,Authenticator和Authentication Server。

所谓Supplicant就是认证的客户端,在Wi-Fi中通常就是要求连接的无线客户端上的认证软件。AuthenticationServer就是认证服务器。在Wi-Fi中,通常是AP来充当Authenticator的角色。当进行802.1X/EAP认证时,在客户端和AP间运行的就是EAPOL协议,而在AP和认证服务器之间运行的通常是一个叫RADIUS(RemoteAuthenticationDialIn User

Service)。其实802.1X并不指定AP和认证服务器之间运行什么协议,RADIUS只是一个事实上的标准,绝大部分的应用都是用的RADIUS协议。同样原因,通常的认证服务器就是一个RADIUS服务器。

一个典型的802.1X认证过程通常是这样的:

无线客户端向AP发一个EAPOL-Start的包提出认证请求,AP收到后会向无线客户端作出回应(EAPRequest/Identity包),之后两者之间就会开始更多的EAP交互。但在这个过程中AP基本上是一个透明的转发者。它把从

无线客户端收到的EAP包,翻译并封装成RADIUS包转发给RADIUS服务器。RADIUS服务器回的包同样也会被翻译回EAP的包送给客户端。整个交互完成后,AP会最终从RADIUS学到认证是否成功,从而决定是否给予无线客户端以访问权限。

关于802.1X的模式,可以用下图说明:

Wi-Fi及无线网状网(Mesh)的安全

PSK

PSK是Pre-SharedKey的缩写,即预共享的密钥。WPA和802.11i/WPA2都支持一个PSK的模式。简单的说,PSK模式是一个简化的WPA/802.11i,是一个没有802.1X部分的WPA或802.11i。

802.1X在WPA和802.11i的应用中,除了认证之外,还提供一个作用,它会让客户端和认证服务器之间产生一个叫PMK(PairwiseMasterKey)的密钥。PMK是WPA/802.11i密钥层级里的最顶层,是所有其它密钥产生的基础,极其重要。

但在PSK模式里,由于没有802.1X的参与,PMK则是象WEP的密钥一样预装,但跟WEP不同的是,所有最终用于加密及其它一些功能的密钥仍是动态产生的。而且,PSK模式也包含WPA和802.11i中除了802.1X以外的所有其它功能。所以PSK模式虽然没有完整的WPA和802.11i/WPA2模式那么全面,仍是一个很强的安全方案。

Mesh路由器之间的安全

以上主要是介绍Wi-Fi中AP与客户端之间的安全发展及现状。在Mesh中,AP与客户端之间的安全仍是安全的重要部分,但同时Mesh也引入了Mesh内部路由器之间的安全问题。这里简单介绍一下。


;由于一个Mesh通常由一个供给商提供设备,所以Mesh路由器之间的安全目前并没有标准。802.11s是未来的Mesh标准,但并没有出台。所以通常路由器之间的安全用的是各个供给商之间的私有解决方案。

一个通常的做法是利用以上提到的传统Wi-Fi安全方案,包括802.11i在内。有的Mesh路由器之间会选用基于安全证书的认证方式,具体实现既可能是通行的802.1X方式,或其它方式(包括私有方式)。Mesh供给商还可能选择其它的私有协议来实现Mesh路由器之间的安全。

在各种方式中,WPA和802.11i的PSK模式是一种很可行的方案。如以前提到,PSK本身是一个很强的安全方案的安全方案。同时因为不要求一个专门的认证服务器,符合Mesh在室外布设和分布式的特点。对PSK密钥治理上的缺点,由于一个Mesh的各个节点相对固定,数量也相对较有限,所以也不是问题。

阿德利亚的Mesh安全

这里顺带介绍以下阿德利亚作为一家发起于美国硅谷的新兴Mesh供给商在安全方面的支持.

在客户端接入方面,阿德利亚提供全套的安全支持。这包括WEP,WPA和802.11i/WPA2的支持。同时也支持PSK的模式,适合不同类型用户的需求。阿德利亚的Mesh路由器提供有命令行,WEB界面,网络治理软件等多种功能强大的配设方式,配置起来很方便。

与此同时,阿德利亚还提供一些例如MAC地址过滤等辅助安全措施。

在Mesh路由器之间,阿德利亚不仅提供基于PSK的安全支持,同时通过私有协议进一步确保只有用户授权的阿德利亚路由器才能进行组网。阿德利亚同时也在积极关注802.11s标准的最新进展以提供相应的支持。