1. 無線安全概述
無線安全是WLAN系統的一個重要組成部分。由于無線網絡使用的是開放性媒介采用公共電磁波作為載體來傳輸資料信号,通信雙方沒有線纜連接配接。如果傳輸鍊路未采取适當的加密保護,資料傳輸的風險就會大大增加。是以在WLAN中無線安全顯得尤為重要。
為了增強無線網絡安全性,至少需要提供認證和加密兩個安全機制:
- 認證機制:認證機制用來對使用者的身份進行驗證,以限定特定的使用者(授權的使用者)可以使用網絡資源。
- 加密機制:加密機制用來對無線鍊路的資料進行加密,以保證無線網絡資料隻被所期望的使用者接收和了解。
2. 基本概念
- 802.11i:新一代WLAN安全标準。IEEE 為彌補802.11脆弱的安全加密功能而制定的修正案,802.11i提出了RSN(強健安全網絡)的概念,增強了WLAN中的資料加密和認證性能,并且針對WEP加密機制的各種缺陷做了多方面的改進。802.11i标準中所建議的身份驗證方案是以802.1X架構和可擴充身份驗證協定(EAP)為依據的。加密運算法則使用的是AES加密算法。
- RC4:在密碼學領域,RC4是應用最廣泛的流加密算法,屬于對稱算法的一種。
- IV:初始化向量(Initialization Vector),加密标頭中公開的密鑰材料。
- EAPOL-KEY包(EAP over LAN key):AP同STA之間通過EAPoL-key 封包進行密鑰協商。
- PMK(Pairwise Master Key,成對主密鑰):申請者(Supplicant)與認證者(Authenticator)之間所有密鑰資料的最終來源。它可以由申請者和認證伺服器動态協商而成,或由預共享密鑰(PSK)直接提供。
- PTK(Pairwise Transient Key,成對臨時密鑰):PTK是從成對主密鑰(PMK)中生成的密鑰,用于加密和完整性驗證。
- GMK(Group Master Key,組主密鑰):認證者用來生成組臨時密鑰(GTK)的密鑰,通常是認證者生成的一組随機數。
- GTK(Group Transient Key,組臨時密鑰):由組主密鑰(GMK)通過哈希運算生成,是用來保護廣播群組播資料的密鑰。
- MIC(message integrity code,消息完整性校驗碼)。針對一組需要保護的資料計算出的散列值,用來防止資料遭篡改。
3.鍊路認證方式
鍊路認證即802.11身份驗證,是一種低級的身份驗證機制。在STA同AP進行802.11關聯時發生,該行為早于接入認證。任何一個STA試圖連接配接網絡之前,都必須進行802.11的身份驗證進行身份确認。可以把802.11身份驗證看作是STA連接配接到網絡時的握手過程的起點,是網絡連接配接過程中的第一步。
IEEE 802.11 标準定義了兩種鍊路層的認證:
- 開放系統身份認證
- 共享密鑰身份認證
3.1 (open)開放系統身份認證
開放系統身份認證允許任何使用者接入到無線網絡中來。從這個意義上來說,實際上并沒有提供對資料的保護,即不認證。也就是說,如果認證類型設定為開放系統認證,則所有請求認證的STA都會通過認證。
開放系統認證包括兩個步驟:
第一步,STA請求認證。STA發出認證請求,請求中包含STA的ID(通常為 MAC 位址)。
第二步,AP傳回認證結果。AP發出認證響應,響應封包中包含表明認證是成功還是失敗的消息。如果認證結果為“成功”,那麼STA和AP 就通過雙向認證。
3.2 (shared)共享密鑰身份認證
共享密鑰認證是除開放系統認證以外的另外一種認證機制。共享密鑰認證需要STA和AP配置相同的共享密鑰。共享密鑰認證的過程如下:
第一步,STA先向AP發送認證請求;
第二步,AP會随機産生一個Challenge包(即一個字元串)發送給STA;
第三步,STA會将接收到字元串拷貝到新的消息中,用密鑰加密後再發送給AP;
第四步,AP接收到該消息後,用密鑰将該消息解密,然後對解密後的字元串和最初給STA的字元串進行比較。如果相同,則說明STA擁有無線裝置端相同的共享密鑰,即通過了共享密鑰認證;否則共享密鑰認證失敗。
4. 接入認證方式
接入認證是一種增強WLAN網絡安全性的解決方案。當STA同AP關聯後,是否可以使用無線接入點的服務要取決于接入認證的結果。如果認證通過,則無線接入點為STA打開這個邏輯端口,否則不允許使用者連接配接網絡。
本節介紹以下兩種接入認證方式:
- PSK接入認證
- 802.1X接入認證
4.1 PSK接入認證
PSK (Pre-shared key,預共享密鑰)是一種802.11i身份驗證方式,以預先設定好的靜态密鑰進行身份驗證。該認證方式需要在無線使用者端和無線接入裝置端配置相同的預共享密鑰。如果密鑰相同, PSK 接入認證成功;如果密鑰不同,PSK 接入認證失敗。
4.2 802.1X接入認證
IEEE 802.1X 協定是一種基于端口的網絡接入控制協定。這種認證方式在WLAN 接入裝置的端口這一級對所接入的使用者裝置進行認證和控制。連接配接在接口上的使用者裝置如果能通過認證,就可以通路WLAN 中的資源;如果不能通過認證,則無法通路WLAN 中的資源。
一個具有802.1x認證功能的無線網絡系統必須具備以下三個要素才能夠完成基于端口的通路控制的使用者認證和授權:
- 認證用戶端
一般安裝在使用者的工作站上,當使用者有上網需求時,激活用戶端程式,輸入必要的使用者名和密碼,用戶端程式将會送出連接配接請求。
- 認證者
在無線網絡中就是無線接入點AP或者具有無線接入點AP功能的通信裝置。其主要作用是完成使用者認證資訊的上傳、下達工作,并根據認證的結果打開或關閉端口。
- 認證伺服器
通過檢驗用戶端發送來的身份辨別(使用者名和密碼)來判别使用者是否有權使用網絡系統提供的服務,并根據認證結果向認證系統發出打開或保持端口關閉的狀态。
5.無線加密方式
相對于有線網絡,無線網絡存在着更大的資料安全隐患。在一個區域内的所有的WLAN 裝置共享一個傳輸媒介,任何一個裝置可以接收到其他所有裝置的資料,這個特性直接威脅到WLAN 接入資料的安全。IEEE 802.11 提供三種加密算法:有線等效加密(WEP)、暫時密鑰內建協定(TKIP)和進階加密标準 AES-CCMP。
- WEP加密
- TKIP加密
- AES-CCMP加密
5.1 WEP加密
WEP (Wired Equivalent Privacy,有線等效加密)是原始 IEEE 802.11 标準中指定的資料加密方法,是WLAN安全認證和加密的基礎,用來保護無線區域網路中授權使用者所交換的資料的私密性,防止這些資料被竊取。
WEP使用RC4算法來保證資料的保密性,通過共享密鑰來實作認證。WEP沒有規定密鑰的管理方案,一般手動進行密鑰的配置與維護。通常把這種不具密鑰配置設定機制的WEP稱為手動WEP或者靜态WEP。
WEP加密密鑰的長度一般有64位和128位兩種。其中有24Bit的IV(Initialization Vector,初始化向量)是由系統産生的,是以需要在AP和STA上配置的共享密鑰就隻有40位或104位。在實際中,已經廣泛使用104位密鑰的WEP來代替40位密鑰的WEP,104位密鑰的WEP稱為WEP-104。雖然WEP104在一定程度上提高了WEP加密的安全性,但是受到RC4加密算法以及靜态配置密鑰的限制,WEP加密還是存在比較大的安全隐患,無法保證資料的機密性、完整性和對接入使用者實作身份認證。
5.2 TKIP加密
TKIP(Temporal Key Integrity Protocol,暫時密鑰內建協定)是IEEE 802.11組織為修補WEP加密機制而建立的一種臨時的過渡方案。它也和WEP加密機制一樣使用的是RC4算法,但是相比WEP加密機制,TKIP加密機制可以為WLAN服務提供更加安全的保護。主要展現在以下幾點:
- 靜态WEP的密鑰為手工配置,且一個服務區内的所有使用者都共享同一把密鑰。而TKIP的密鑰為動态協商生成,每個傳輸的資料包都有一個與衆不同的密鑰。
- TKIP将密鑰的長度由WEP的40位加長到128位,初始化向量IV的長度由24位加長到48位,提高了WEP加密的安全性。
- TKIP支援MIC認證(Message Integrity Check,資訊完整性校驗)和防止重播攻擊功能。
5.3 AES-CCMP加密
AES-CCMP(Counter mode with CBC-MAC Protocol,計數器模式搭配CBC-MAC協定)是目前為止面向大衆的最進階無線安全協定。
IEEE 802.11i 要求使用 CCMP 來提供全部四種安全服務:認證、機密性、完整性和重發保護。 CCMP 使用 128 位 AES (Advanced Encryption Standard,進階加密标準)加密算法實作機密性,使用CBC-MAC(區塊密碼鎖鍊-資訊真實性檢查碼協定)來保證資料的完整性和認證。
作為一種全新的進階加密标準,AES加密算法采用對稱的塊加密技術,提供比WEP/TKIP中RC4算法更高的加密性能,它将在IEEE 802.11i最終确認後,成為取代WEP的新一代的加密技術,為無線網絡帶來更強大的安全防護。
6. WPA安全技術
WPA(Wi-Fi Protected Access),是一種保護無線電腦網絡(Wi-Fi)安全的系統,它是應研究者在前一代的系統有線等效加密(WEP)中找到的幾個嚴重的弱點而産生的。
WPA安全技術允許采用更多樣的認證和加密方法來實作WLAN的通路控制、密鑰管理與資料加密。例如,接入認證方式可采用預共享密鑰(PSK認證)或802.1X認證,加密方法可采用TKIP或AES。WPA同這些加密、認證方法一起保證了資料鍊路層的安全,同時保證了隻有授權使用者才可以通路無線網絡WLAN。
6.1 WPA
Wi-Fi聯盟在标準推出之前,在802.11i草案的基礎上,制定了一種稱為WPA(Wi-Fi Protected Access)的安全機制,它使用TKIP(臨時密鑰完整性協定),它使用的加密算法還是WEP中使用的加密算法RC4,是以不需要修改原來無線裝置的硬體。
其目的在于代替傳統的WEP安全技術,為無線區域網路硬體産品提供一個過渡性的高安全解決方案,同時保持與未來安全協定的向前相容。可以把WPA看作是IEEE802.11i的一個子集,其核心是IEEE 802.1X和TKIP。
6.2 WPA2
WPA2 是經由 Wi-Fi 聯盟驗證過的 IEEE 802.11i 标準的認證形式。它使用CCM(Counter-Mode/CBC-MAC)認證方式和AES(Advanced Encryption Standard)加密算法,更進一步加強了無線區域網路的安全和對使用者資訊的保護。