一. 無線安全介紹
首先無線網絡是半雙工並且在同一信道的終端在一個沖突域,在同一信道內的用戶是可以收到相互的通信幀;所以無線與安全是緊密集合的,只有完善的安全機制才能夠保障無線信息的安全性;
二.無線的威脅
無線的威脅主要有幾種,分別是rogue AP
,Ad Hoc Network
,wireless attacks
等;
rogue AP
簡介:流氓AP可以分為兩種,一種是沒有主觀惡意的,比如某員工自己開的熱點;另一種是具有主觀惡意的,比如某個黑客使用一個AP廣播着與公司內網同樣的SSID,用戶卻無法分辨,這種現象被稱為Client Misassociation
。
防御:正常的AP去探測這些流氓AP,並通過deauthentication
讓終端無法連接它;
AD HOC Network
簡介: AD Hoc Network
是一種筆記本直接與筆記本通信的無線連接方式,這種使用明文傳輸信息的方式,存在安全隱患同時會占用信道;
防御:自從Win7以后,已經不存在在系統中了;
Wireless Attacks
簡介: 無線的攻擊有很多種,但大致可以分為三類:
Management frame spoofing
:- 描述:偽造無線管理幀,對無線終端記性控制,比如
deauthentication attack
; - 防御:Cisco通過Client MFP客戶幀保護;
- 描述:偽造無線管理幀,對無線終端記性控制,比如
- 主動攻擊:
- 主動破解密碼及發動ARP攻擊等;
- ARP毒化通過使用P2P隔離及有線網的ARP源檢測來處理;
- 設置復雜的密碼並定期更換,使用802.1x認證提高安全性;
- 被動攻擊:只是在無線中靜靜的"聽",即收幀;
三. 無線的安全協議
無線的安全協議大略的演變過程為WEP
,WPA
,WPA2
及WPA3
。
3.1 WEP
WEP是Wire Equivalent Privacy的簡稱,名稱為有線等效保密(WEP);因LAN的物理結構,LAN天生對數據的傳輸是有一定的保密性的;在2003年被Wi-Fi Protected Access(WPA)
淘汰,又在2004年由完整的IEEE 802.1i(即WPA2)
標准所取代。
如下圖:WEP在4次握手中,即傳輸了密文也傳輸了明文,那么破解密碼就相當容易,如下圖:

從WEP中衍生出了一種認證方式,叫做Open Authentication
,它可以在不配置任何加密時使用,也可以作為其他認證開始前的Open
,如下圖:

