WIFI破解原理(WEP)
一、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協議的在資料傳輸時,用於生成金鑰流的初始向量
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進行無線加密,趕緊換了吧!