目的
1.數(shù)據(jù)的完整性(Integrity):用于檢查數(shù)據(jù)在傳輸過程中是否被修改。
2.數(shù)據(jù)的機密性(Confidentiality):用于確保數(shù)據(jù)不會被泄露。
3.身份驗證和訪問控制(Authentication and Access Control):用于檢查受訪者的身份
數(shù)據(jù)加密
數(shù)據(jù)加解密由硬件完成
WEP
數(shù)據(jù)加密:使用流密碼對數(shù)據(jù)加密,所有數(shù)據(jù)使用同一個wep key加密,采用CRC完整性校驗。
身份認證:支持open和share key兩種。
open可以在后續(xù)使用安全性更高的RSNA
share key即AP發(fā)送challenge text,但不能在后續(xù)使用安全性更高的RSNA
RSN
支持兩種TKIP和CCMP數(shù)據(jù)加密及完整性校驗算法
TKIP加密:每一幀使用不同key(流密碼),采用MIC完整性校驗。使用MAC地址等的信息進行加密,更加安全
CCMP加密:采用AES安全塊協(xié)議,使用PN和keyid的CCMP頭信息加密,更加安全。
身份認證
EAP
定義在協(xié)議RFC3748
組件:
- Authenticator(驗證者):簡單點說,Authenticator就是響應認證請求的實體(Entity)。對無線網(wǎng)絡來說,Authenticator往往是AP。
- Supplicant(驗證申請者)發(fā)起驗證請求的實體。對于無線網(wǎng)絡來說,Supplicant就是智能手機。
- BAS(Backend Authentication Server,后端認證服務器):某些情況下(例如企業(yè)級應用)Authenticator并不真正處理身份驗證,它僅僅將驗證請求發(fā)給后臺認證服務器去處理。正是這種架構(gòu)設計拓展了EAP的適用范圍。
- AAA(Authentication、Authorization and Accounting,認證、授權(quán)和計費):另外一種基于EAP的協(xié)議。實現(xiàn)它的實體屬于BAS的一種具體形式,AAA包括常用的RADIUS服務器等。在RFC3748中,AAA和BAS的概念可互相替代。
- EAP Server:表示真正處理身份驗證的實體。如果沒有BAS,則EAP Server功能就在Authenticator中,否則該功能由BAS實現(xiàn)
架構(gòu)
- EAP Method:(算法)屬于具體的身份驗證算法層。不同的身份驗證方法有不同的Method Type。
- EAP Supplicant/Authenticator Layer:(分發(fā))根據(jù)收到EAP數(shù)據(jù)包中Type字段(見下文介紹)的不同,將其轉(zhuǎn)給不同的EAP Method處理
- EAP Layer:(收發(fā))用于收發(fā)數(shù)據(jù),同時處理數(shù)據(jù)重傳及重復(Duplicate)包
- Lower Layer(LL):傳輸層
802.1X(EAPOL)
802.1X討論了EAP在Wired LAN上的實現(xiàn)
定義了受控端口和非受控端口。非受控端口只允許少量類型的數(shù)據(jù)流通,如EAPOL認證幀;受控端口認證通過前不允許傳輸任何數(shù)據(jù)。
EAPOL數(shù)據(jù)格式:
0x888e代表EAPOL在802.11幀中的類型。
Key Descriptor Type值為2,表示EAPOL RSN Key。
Descriptor Body的內(nèi)容就是大括號中所包含的信息。
RSNA
流程
- 發(fā)現(xiàn)階段:選擇AP。掃面過程中檢查接收的beacon和probe是否包含RSNE信息元素,選擇合適AP進行802.11Authentication和Association。
- 802.1X認證階段:身份認證。分配該次會話所需要的一系列密鑰(PMK)用于后續(xù)通信的保護。
- 密鑰管理:生成單播,組播密鑰。通過4-Way Handshake和Group Key Handshake協(xié)議。確認上一階段分配的密鑰是否存在,以及確認所選用的加密套件,并生成單播數(shù)據(jù)密鑰和組播密鑰用于保護數(shù)據(jù)傳輸。
數(shù)據(jù)加密和完整形校驗:采用TKIP和CCMP
密鑰派生和緩存:4-Way Handshake和Group Key Handshake
密鑰派生
目的:RSNA中要求不同的STA和AP關(guān)聯(lián)后使用不同的Key進行數(shù)據(jù)加密
PMK(Pairwise Master Key,成對主密鑰):在STA中設置的密碼。
PMK來源:
- 在soho網(wǎng)絡環(huán)境中,無專門的驗證服務器。來源于雙方事先配置好的預共享密鑰(Pre-Shared Key,PSK)。
- 在企業(yè)網(wǎng)絡環(huán)境中:PMK和Authenticator Server(如RADIUS服務器)有關(guān),通過EAPOL消息和后臺AS經(jīng)過多次交互來獲取。
PTK(Pairwise Transient Key,成對臨時Key):PMK密匙派生以得到PTK,安裝到硬件中加密數(shù)據(jù)。PTK利用EAPOL Key幀即4-Way Handshake過程進行信息交換生成。每次關(guān)聯(lián)PTK均重新生成。
密鑰派生方法
輸入PMK長256位(如果用戶設置的密鑰過短,規(guī)范要求STA或AP將其擴展到256位),通過PRF(Pseudo RandomFunction,偽隨機數(shù)函數(shù))并結(jié)合S/A(Supplicant/Authenticator)生成的Nonce(這兩個Nonce將通過4-Way Handshake協(xié)議進行交換)以及S/A MAC地址進行擴展,從而派生出TKIP和CCMP用的PTK。
KCK(Key Confirmation Key)用于計算密鑰生成消息的完整性校驗值
KEK(Key Encryption Key)用來加密密鑰生成消息
密鑰派生流程
四次握手流程
1.AP生成Anonce,并發(fā)送給STA
2.STA生成Snonce,結(jié)合PMK、Anonce和MAC地址生成ptk。
STA發(fā)送Snonce和KCK計算出的MIC給AP。
AP接收Snonce,并派生出PTK計算MIC校驗。
3.AP發(fā)送install、GTK、MIC
4.STA發(fā)送MIC
4-Way Handshake完成后,STA和AP安裝PTK
密鑰緩存
目的:由于802.1X協(xié)商步驟涉及多次幀交換,故其所花費時間往往較長。在這種情況下,STA緩存這個得來不易的PMK信息就可消除以后再次進行802.1X協(xié)商步驟的必要,從而大大提升認證速度。
PMKSA(PMK Security Association):PMK緩存信息。包括AP的MAC地址、PMK的生命周期(lifetime),以及PMKID。
其中PMKID包含(PMK IDentifier,用于標示這個PMKSA,其值由PMK、AP的MAC地址、STA的MAC地址等信息用Hash計算得來)。文章來源:http://www.zghlxwxcb.cn/news/detail-432383.html
密鑰緩存流程
STA首先根據(jù)APMAC地址判斷自己是否有緩存了的PMKSA,如果有則把PMKID放在RSNE中然后通過Association/Reassociation Request發(fā)送給AP。
AP根據(jù)這個PMKID再判斷自己是否也保持了對應的PMKSA。如果是,雙方立即進入4-Way Handshake過程,從而避免802.1X協(xié)商步驟文章來源地址http://www.zghlxwxcb.cn/news/detail-432383.html
到了這里,關(guān)于無線網(wǎng)絡安全的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!