Wi-Fi及無線網(wǎng)狀網(wǎng)Mesh的安全
本文旨在對Wi-Fi及Mesh的安全方面的歷史與現(xiàn)狀進(jìn)行一些簡單介紹。
為方便起見,文中將用AP表示無線接入點(diǎn)(AccessPoint)。用Mesh表示無線網(wǎng)狀網(wǎng)。
Wi-Fi安全的歷史與演化
WEP及其漏洞
在1999年通過的802.11標(biāo)準(zhǔn)中,關(guān)于安全的部分叫WEP,是英文中WiredEquivalentPrivacy的縮寫,本意是實(shí)現(xiàn)一種與有線等價的安全程度。
WEP的設(shè)計(jì)相對簡單,它包括一個簡單的基于挑戰(zhàn)與應(yīng)答的認(rèn)證協(xié)議和一個加密協(xié)議。這兩者都是使用RC4的加密算法,密鑰的長度是40位(由于密鑰會與一個24位的初始向量(IV)連接在一起使用,所以也被稱為64位的WEP)。WEP還包括一個使用32位CRC的校驗(yàn)機(jī)制叫ICV(IntegrityCheckValue),其目的是用來保護(hù)信息不在傳輸過程中被修改。
WEP在推出以后,很快被發(fā)現(xiàn)有很多漏洞,主要有以下幾點(diǎn):
認(rèn)證機(jī)制過于簡單,很容易通過異或的方式破解,而且一旦破解,由于使用的是與加密用的同一個密鑰,所以還會危及以后的加密部分。
認(rèn)證是單向的,AP能認(rèn)證客戶端,但客戶端沒法認(rèn)證AP。
初始向量(IV)太短,重用很快,為攻擊者提供很大的方便。
RC4算法被發(fā)現(xiàn)有”弱密鑰”(WeakKey)的問題,WEP在使用RC4的時候沒有采用避免措施。
WEP沒有辦法應(yīng)付所謂“重傳攻擊”(ReplayAttack)。
ICV被發(fā)現(xiàn)有弱點(diǎn),有可能傳輸數(shù)據(jù)被修改而不被檢測到。
沒有密鑰管理,更新,分發(fā)的機(jī)制,完全要手工配置,因?yàn)椴环奖?,用戶往往常年不會去更換。
由于有上面列出的眾多缺點(diǎn),人們可能會覺得WEP一無是處。其實(shí)倒不然。WEP從被宣稱破解到今天,仍被人們廣泛使用,絕非偶然.其原因除了它簡單易行,速度較快,對硬件要求低的特點(diǎn)以外,WEP的確也能滿足在安全要求不太高的情況下的需求。比如在家庭,旅館等地,WEP提供的保護(hù)往往已足夠。所以對WEP的應(yīng)用也應(yīng)視需求而定,沒必要先入為主.
不過有一點(diǎn)需要提及,就是人們已不大再使用WEP提供的認(rèn)證,而只用WEP提供的加密。原因已經(jīng)提到過,WEP的認(rèn)證不僅較弱,而且可能危及到加密本身。
WEP的改進(jìn)
-128位WEP
大部分供應(yīng)商現(xiàn)在都提供一種用104位密鑰的WEP(加上24位IV一共128位),這對WEP的安全性有改進(jìn),但上面提到的問題仍然存在。
-動態(tài)的WEP
為了加強(qiáng)WEP的安全性,一些供應(yīng)商提出了一些動態(tài)密鑰的WEP方案。在這樣的方案中,WEP的密鑰不再是靜態(tài)不變的,而是能定期動態(tài)更新。比如思科(Cisco)提供的LEAP(LightweightExtensibleAuthentication Protocol)就是這樣一種方案。LEAP同時還提供雙向的基于802.1X的認(rèn)證。這些方案在一定程度上緩解了WEP的危機(jī),但它們是某個供應(yīng)商的私有方案而非標(biāo)準(zhǔn),而且它們離完全解決WEP的所有問題還有差距。
WPA的出現(xiàn)
為了解決WEP的危機(jī),IEEE展開了新的802.11安全標(biāo)準(zhǔn)的制訂,但由于一個IEEE標(biāo)準(zhǔn)的制訂需要的時間較長,工業(yè)界為了填補(bǔ)IEEE標(biāo)準(zhǔn)出臺之前的真空,迅速采取了行動。WPA就是Wi-Fi聯(lián)盟于2002年左右推出的一套自己的標(biāo)準(zhǔn)。
WPA雖然不是IEEE的標(biāo)準(zhǔn),但也并非空穴來風(fēng)。它的制訂是基于802.11i協(xié)議的一個初稿(Draft)。所以它與后來的802.11i終稿在結(jié)構(gòu)以及其它一些方面很相似。其中之一是使用基于802.1X的認(rèn)證機(jī)制。WPA還采用了一套叫TKIP(TemporalKeyIntegrityProtocol)的加密協(xié)議。TKIP仍然使用RC4算法,所以當(dāng)時的已有硬件平臺可以在只做軟件升級的情況下就支持它。但同時設(shè)計(jì)者又考慮了WEP的教訓(xùn),使用了較長的IV,密鑰,和動態(tài)變化的密鑰機(jī)制,所以TKIP的安全性較之WEP加密大大提高。WPA同時也加入了對重傳攻擊的防范,并對校驗(yàn)機(jī)制等做了重大改進(jìn)。這些改進(jìn)加上Wi-Fi聯(lián)盟的影響力使WPA推出之后得到了廣泛的采用。
802.11i/WPA2
2004年6月,IEEE終于通過了802.11i協(xié)議。Wi-Fi聯(lián)盟則把其802.11i實(shí)現(xiàn)取名WPA2,通常這二者被認(rèn)為是同一件事。
相對于已出臺的WPA,802.11i使用的的加密協(xié)議是AES(AdvancedEncryptionStandard)而非TKIP。AES被認(rèn)為是一個更強(qiáng)的加密系統(tǒng),它一般需要專門的硬件支持。今天的Wi-Fi產(chǎn)品應(yīng)該都已支持AES加密。
在安全性的其它方面,802.11i也象WPA一樣提供很全面甚至更強(qiáng)的支持。在認(rèn)證發(fā)面,802.1X的體系結(jié)構(gòu)被采用。在密鑰使用上,802.11i有一整套密鑰等級劃分和密鑰動態(tài)產(chǎn)生及更新機(jī)制。802.11i對重傳攻擊的防范,信息校驗(yàn)等自然也都考慮的非常全面。總而言之,802.11i是一整套非常全面,同時也非常復(fù)雜的安全協(xié)議系統(tǒng),代表了當(dāng)前Wi-Fi安全的最高級支持。由于其復(fù)雜性,細(xì)節(jié)不可能在本文中一一介紹。下面只就其中
采用的802.1X認(rèn)證體系結(jié)構(gòu)作一個簡單介紹。
802.1X
802.1X是IEEE關(guān)于局域網(wǎng)絡(luò)訪問控制的標(biāo)準(zhǔn),它是一個基于端口概念的標(biāo)準(zhǔn)。它可以用來決定是否給予一個用戶訪問一個網(wǎng)路端口的權(quán)限。這里”端口”是指邏輯上的端口.具體到Wi-Fi中,一個客戶端與AP的連接(association)就可視為一個端口。
802.1X是一個標(biāo)準(zhǔn),它使用的主要協(xié)議則是基于一個IETF定義的叫EAP的協(xié)議。EAP是”可擴(kuò)展認(rèn)證協(xié)議”的意思(ExtensibleAuthenticationProtocol)。顧名思義,EAP是一個可擴(kuò)展的協(xié)議框架。具體的EAP協(xié)議則可以有很多種,例如EAP-TLS,EAP-TTLS,PEAP等等。EAP最初并非為局域網(wǎng)(LAN)設(shè)計(jì),所以EAP在局域網(wǎng)上的實(shí)現(xiàn)有一個自己的名字:EAPOL,是EAPoverLAN的意思。EAPOL就是802.1X的核心部分。
802.1X和EAP都并非為Wi-Fi而設(shè)計(jì),但卻在Wi-Fi上找到了廣泛的應(yīng)用。在802.1X的典型體系結(jié)構(gòu)中,有以下三個參與信息交互的角色:
英文中分別叫Supplicant,Authenticator和Authentication Server。
所謂Supplicant就是認(rèn)證的客戶端,在Wi-Fi中通常就是要求連接的無線客戶端上的認(rèn)證軟件。AuthenticationServer就是認(rèn)證服務(wù)器。在Wi-Fi中,通常是AP來充當(dāng)Authenticator的角色。當(dāng)進(jìn)行802.1X/EAP認(rèn)證時,在客戶端和AP間運(yùn)行的就是EAPOL協(xié)議,而在AP和認(rèn)證服務(wù)器之間運(yùn)行的通常是一個叫RADIUS(RemoteAuthenticationDialIn UserService)。其實(shí)802.1X并不指定AP和認(rèn)證服務(wù)器之間運(yùn)行什么協(xié)議,RADIUS只是一個事實(shí)上的標(biāo)準(zhǔn),絕大部分的應(yīng)用都是用的RADIUS協(xié)議。同樣原因,通常的認(rèn)證服務(wù)器就是一個RADIUS服務(wù)器。
一個典型的802.1X認(rèn)證過程通常是這樣的:
無線客戶端向AP發(fā)一個EAPOL-Start的包提出認(rèn)證請求,AP收到后會向無線客戶端作出回應(yīng)(EAPRequest/Identity包),之后兩者之間就會開始更多的EAP交互。但在這個過程中AP基本上是一個透明的轉(zhuǎn)發(fā)者。它把從無線客戶端收到的EAP包,翻譯并封裝成RADIUS包轉(zhuǎn)發(fā)給RADIUS服務(wù)器。RADIUS服務(wù)器回的包同樣也會被翻譯回EAP的包送給客戶端。整個交互完成后,AP會最終從RADIUS學(xué)到認(rèn)證是否成功,從而決定是否給予無線客戶端以訪問權(quán)限。
關(guān)于802.1X的模式,可以用下圖說明:
PSK
PSK是Pre-SharedKey的縮寫,即預(yù)共享的密鑰。WPA和802.11i/WPA2都支持一個PSK的模式。簡單的說,PSK模式是一個簡化的WPA/802.11i,是一個沒有802.1X部分的WPA或802.11i。
802.1X在WPA和802.11i的應(yīng)用中,除了認(rèn)證之外,還提供一個作用,它會讓客戶端和認(rèn)證服務(wù)器之間產(chǎn)生一個叫PMK(PairwiseMasterKey)的密鑰。PMK是WPA/802.11i密鑰層級里的最頂層,是所有其它密鑰產(chǎn)生的基礎(chǔ),極其重要。
但在PSK模式里,由于沒有802.1X的參與,PMK則是象WEP的密鑰一樣預(yù)裝,但跟WEP不同的是,所有最終用于加密及其它一些功能的密鑰仍是動態(tài)產(chǎn)生的。而且,PSK模式也包含WPA和802.11i中除了802.1X以外的所有其它功能。所以PSK模式雖然沒有完整的WPA和802.11i/WPA2模式那么全面,仍是一個很強(qiáng)的安全方案。
Mesh路由器之間的安全
以上主要是介紹Wi-Fi中AP與客戶端之間的安全發(fā)展及現(xiàn)狀。在Mesh中,AP與客戶端之間的安全仍是安全的重要部分,但同時Mesh也引入了Mesh內(nèi)部路由器之間的安全問題。這里簡單介紹一下。
由于一個Mesh通常由一個供應(yīng)商提供設(shè)備,所以Mesh路由器之間的安全目前并沒有標(biāo)準(zhǔn)。802.11s是未來的Mesh標(biāo)準(zhǔn),但并沒有出臺。所以通常路由器之間的安全用的是各個供應(yīng)商之間的私有解決方案。
一個通常的做法是利用以上提到的傳統(tǒng)Wi-Fi安全方案,包括802.11i在內(nèi)。有的Mesh路由器之間會選用基于安全證書的認(rèn)證方式,具體實(shí)現(xiàn)既可能是通行的802.1X方式,或其它方式(包括私有方式)。Mesh供應(yīng)商還可能選擇其它的私有協(xié)議來實(shí)現(xiàn)Mesh路由器之間的安全。
在各種方式中,WPA和802.11i的PSK模式是一種很可行的方案。如以前提到,PSK本身是一個很強(qiáng)的安全方案的安全方案。同時因?yàn)椴灰笠粋€專門的認(rèn)證服務(wù)器,符合Mesh在室外布設(shè)和分布式的特點(diǎn)。對PSK密鑰管理上的缺點(diǎn),由于一個Mesh的各個節(jié)點(diǎn)相對固定,數(shù)量也相對較有限,所以也不是問題。
阿德利亞的Mesh安全
這里順帶介紹以下阿德利亞作為一家發(fā)起于美國硅谷的新興Mesh供應(yīng)商在安全方面的支持.
在客戶端接入方面,阿德利亞提供全套的安全支持。這包括WEP,WPA和802.11i/WPA2的支持。同時也支持PSK的模式,適合不同類型用戶的需求。阿德利亞的Mesh路由器提供有命令行,WEB界面,網(wǎng)絡(luò)管理軟件等多種功能強(qiáng)大的配設(shè)方式,配置起來很方便。
與此同時,阿德利亞還提供一些例如MAC地址過濾等輔助安全措施。
在Mesh路由器之間,阿德利亞不僅提供基于PSK的安全支持,同時通過私有協(xié)議進(jìn)一步確保只有用戶授權(quán)的阿德利亞路由器才能進(jìn)行組網(wǎng)。阿德利亞同時也在積極關(guān)注802.11s標(biāo)準(zhǔn)的最新進(jìn)展以提供相應(yīng)的支持。
評論