WEP四次握手(4-way-handshake)過程

來源:互聯網
上載者:User

 圖文講解WEP四次握手(4-way-handshake)過程

不管是用WEP加密,還是用WPA,一般如果我們要和AP建立一個串連,要經過兩個階段認證(Authentic)和關聯(Association)的過程,下面我只說說WEP加密的情況下,是如何和AP建立串連的(WPA的基本原理是差不多的,但密碼編譯演算法比WEP的複雜)。
如果採用WEP加密,我們會有兩種選擇(開放式和共用式),如果選擇開放式,那AP和用戶端的認證過程是在關聯過程之後的,也就是說,不需要正確的密碼,就能串連上AP,但你無法傳輸資料(會顯示串連受限,具體看我以前的文章),所以這個我們也不討論。
如果我們採用WEP加密,而且,又選擇了共用式,那要想和AP建立串連,就會有四次握手(4-way-handshake)的過程:
本帖隱藏的內容需要回複才可以瀏覽
第一次握手:用戶端發送認證請求給AP,如
 

我們圖中的內容,前面的內容是幀(frame)控制頭,裡面記錄了源地址,目的地址等資訊,IEEE 802.11 wireless LAN management frame說明這是802.11的管理幀,下面有6個位元組的參數,Authentication Algorithm是用來確定是開放式或者是共用式(1共用式,0開放式),我們這裡是共用式,Authentication SEQ說明四次握手的步驟,現在是第一次握手,說以是1,最後的status code是狀態代碼,現在是成功。

第二次握手:AP收到請求後,發送一個認證響應幀,裡麵包含一個128位元組的隨機數列,如

 

我們再看AP的請求響應幀,裡面的Authentication  SEQ已經變成2了,狀態也是成功,但幀的最後,我們發現了128位元組的隨機數列。
第三向交握:用戶端收到AP的響應幀後,用自己的密鑰加3個位元組的IV,用RC4演算法,產生加密流,用異或操作加密128位元組的隨機數列,然後發給AP,如
 

我們看到,這個幀比較特殊,我們看不到序號,而是多了一個Initialization Vector(初始向量)這個就是我們經常說的IV(注意是明文的,沒有加密),最後data中的內容就是加密後的隨機數列
第四次握手:AP用自己的密鑰加用戶端發過來的IV,用RC4演算法,產生加密流,用異或操作加密那段隨機數列(challenge text),如果用戶端的密鑰和AP的密鑰相同,那麼,兩端加密後的資料應該是相同的。如:
 

最後一次握手的序號是4,狀態是成功,到此,四次握手的過程就全部完成了。

看完上面的內容,我想大家發現了一個問題,在WEP加密方式下,AP和用戶端認證的過程中,challenge text和加密後的資料都是可以得到的,而且3個位元組的IV也是明文的,而WEP採用的,只是簡單的異或運算:明文(異或)加密流=密文,而異或運算是可逆的,也就是說,密文(異或)明文=加密流。

然後回到最初的問題,我們只要寫個抓包的程式(我以前的文章有發過原始碼),然後提取每個包中,challenge text等資訊,就可以了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.