WLAN 無線網絡 11 - 無線網絡加密

網絡安全這一話題基本上是伴隨着網絡一起成長的,現在凡是涉及到網絡的,基本上都會涉及到網絡安全的問題。WLAN(無線局域網)也不例外的涉及到衆多形形色色的網絡安全的威脅。


無線網絡安全的發展:

無線網絡安全主要有三目的:私密性(防範數據不受未授權的第三方攔截);完整性(防範數據被篡改);認證(確定數據來源的合法性)

無線網絡安全主要涉及兩個方面,認證和加密。所謂認證就是在STA接入網絡時,能夠確保只有被允許接入的STA纔可以正常接入網絡;所謂加密就是STA接入網絡後,所有的數據通訊採用一定的加密技術確保數據的私密性和完整性。

WLAN認證方式的發展是由最初的Open System Authentication 到 Shared Key Authentication, 和到現在主流的WPA/WPA2-PSK , WPA/WPA2-Enteriprise。 當然還有其他一些802.1X相關的認證方式。

WLAN加密方式的發展是由最初的無加密,WEP/RC4,TKIP/RC4,到CCMP/AES。


這裏簡單介紹相關發展階段:

認證是WiFi設備連接某個BSS之前所需要進行的兩個步驟之一, 在STA與AP關聯之前進行。這步相當於將有線網絡網線插入網絡接口使得網絡物理層接通。其目的是驗證當前設備是一個合法的802.11無線網絡設備。

Open System Authentication

在這種認證模式下,由Client首先發出第一幀Auth包,然後AP回覆成功或失敗。與之配套的有WEP加密方式(可選),是在關聯成功後,加密3層以上的數據。

Shared Key Authentication

在最初大家認爲Open System Authentication不夠安全,開發出了Shared Key Authentication. 其基本過程如下:

<1> STA向AP發送Authentication Request

<2>AP向STA發送質詢文本(Challenge Text)

<3>STA將Challenge Text作爲Plaintext進行WEP加密,並將Ciphertext傳給AP

<4>AP進行WEP解密,並判斷ICV值,若成功匹配,返回Authentication Request(Success),否則返回Deauthentication.

wKioL1i3Ue-w4wj8AABLHmripNQ544.jpg


WPA

WEP Shared Key Authentication看起來似乎已經解決了認證問題,可是由於其使用WEP-RC4算法,造成其本身有一定的缺陷(24bit IV),使用一些認證破解工具很快就可以逆向推算出加密密碼,這樣網絡安全看似有保障實則基本上和Open System Authentication沒有太大的區別。 在IEEE發佈更新加密算法之前,Wi-Fi聯盟率先推出了WPA認證加密方法。WPA主要有兩種,WPA-PSK和WPA-Enterprise,也就是個人和企業級別。 

WPA使用於WEP相同的加密算法RC4,不同的是WPA使用更多位數的IV(48bit),這樣就大大減少了密碼被破解的可能性。 

wKioL1i3Xv_A8pD4AADxebeDKsU246.jpg

其通信過程如下:

1. WPA-PSK 初始化, 使用 SSID 和passphares使用以下算法產生PSK。

2. 第一次握手, 

        AP廣播SSID,AP_MAC(AA)→STATION

        STA端, 使用接受到的SSID,AP_MAC(AA)和passphares使用同樣算法產生PSK

3. 第二次握手,

        STA端, 發送一個隨機數SNonce,STATION_MAC(SA)→AP

        AP端, 接受到SNonce,STATION_MAC(SA)後產生一個隨機數ANonce; 然後用PMK,AP_MAC(AA),STATION_MAC(SA),SNonce,ANonce 用以下算法產生PTK. 提取這個PTK 前16 個字節組成一個MIC KEY

4. 第三次握手

        AP端, 發送上面產生的ANonce→STATION

        STA端, 用接收到ANonce 和以前產生PMK,SNonce,AP_MAC(AA),STATION_MAC(SA)用同樣的算法產生PTK。提取這個PTK 前16 個字節組成一個MICKEY使用以下算法產生MIC值用這個MIC KEY 和一個802.1x data 數據幀使用其算法得到MIC值。

5. 第四次握手

    STA 端, 用上面那個準備好的802.1x 數據幀在最後填充上MIC值和兩個字節的0(十六進制)讓後發送這個數據幀到AP。

    AP端, 收到這個數據幀後提取這個MIC。並把這個數據幀的MIC部分都填上0(十六進制)這時用這個802.1xdata 數據幀,和用上面AP產生的MIC KEY 使用同樣的算法得出MIC’。如果MIC’等於STATION發送過來的MIC。那麼第四次握手成功。若不等說明則AP 和STATION 的密鑰不相同,或STATION 發過來的數據幀受到過中間人***,原數據被篡改過。握手失敗了。


WPA2(802.11i)

上面說過,WPA只是Wi-Fi 聯盟用於暫時過渡,IEEE在2004年推出其安全標準,也就是後來的WPA2。相比WPA,WPA2同樣有WPA2-PSK和WPA2-Enterprise。不同於WPA,WPA2採用了CCMP/AES 動態密鑰。

wKiom1i3XyfAp9RJAADj7yKc-ys331.jpg


說完了加密,我們再來看一下,加密過後,數據幀都有哪些改變:

最顯而易見的是其負載因爲加密的緣故變大了,

WEP-多出8字節:

wKioL1i3X8jDij3lAADt-pCS7BI400.jpg

WPA-多出20字節:

wKiom1i3X-KChZe9AAEn6iF4kh4372.jpg

WPA2-多出16字節:

wKioL1i3YB3iJDnYAAEb5m_mxrQ034.jpg


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章