3.2 WPA
WPA
的全名為Wi-Fi Protected Access
(Wi-Fi保護訪問),有WPA
和WPA2
兩個標准。
WPA
共兩種安全類型,如下圖:
- WPA個人:使用
PSK
實現身份認證; - WPA企業:使用
802.1x
和3A
服務器實現身份認證;
3.2.1 WPA的幾種秘鑰
PMK-Pairwise Master Key[成對主秘鑰]
- PTK和GTK都是通過PMK派生的;
- PMK是一個256位的hash值;
- Client和AP分別計算PMK,PMK值並不在網絡中傳輸;
PTK-Pairwise Transient Key[成對傳輸秘鑰]
- 針對每個用戶單播的信道單獨加密;
- PTK由PMK和2個隨機數、兩個MAC地址通過三列計算得到;
GTK-Group Temporal key [臨時組秘鑰]
- 針對組播及廣播使用的共同秘鑰;
- GTK在有終端與AP鏈接斷開時,會發生變化,新增終端時不會變;
- GTK由AP直接產生,並使用PTK加密傳送給終端;
MIC-Message integrity check(消息完整性校驗)
- 使用HASH算法,以前MD5,現在使用SHA及SHA2;
- 在發送數據時計算並攜帶,另一端收到時,對數據hash並與原MIC對比,完成校驗;
- 注Hash時,使用的數據包含真是數據及MIC值(由PMK計算所得);
WAP四次握手
參考:戳這里
如下:
-
第一條msg是由AP發給Client,msg內攜帶一個隨機數
ANonce
,當Client收到后,自己會產生一個隨機數SNonce
,同時也知道SA
,AA
及PMK
從而生成PTK
,幀如下: -
Client將SNonce與MIC給予AP,AP收到后計算出PTK與MIC,並與收到的對比,匹配則進入第三步;
-
AP使用
PTK
加密GTK
后發送,注意幀不是加密的,只有GTK
是加密的; -
Client完成
EAP-Key
過程,並向AP發送ACK
,在AP收到后,整個過程結束;
四. 無線的認證簡介
無線的認證可以分為二層認證及三層認證,二層認證主要指802.1x認證及PSK認證,三層認證主要指的是web重定向認證;
4.1 802.1x認證
802.1x,全稱為Port-BasedNetworks AccessControl
,即基於端口的網絡訪問控制。由IEEE為解決無線局域網用戶的接入認證問題,但由於其原理對於所有符合IEEE802標准的局域網通用性,現在有限局域網中也普遍使用;
4.1.1 體系結構
802.1x使用Client/Server模式,主要有三個部分:客戶端、認證系統以及認證服務器,三者關系如下:
客戶端: 需要接入LAN/WLAN中的終端設備,需要802.1x客戶端,同時必須支持EAPOL協議;
認證系統:通常為支持802.1x協議的網絡設備,在客戶端及認證服務器間充當代理:
- 跟客戶端之間通過EAPOL協議進行通信;
- 跟認證服務器間通過EAPOver Radius報文或者Radius報文進行通信;
認證服務器:通常為Radius服務器,用於實現對用戶的認證、授權和計費;
- 認證服務器通過檢驗客戶端的身份標識,判斷是否入網;
- 認證服務器將相關信息交給認證系統,由認證系統構建動態的訪問控制列表;
4.1.2 涉及的協議
EAPOL(EAPoverLANs):是802.1X協議定義的一種報文封裝格式,主要用於在客戶端和設備端之間傳送EAP協議報文,以允許EAP協議報文在LAN上傳送;
EAP(ExtensibleAuthenticationProtocol): 可擴展認證協議,用來實現客戶端、認證系統和認證服務器之間認證信息的交互。
RADIUS(RemoteAuthentication Dial In UserService): 用戶遠程撥入認證服務,是AAA的的應用協議,也是AAA的網絡傳輸協議;
4.1.3 認證的基本過程
802.1x系統支持EAP中繼方式和EAP終結方式與遠端RADIUS服務器交互完成認證;
EAP中繼方式
這種方式中,將EAP承載在其它高層協議中,如EAPoverRadius,用來擴展認證協議報文穿越復雜網絡的能力;
- 需要Radisu服務器支持EAP屬性
步驟:
- 用戶在802.1x客戶端輸入用戶名密碼后,客戶端發出EAPOL-Start報文,開始認證;
- NAS收到后,發送EAP-Request/Identity報文,要求客戶端發送用戶名;
- 客戶端在EAP-Responsne/Identity報文中,發送用戶名;
- NAS將客戶端發來的數據幀使用Radius Access-Request報文封裝並轉發給Radius服務器;
- Radius服務器將在數據庫中查找用戶名,然后使用隨機加密字加密密碼信息,並將加密字都發給NAS,NAS解封裝后(EAP-Request/MD5Challenge)發給Client;
- Client使用收到的加密字加密自己的密碼,生成EAP-Response/MD5challenge,然后通過NAS封裝后發送給Radius;
- 認證服務器判斷是否通過,通過發送(RADIUSAccess-Accept報文和EAP-Success報文),NAS會打開受控端口,否則發送EAP-Failure報文,NAS不做操作;
- 客戶端也可以發送EAPOL-Logoff報文給認證系統,主動要求下線,NAS會關閉受控端口,並回復EAP-Failure報文。
EAP終結方式
EAP終結方式將EAP報文在認證系統上終結,並轉換成標准的Radius協議完成認證、授權和計費。
- 設備端與Radius服務器之間可以采用PAP(PasswordAuthentication Protocol,密碼驗證協議)或者CHAP(ChallengeHandshake AuthenticationProtocol,質詢握手驗證協議)認證方法
步驟:
- 1~3步,與EAP中繼方式相同;
- NAS收到EAP-Response/Identity后,本地生成加密字並發送EAP-Request/MD5Challenge告知Client;
- Client生成EAP-Response/MD5Challenge發送給NAS;
- NAS使用CHAP協議對用戶名、口令、加密字等認證信息重新封裝成標准的Radius報文,送給服務器處理;
- 認證服務器檢測通過后會發送RADIUSAccess-Accept報文給NAS;
- 之后同EAP中繼方式;
4.2 三層認證簡介
一般設置使用web服務器,用到了重定向,過程如下:
- Client需要先過二層認證,可層可以設置為None,也可以是用WPA來認證;
- Client正確的從DHCP獲取IP地址,DNS地址及網關信息;
- Client開始正常的請求,http會被WAC重定向至指定的認證頁面;
- Client在認證頁面上完成相關認證后,跳轉正常的頁面;