802.11w協議介紹
文/黃智明
——網絡老爬蟲(無線新技術專題)
1 產生背景相對於有線網絡,WLAN存在著與生俱來的數據安全問題。在一個區域內的所有的WLAN設備共享傳輸媒介,任何一台設備可以接收到其它所有設備的數據,這個特性直接威脅到WLAN接入數據的安全。因此,WLAN協議中定義了安全性的標準802.11i,涉及用戶接入控製及身份驗證、用戶數據加密、密鑰管理等多個方麵。但是,上述的安全措施都沒有針對管理幀進行保護,管理幀仍然暴露在不安全的網絡環境中。因此,IEEE802.11工作組又基於現有的加密方式提出了針對管理幀的保護協議802.11w。
2 技術概述802.11w協議主要基於現有的對數據報文的加密形式,對管理幀進行類似的加密。802.11w需要加密的管理幀包括解關聯幀、去認證幀及強壯Action幀。強壯Action幀包括如下Action幀:
- Spectrum Management
- QoS
- DLS
- Block Ack
- Radio Measurement
- Fast BSS Transition
- SA Query
- Protected Dual of Public Action
- Vendor-specific Protected
對廣播管理報文不能采用簡單粗暴的加密,因為廣播報文是需要同時發送給不識別加密管理幀的客戶端的。802.11w協議中專門定義了針對廣播管理幀的特殊加密方式,稱為BIP(Broadcast Integrity Protocol,廣播完整性協議)。
另外,為防止客戶端仿冒攻擊,802.11w協議中定義了一種新的辨別機製,稱為SA Query(Security Association Query,安全關聯詢問)。該機製主要用於識別是否有攻擊者企圖仿冒正常客戶端發起下線請求等破壞網絡秩序或試圖破解網絡安全性的行為。
下麵對上述幾個功能進行逐一介紹。
2.1 單播管理幀加密管理幀加密功能為非必備功能,需要交互雙方協商。協商通過RSN能力集中的6、7兩位來辨別。其中第6bit為Management Frame Protection Required(MFPR),第7bit為Management Frame Protection Capable(MFPC)。MFPR代表是否需要強製支持管理幀加密,MFPC代表是否支持管理幀加密。協商時,如果一方要求強製支持802.11w(MFPR置1),而另一方不支持802.11w(MFPR置0),則無法協商成功;其他情況皆可。
如果協商成功,則雙方交互管理幀時,需要使用數據幀對應的密鑰加密管理幀(不維護額外的密鑰)。但目前802.11w僅支持CCMP加密套件,也就是說,對802.11w協議來說,CCMP+RSNA方式為必要條件。RSNA是Robust Security Network Association(健壯安全網絡連接),為802.11i協議規定的一種新的安全機製,而CCMP(Counter mode with CBC-MAC Protocol,[計數器模式]搭配[區塊密碼鎖鏈-信息真實性檢查碼]協議)為其中新增的一種加密強度目前最高的加密機製。
2.2 廣播管理幀加密廣播管理幀的處理與單播有所不同,它是在正常的廣播報文Payload之後增加一個Management MIC IE(MME)用於接收方判斷報文合法性。MME格式如圖1:

圖1 MME格式
其中:
Element ID表示該元素ID,Length表示長度,KeyID表示使用的密鑰編號,IPN是IGTK報文序號,用來做Replay Counter檢測,MIC是加密後的校驗碼,用來校驗報文合法性。
廣播管理幀的加密使用獨立的加密算法,因此需要協商加密套件和密鑰。
802.11w協議規定,在RSN IE中增加四個字節代表組播廣播加密,如圖2中最後一個字段Group Management Cipher Suite。H3C目前使用的值為00-0F-AC-06,代表BIP加密套件。

圖2 RSN IE中新增的字段Group Management Cipher Suite
廣播管理幀加密使用的密鑰叫做IGTK,與組播數據報文使用的加密密鑰GTK對應。密鑰協商時IGTK與GTK一起在第三個EAPOL-KEY報文中以加密方式攜帶。加密時,使用原始報文、IGTK及AES-128-CMAC算法計算之後得到MIC填充到MME中。
為防止重放攻擊,廣播管理幀中使用的IPN由協商時生成並在每次發送廣播管理幀時遞增。客戶端在協商時保存IPN的初值,如果收到的報文中的IPN小於當前值則丟棄。
2.3 SA Query機製為防止被仿冒關聯或者重關聯報文幹擾,導致AP對客戶端作出錯誤的響應,802.11w提出SA Query機製來保證無線用戶的在線連接安全。當AP處在安全的連接時,收到不加密的關聯或者重關聯請求時,AP會發送對應的響應報文,錯誤碼為30(Association request rejected temporarily; try again later),並附帶Time Out IE,其中注明了SA靜默時間。
SA靜默時間之內,AP不會再次響應任何關聯或者重關聯報文。客戶端應該在此時間內也保持靜默狀態,不發送關聯或者重關聯報文。
同時,AP啟動SA Query機製,向客戶端發送SA Query Request報文。如果能收到客戶端的SA Query Response或者任意經過保護的管理幀,則認為當前已有的連接是可靠的,忽略剛剛收到的關聯請求。如果沒有收到回應,AP每隔一段時間,會再發送一個SA Query Request,直到達到最大發送次數後如果還沒收到回應,AP刪除客戶端信息,Station需要重新上線。

圖4 真實STA的SA交互過程

圖5 仿冒STA的SA交互過程
SA Query Request和Response是Action類型報文,結構如圖3:

圖3 SA Query Request和Response報文結構
其中Category字段為8,表示該Action是SA Query報文。Action為0代表Request,為1代表Response。Transaction Identifier代表交互ID。
客戶端需要同樣的保護機製。對其來說,如果收到一個未保護的去關聯或者去認證報文,會發起與上述機製相同的SA Query校驗,由AP回複SA Query Response。
2.4 新的密鑰管理方式802.11w協議增強了加密的強度,基於已有的密鑰管理模式(PSK和802.1x)衍生出了兩種新的方式,將原先兩種模式下的Key-derivation(密鑰衍生算法)由HMAC-SHA1替換為更高強度的HMAC-SHA256。RSN IE中的密鑰管理模式新增兩個值:00-0F-AC-05(802.1x+SHA256)、00-0F-AC-06(PSK+SHA256)。如果MFPR位置1,則僅支持該兩種新模式。否則,默認支持所有模式。
3 結論802.11w協議完善了WLAN的安全機製,提高了802.11網絡的整體安全性,是推動WLAN飛速發展的一大利器。