發布日期:2022-07-14 點擊率:49
有線和無線網絡在安全性方面的考慮是很不一樣的。首先,在有線網絡中,用戶必須能夠訪問物理的線路或接線器。其次,網卡必須連接上網絡上。最后,還有用戶身份認證的問題。大多數網絡要求用戶使用密碼、信令或兩者結合進行身份認證。而在無線網絡中,這些問題一開始在第一個無線安全標準——有線等效保密(Wired Equivalent Privacy,WEP)中是被忽略的。
有線等效保密
WEP是被設計用來提供與用戶在有線網絡所使用的相同的保密機制。WEP基于RC4對稱加密標準,它使用64位或128位密鑰。而WEP的安全性問題恰恰就出現在這里,因為密鑰的64位或128位并不全被用于加密,它其中的24位實際上被用作初始化向量(IV)。IV的目的是用不同的密鑰給每個數據包進行加密。這是通過將IV添加到40位或104位的預共享密鑰(PSK)而實現的。結果就是IV+PSK。這減小了加密過程中的有效密鑰長度,因為現在密鑰的有效長度只有40位或104位了。
有兩種方法可以生成和使用PSK:
一是默認密鑰方法,它共享包含最多四個默認密鑰的密鑰集給所有WAP。
二是密鑰映射方法,它在每一個無線基站與其它單個基站之間建立密鑰映射關系。雖然這個方法比第一個方法更安全,但它帶來了額外開銷并降低一定的吞吐量。這個額外的開銷意味著許多選擇使用WEP的系統要在所有的基站使用一個共享密鑰。
為了更好地理解WEP過程,你需要理解布爾邏輯的基本原理。特別是你需要理解異或(Excusive OR, XOR)的用法。XOR只是一個簡單的2比特位之間的二進制比較,它的結果是另一個比特位。當比較2個比特位時,XOR檢查它們是否不同。如果不同,XOR的結果就是1。如果相同,結果就是0。表9-2說明了一個XOR運算的例子。
表:異或(XOR)運算
為了更好地理解XOR過程,并且理解WEP是如何工作的,下面讓我們看一下加密消息的七個步驟:
1.使用密鑰初始化傳輸和接收基站。這個密鑰必須使用一個跨波段機制來分發的,如電子郵件發送、提交到一個網站,或者寫在紙上發給你(像許多酒店的做法)。
2.傳輸基站產生一個種子,它是通過將40位密鑰附加到24位IV,然后輸入到偽隨機數生成器(PRNG)而得到的。
3.傳輸基站將種輸入到WEP PRNG中生成隨機類型的密鑰流。
4.密鑰流與明碼文本進行XOR后得到密文。
5.傳輸基站將密文附加到IV上,并設置一個比特位表示它是一個WEP加密的數據包。這就完成了WEP加密,其結果是傳輸的一個幀的數據。WEP加密的僅僅是數據。數據包頭和包尾是不加密發送的。
6.接收基站檢查所接收的幀的加密位是否被設置了。如果是,接收基站會從該幀中提取出IV,并將IV附加到密鑰中去。
7.接收者生成一個密鑰流,這個密鑰流必須是與傳輸基站的密鑰相匹配。這個密鑰流通過與密文XOR后獲得明文。
[DividePage:NextPage]
WEP最大的問題是IV不是專用的,是可以重用的。這樣的結果是大量的攻擊會重用IV來暴露PSK。為了更好地說明這個問題,我們可以考慮下面的例子。假設我們的PSK是8765309。這個值將會與“qrs”字符串一起構成密鑰“qrs8765309”。它將被用于加密數據包。下一個數據包將會要求一個新的IV。因此,雖然它仍使用相同的PSK 8765309,但這次它會與字符串“mno”一起構成新的密鑰“mno8765309”。這樣的過程會在每一個數據包數據加密時進行。我們可以看到變化的只是密鑰的IV部分,這就是WEP攻擊所感興趣的。一個忙碌的不停地發送流量的AP總會在5到6小時后用完所有可能的IV字符。一旦有人捕獲了足夠的數據包,那么他就有了可重用的密鑰,WEP就會被破解。一些工具,如WEP Crack和AirSnort就是專門用來做這件事的。
雖然無線設備供應商確實做了許多工作去消除這些IV弱點,但攻擊者仍在尋求其他破解加密標準的方法。在2004年8月,一個叫做KoreK的黑客發布了一套代碼,它可以將WEP密鑰恢復速度提升將近2個數量級。他不是使用通過收集百萬數據包來破解WEP密鑰的消極方法,他的做法是主動將數據注入到網絡中。這個方法可以合法地從WLAN設備上得到響應。即使黑客不能破譯這些數據包的加密方式,他也能猜出它們是什么,并更進一步使用它們激活更多的產品流量的響應。這使他能夠在10分鐘內破解許多無線網絡的WEP。在大家發現這個問題后,IEEE意識到需要一個新的加密標準來解決這個問題了。畢竟,WEP甚至都不能夠保證數據包的認證性了。
用來解決無線用戶的不斷增長安全性要求的專門方法是。它們的挑戰的不僅僅是開發一個長期的標準,也包括開發能夠馬上保證無線系統安全的方法。為了滿足這兩個要求,IEEE開發了短期解決方案Wi-Fi受保護訪問(WPA)。
WPA提出了比WEP高一級別的安全性方法。WPA使用了臨時密鑰完整性協議(Temporal Key Integrity Protocol,TKIP)。TKIP使用一個哈希算法打亂密鑰,并添加了一個完整性檢查特性,它可以驗證密鑰沒有被篡改過。WPA改進了WEP,它將IV從24位增加到48位。同時回滾也被去除,這意味著密鑰的重用就不太可能發生了。WPA也避免了另一個WEP的弱點,它為每一個數據包使用不同的密鑰。WPA的另一個改進是消息完整性。WPA提出了一個消息完整性校驗(MIC),它被稱為Michael。Michael是設計來發現無效數據包,甚至能采取方法阻止攻擊。更妙的是,WPA是向下兼容的,它是支持RC4算法的。這使得用戶可以升級已有的特定硬件,這些硬件可能本來是不支持更復雜的加密算法的。
早在2004年,無線安全性的長期解決方案在WPA2發布后被認證通過。這就是組曾經致力于開發的標準。它設計上使用了高級加密標準(Advanced Encryption Standard,AES)。AES要求比RC4更多的處理能力,它是包含在原來的設計中的?,F在有最多256位的密鑰長度,這是大大改進了原來WEP使用的40位加密方式。表9-3說明了通用的模式以及WPA和WPA2的種類。
WPA和WPA2可以使用多種安全性協議,如Counter Mode with Cipher Block Chaining Message Authentication Code Protocol(CCMP)。CCMP是基于AES加密算法的。它將IV擴大到48位以防止回滾并發現延遲流量。另外一個WPA認證的協議是Extensible Authentication Protocol(EAP),它是定義在RFC 3758中的。EAP是一個認證框架,但不是一個認證機制。EAP是在以太網協議之上改善認證的,包括需要認證的客戶請求和服務器對認證的處理。同時也有LAN的EAP(EAPOL),它是IEEE認可的作為將數據包從客戶傳到認證服務器的傳輸方法。其中有四種基本類型的EAPOL數據包:
EAPOL報文——這種消息只是簡單的用穿越LAN傳送EAP報文的容器。
EAPOL開始——這種消息是被客戶端用以通知網絡的認證者。
EAPOL注銷——這種消息通知認證者客戶端正在離開網絡。
EAPOL密鑰——這種消息是中用于密鑰分發的。
表:WPA和WPA2的區別
最后是臨時密鑰完整性協議(Temporal Key Integrity Protocol,TKIP)。TKIP是用于解決已知的針對WEP弱點的密碼攻擊。TKIP的作用是保證每一個數據包都與它自己唯一加密密鑰一起發送。TKIP使用RC4算法。
認證
提供了基于端口的訪問控制機制。當用在EAP的結合部位時,它可以作為一個認證試圖連接到特定LAN端口的設備的手段。雖然EAP是針對有線環境設計的,但它正與WAP綁定以作為一種傳輸手段,它負責傳輸認證信息,以及客戶端或請求者與訪問控制服務器之間的加密密鑰,如RADIUS服務器。在無線網絡中,EAP是這樣工作的:
從客戶端請求認證信息。
2.用戶輸入要求的認證信息。
轉發客戶端提供的認證信息到標準的RADIUS服務器以獲得認證和授權。
4.客戶端根據RADIUS的授權進行連接和傳輸數據。
此外,還有其它方法使用EAP,這是由它的實現方式決定的:密碼、數字認證和信令卡是最常用的幾種認證方式。EAP可以作為EAP-MD5、Cisco Lightweight EAP (LEAP)、EAP with Transport Layer Security (EAP-TLS)或者EAP with Tunneled TLS (EAP-TTLS)等形式部署。
下一篇: PLC、DCS、FCS三大控
上一篇: 技術白皮書:無線HART