Wi-Fi 安全协议 - OPEN/WEP/WPA 连接过程分析

时间:2024-05-21 13:10:37

开放系统身份验证(Open System Authentication)

  • AP不对STA的身份进行认证的认证方式。
  • 开放系统认证流程
  1. STA发送认证请求给AP
  2. AP响应认证请求
  3. STA发送关联请求给AP
  4. AP发送关联回应

Wi-Fi 安全协议 - OPEN/WEP/WPA 连接过程分析
Wi-Fi 安全协议 - OPEN/WEP/WPA 连接过程分析

有线等效加密(Wired Equivalent Privacy, WEP)

  • WEP认证流程
  1. STA发送认证需求 (Authentication Request) 给AP。
  2. AP把质询明文(Challenge text)放到响应帧 (Authentication Response) 里。
  3. STA取出Challenge Text,利用WEP加密方法对Challenge Text进行加密,然后发送给AP。
  4. AP收到第二次Authentication Request后,对数据进行解密;如果ICV正确,并且解密后的译文等于发送的质询明文,则通过身份认证。
  5. AP返回验证结果给STA,如果验证成功,STA将通过Association请求加入无线网络。
  6. STA和AP发送关联请求和响应

Wi-Fi 安全协议 - OPEN/WEP/WPA 连接过程分析Wi-Fi 安全协议 - OPEN/WEP/WPA 连接过程分析

网络安全存取技术 (Wi-Fi Protected Access, WPA)

  • WPA认证流程
  1. STA采用开放系统认证方式完成认证。
  2. STA和AP 通过Association Request 和 Association Response 进行关联。
  3. STA和AP通过EAPOL-KEY进行WPA的四次握手协商,产生临时**。

Wi-Fi 安全协议 - OPEN/WEP/WPA 连接过程分析
Wi-Fi 安全协议 - OPEN/WEP/WPA 连接过程分析
Wi-Fi 安全协议 - OPEN/WEP/WPA 连接过程分析

  • EAPOL-Key Frame Notation
  • EAPOL-Key(S, M, A, I, K, KeyRSC, ANonce/SNonce, MIC, RSNIE, GTK[N])
EAPOL-Key的位 说明
S initial key exchange完成标志
M MIC包含标志位,除了EAPOL Key 1外,其他三帧都应该置该位
A 信息需要ACK标志位,当接收方需要回应这条消息时,置该位
I 安装标志位,是否安装paiwise key
K key类型标志位,P (Pairwise), G (Group/STAKey)
KeyRSC 在KeyRSC域中
ANonce/SNonce Authenticator/Supplicant nonce
MIC 完整性校验位
RSNIE RSN IE,在Key data域中
GTK 加密的GTK,在Key data域中
N key标识,用于只是GTK的索引
  • 四次握手过程
  1. EAPOL Key1
    Authenticator → Supplicant: EAPOL-Key (0, 0, 1, 0, P, 0, ANonce, 0, 0, 0)
    AP发送A Nonce给STA, nonce 是防范重放攻击的随机值,信息本身并未经过认证。

Wi-Fi 安全协议 - OPEN/WEP/WPA 连接过程分析
2. EAPOL Key2
Supplicant → Authenticator: EAPOL-Key(0, 1, 0, 0, P, 0, SNonce, MIC, RSNIE, 0)
STA收到EAPOL Key1后,自己随机产生一个S Nounce,然后结合A Nounce, PMK, AP MAC和STA MAC得到PTK和MIC key。
然后将同一个802.1x data通过HMAC_MD5算出MIC,MIC值会被KCK加密;STA把MIC和SNounce发给AP

Wi-Fi 安全协议 - OPEN/WEP/WPA 连接过程分析
3. EAPOL Key3
Authenticator → Supplicant: EAPOL-Key(1, 1, 1, 1, P, KeyRSC, ANonce, MIC, RSNIE, GTK[N])
AP收到EAPOL Key3后,通过AP MAC,STA MAC, SNounce,ANounce得到PTK和MIC,如果计算的MICSTA发送的MIC一致,说明两者的PMK一致,否则AP发出Deauth帧给STA。
AP随后会通过EAPOL-KEY 把GTK加密后发给STA,该**用KEK加密。
整个信息系经过「**确认」**的认证,得到MIC(用KCK加密),MIC会加入到其中。

Wi-Fi 安全协议 - OPEN/WEP/WPA 连接过程分析
4. EAPOL Key4
Supplicant → Authenticator: EAPOL-Key(1, 1, 0, 0, P, 0, 0, MIC, 0, 0)
STA把EAPOL Key3 解密后,发一个确认信息给AP, 可以开始使用这些**。
AP收到EAPOL Key4后,通过AP MAC,STA MAC, SNounce,ANounce计算MIC,如果计算的MIC和STA发送的MIC一致,则第四次握手成功。

Wi-Fi 安全协议 - OPEN/WEP/WPA 连接过程分析
5. 数据传输
STA和AP将安装Key到驱动,对数据进行加密传输。