張 磊, 王 輝
隨著信息技術的發(fā)展,人們對網絡的使用便利性的要求越來越高。無線網絡的出現(xiàn)試圖讓人們能夠在任何時間、任何地點,通過任何設備都能聯(lián)入網絡。無線網絡技術正逐漸發(fā)展成熟,對應無線路由器等無線網絡設備的價格已經非常親民,并開始大量普及使用。然而,當網線被無形的無線信號取代后,雖然大大提高網絡使用的便利性,但同時因為物理傳輸發(fā)生了變化等原因,也增加了網絡數據傳輸的不安全性。WEP和WPA作為主要的兩大加密協(xié)議,用以對無線網絡數據傳輸和用戶驗證等進行加密以提高無線網絡的安全性[1]。
無線局域網(WLAN,Wireless Local Area Networks)的傳輸原理和普通有線網絡一樣采用ISO/RM七層網絡模型,但在模型的物理層和數據鏈路層中,WLAN采用射頻(RF,Radio Frequency)技術來取代有線雙絞銅線所構成的局域網絡,進行無線傳輸。
從傳輸方式可將WLAN傳輸分為:無線電波方式和紅外線方式。紅外線傳輸方式應用最為廣泛,其傳輸的最大優(yōu)點是不受無線電波的干擾,但因為穿透性差功率低等原因導致傳輸距離極短。無線電波傳輸采用無線電波進行傳輸,覆蓋范圍遠大于紅外傳輸,還具有隱蔽和保密等特點,具有很高的可用性。因此,無線局域網一般采用無線電波方式進行數據傳輸。
WLAN加密方式為:WEP加密、WPA加密、802.11i和 WAPI加密,但 802.11i技術尚不成熟,中國自主研制的 WAPI處于起步狀態(tài),設備對 802.11i和 WAPI支持程度也較低,現(xiàn)主要采用WEP和WPA的加密方式[2]。
有線對等保密算法(WEP,Wired Equivalent Privacy),是一種數據加密算法。在 WEP加密的無線局域網中,所有客戶端與無線接入點的數據都會以一個共享密鑰(shared key)進行加密。WEP使用CRC-32來驗證正確性,用 RC4串流加密技術達到機密性。
WEP加密方式如圖1所示。
圖1 WEP加密流程
具體流程為:①發(fā)送端通過計算原始數據包明文的32位 CRC循環(huán)冗余校驗碼來進行完整性校驗值ICV(Integrity Check Value)的校驗;②將校驗碼和明文構成傳輸載荷,在發(fā)送端和無線AP間共享一個長度為40 bit或104 bit的密鑰,在發(fā)送端為每個數據包選定一個長度為 24 bit的數作為初始向量 IV(Initialized Vector),將 IV與密鑰連接起來,構成一個長度 64 bit或128 bit的種子密匙;③將密匙送入RC4偽隨機數生成器PRNG (Pseu-do-random Number Generator)中,生成加密密鑰流;④將加密密鑰流與傳輸載荷按位進行異或操作,獲得密文[3]。
從上述加密流程可以看出,WEP的加密體制存在缺陷:發(fā)送端將 IV以明文形式和密文一起發(fā)送,當密文傳送到AP后,AP從數據包中提取出IV和密文,將IV和所持有共享密鑰送入偽隨機數發(fā)生器得到的解密密鑰流和加密密鑰流相同。在接收端再將解密密鑰流和密文進行異或運算,就得到了明文,將明文進行 CRC計算后就可以得到校驗碼ICV還原出密碼。其解密流程如圖2所示。
圖2 WEP解密流程
因此,密匙的長度并不是 WEP 安全性的主要因素,靜態(tài)的KEY是導致WEP不安全的主要原因。
Wi-Fi網絡安全存取其認證分為 2種:①802.1x+EAP的方式,用戶提供認證所需憑證,并通過特定認證服務器(一般是RADIUS服務器)來實現(xiàn)認證,該種加密方式多用于在大型企業(yè)無線網絡;②WPA預共享密鑰(WPA-PSK),該認證是第一種認證方式的簡化模式,省去了專門認證服務器,僅要求在每個WLAN 節(jié)點預先輸入一個密鑰即可實現(xiàn)認證并獲得訪問權。這里的密鑰僅僅用于認證,而不用于加密過程。
WEP使用一個靜態(tài)的密鑰來加密,WPA不斷的轉換密鑰,使用動態(tài)密匙。其安全性要明顯高于WEP加密。
WPA采用暫時密鑰集成協(xié)議(TKIP,Temporal Key Integrity Protocol)加密, TKIP在WEP密碼認證中添加了信息檢測(MIC)、信息包單加密功能、具有序列功能的初始向量和密鑰生成功能 4種算法來提高安全強度, TKIP使用的密鑰與WLAN中每臺設備的MAC 地址及更大的初始化向量合并,來確信每個站點均使用不同的密鑰流進行加密,最后使用RC4加密算法對數據進行加密[4]。
由于TKIP對WEP加密的改進,WPA-PSK無法通過獲取大量數據包來破解還原KEY。但仍可以通過截取其四次握手包來破解還原KEY。其破解流程如圖3所示。
圖3 WPA四次握手流程
4次握手流程為:①WPA-PSK初始化,AP廣播SSID;②第1次握手,STATION發(fā)送一個隨機數SNonce,AP端接收到SNonce后產生一個隨機數ANonce,ANonce 用算法產生PTK,提取這個PTK 前16個字節(jié)組成一個MIC KEY;③第3次握手,AP發(fā)送上面產生的ANonce到STATION,STATION端用接收到ANonce,使用算法產生MIC值后產生PTK,提取這個PTK前16個字節(jié)組成一個MIC KEY,用這個MIC KEY和802.1x data數據幀得到MIC值;④第4次握手,STATION端用數據幀在最后填充上MIC值和兩個字節(jié)的0后發(fā)送這個數據幀到AP,AP端收到數據幀后提取MIC,并把這個數據幀的MIC部分都填上0,這時用這個新數據幀,和用上面AP產生的MIC KEY 使用同樣的算法得出MIC對比,若MIC等于STATION發(fā)送過來的MIC,則第四次握手成功。
這里的仿真平臺為VMWARE7虛擬機下的 Ubuntu 9.1系統(tǒng)。WEP和WPA的KEY用算號器隨機預生成,針對WEP和WPA分別使用SPOONWEP和SPOONWPA套件進行破解。測試設備為:①使用Netgear GR614 V9路由作為測試AP;②Intel 4965無線網卡和ZYDAS USB網卡作為測試網卡。
對 WEP進行交互注入,信道為 6,傳輸速度為802.11g,信號強度 96%,結果:其運行狀態(tài)和結果如圖4,55秒破解獲得KEY。
圖4 WEP注入式破解狀態(tài)
對WPA進行字典破解[5],信道為6,傳輸速度為802.11g,信號強度96%,KEY隨機生成。其運行狀態(tài)如圖5示。
圖5 WPA字典算號破解狀態(tài)
成功獲取握手包,但由于隨機產生的KEY不在字典庫中,無法得到結果。更換字典庫使預先生成 KEY包含在字典中,成功獲得KEY,破解成功。
經過仿真可以發(fā)現(xiàn),WEP加密破解安全系數較低;雖然WPA是WEP的增強,但還是通過握手包被截取后通過字典窮舉算號的方法破解。因此,目前 WLAN的安全協(xié)議還有待提高,尤其是 WEP加密非常脆弱,已經不能作為合格的WALN加密協(xié)議使用,可以使用改進的WPA和WPA2加密或是WAPI加密來提高無線局域網的安全性。
[1]袁愛杰,胡中棟,萬梅芬.基于無線網絡安全WEP協(xié)議的探究[J]. 計算機時代,2009(09):14-15.
[2]郭鳳宇,劉振兵,申海平.無線網絡中加密體制及算法研究[J].網絡安全技術與應用,2006(09):86-88.
[3]沈基明,曹秀英. 802.11WLAN安全漏洞分析和改進方案[J].通信技術,2002(07):67-69.
[4]王春曉,張鵬.關于無線局域網的安全規(guī)范 WPA的研究[J].通信技術,2010,43(09):145-146.
[5]李國朋,潘進,李波.基于WPA 的安全機制缺陷的攻擊實現(xiàn)[J]. 電腦知識與技術,2008(06):1351-1352.