摘要:本文主要對Wi-Fi及Mesh的安全方面的歷史與現狀進行一些簡單介紹。 標簽:
WEPWPA802.11i/WPA2Mesh路由器Wi-Fi
Wi-Fi是基于IEEE802.11標準的無線網絡技術.無線網狀網(Mesh)則是Wi-Fi技術的進一步延伸.它通過將無線路由器或交換機之間組網,從而進一步減少布線和提供更大范圍的無線上網服務。本文旨在對Wi-Fi及Mesh的安全方面的歷史與現狀進行一些簡單介紹。
為方便起見,文中將用AP表示無線接入點(AccessPoint)。用Mesh表示無線網狀網。
Wi-Fi安全的歷史與演化
WEP及其漏洞
在1999年通過的802.11標準中,關于安全的部分叫WEP,是英文中WiredEquivalentPrivacy的縮寫,本意是實現一種與有線等價的安全程度。
WEP的設計相對簡單,它包括一個簡單的基于挑戰(zhàn)與應答的認證協議和一個加密協議。這兩者都是使用RC4的加密算法,密鑰的長度是40位(由于密鑰會與一個24位的初始向量(IV)連接在一起使用,所以也被稱為64位的WEP)。WEP還包括一個使用32位CRC的校驗機制叫ICV(IntegrityCheckValue),其目的是用來保護信息不在傳輸過程中被修改。
WEP在推出以后,很快被發(fā)現有很多漏洞,主要有以下幾點:
認證機制過于簡單,很容易通過異或的方式破解,而且一旦破解,由于使用的是與加密用的同一個密鑰,所以還會危及以后的加密部分。
認證是單向的,AP能認證客戶端,但客戶端沒法認證AP。
初始向量(IV)太短,重用很快,為攻擊者提供很大的方便。
RC4算法被發(fā)現有”弱密鑰”(WeakKey)的問題,WEP在使用RC4的時候沒有采用避免措施。
WEP沒有辦法應付所謂“重傳攻擊”(ReplayAttack)。
ICV被發(fā)現有弱點,有可能傳輸數據被修改而不被檢測到。
沒有密鑰管理,更新,分發(fā)的機制,完全要手工配置,因為不方便,用戶往往常年不會去更換。
由于有上面列出的眾多缺點,人們可能會覺得WEP一無是處。其實倒不然。WEP從被宣稱破解到今天,仍被人們廣泛使用,絕非偶然.其原因除了它簡單易行,速度較快,對硬件要求低的特點以外,WEP的確也能滿足在安全要求不太高的情況下的需求。比如在家庭,旅館等地,WEP提供的保護往往已足夠。所以對WEP的應用也應視需求而定,沒必要先入為主.
不過有一點需要提及,就是人們已不大再使用WEP提供的認證,而只用WEP提供的加密。原因已經提到過,WEP的認證不僅較弱,而且可能危及到加密本身。
WEP的改進
-128位WEP
大部分供應商現在都提供一種用104位密鑰的WEP(加上24位IV一共128位),這對WEP的安全性有改進,但上面提到的問題仍然存在。
-動態(tài)的WEP
為了加強WEP的安全性,一些供應商提出了一些動態(tài)密鑰的WEP方案。在這樣的方案中,WEP的密鑰不再是靜態(tài)不變的,而是能定期動態(tài)更新。比如思科(Cisco)提供的LEAP(LightweightExtensibleAuthentication Protocol)就是這樣一種方案。LEAP同時還提供雙向的基于802.1X的認證。這些方案在一定程度上緩解了WEP的危機,但它們是某個供應商的私有方案而非標準,而且它們離完全解決WEP的所有問題還有差距。
WPA的出現
為了解決WEP的危機,IEEE展開了新的802.11安全標準的制訂,但由于一個IEEE標準的制訂需要的時間較長,工業(yè)界為了填補IEEE標準出臺之前的真空,迅速采取了行動。WPA就是Wi-Fi聯盟于2002年左右推出的一套自己的標準。
WPA雖然不是IEEE的標準,但也并非空穴來風。它的制訂是基于802.11i協議的一個初稿(Draft)。所以它與后來的802.11i終稿在結構以及其它一些方面很相似。其中之一是使用基于802.1X的認證機制。WPA還采用了一套叫TKIP(TemporalKeyIntegrityProtocol)的加密協議。TKIP仍然使用RC4算法,所以當時的已有硬件平臺可以在只做軟件升級的情況下就支持它。但同時設計者又考慮了WEP的教訓,使用了較長的IV,密鑰,和動態(tài)變化的密鑰機制,所以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一樣提供很全面甚至更強的支持。在認證發(fā)面,802.1X的體系結構被采用。在密鑰使用上,802.11i有一整套密鑰等級劃分和密鑰動態(tài)產生及更新機制。802.11i對重傳攻擊的防范,信息校驗等自然也都考慮的非常全面。總而言之,802.11i是一整套非常全面,同時也非常復雜的安全協議系統,代表了當前Wi-Fi安全的最高級支持。由于其復雜性,細節(jié)不可能在本文中一一介紹。下面只就其中
采用的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發(fā)一個EAPOL-Start的包提出認證請求,AP收到后會向無線客戶端作出回應(EAPRequest/Identity包),之后兩者之間就會開始更多的EAP交互。但在這個過程中AP基本上是一個透明的轉發(fā)者。它把從
無線客戶端收到的EAP包,翻譯并封裝成RADIUS包轉發(fā)給RADIUS服務器。RADIUS服務器回的包同樣也會被翻譯回EAP的包送給客戶端。整個交互完成后,AP會最終從RADIUS學到認證是否成功,從而決定是否給予無線客戶端以訪問權限。
關于802.1X的模式,可以用下圖說明:
|
[tr][/tr]
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不同的是,所有最終用于加密及其它一些功能的密鑰仍是動態(tài)產生的。而且,PSK模式也包含WPA和802.11i中除了802.1X以外的所有其它功能。所以PSK模式雖然沒有完整的WPA和802.11i/WPA2模式那么全面,仍是一個很強的安全方案。
Mesh路由器之間的安全
以上主要是介紹Wi-Fi中AP與客戶端之間的安全發(fā)展及現狀。在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的各個節(jié)點相對固定,數量也相對較有限,所以也不是問題。
阿德利亞的Mesh安全
這里順帶介紹以下阿德利亞作為一家發(fā)起于美國硅谷的新興Mesh供應商在安全方面的支持.
在客戶端接入方面,阿德利亞提供全套的安全支持。這包括WEP,WPA和802.11i/WPA2的支持。同時也支持PSK的模式,適合不同類型用戶的需求。阿德利亞的Mesh路由器提供有命令行,WEB界面,網絡管理軟件等多種功能強大的配設方式,配置起來很方便。
與此同時,阿德利亞還提供一些例如MAC地址過濾等輔助安全措施。
在Mesh路由器之間,阿德利亞不僅提供基于PSK的安全支持,同時通過私有協議進一步確保只有用戶授權的阿德利亞路由器才能進行組網。阿德利亞同時也在積極關注802.11s標準的最新進展以提供相應的支持。