概述
- WiFi 联盟将从 2022 年 1 月开始强制要求 WPA3 R3 进行认证。
- 现有的 wpa_supplicant v2.9 和 hostapd v2.9 及以下版本不支持 WPA3-R3。
- 需更新到hostapd v2.10版本以上才支持。
笔记
1.Wi-Fi联盟推出了被称为WPA3 R3版本,其中提出了Hash to Element(H2E)作为生成PWE的最新方法
WPA2: Password -> PMK -> PTK
WPA3 v1: Password -> PWE -> PMK -> PTK
WPA3 r3: Password -> PT -> PWE -> PMK -> PTK
参考链接 WPA3也不安全啦?WPA3-R3 H2E了解一下
2.在已支持SAE的hostapd.conf参数配置下添加sae_pwe=2
默认为0不支持,1为H2E only,会导致不支持WPA3-R3的设备连接失败,2为Both兼容
# SAE mechanism for PWE derivation
# 0 = hunting-and-pecking loop only (default without password identifier)
# 1 = hash-to-element only (default with password identifier)
# 2 = both hunting-and-pecking loop and hash-to-element enabled
# Note: The default value is likely to change from 0 to 2 once the new
# hash-to-element mechanism has received more interoperability testing.
# When using SAE password identifier, the hash-to-element mechanism is used
# regardless of the sae_pwe parameter value.
#sae_pwe=0
3.抓空中包确认
- 判断 Beacon帧 RSN ext 【wlan.rsnx.sae_hash_to_element】标志位以确认是否支持WPA3-R3;
- AUTH帧Status code为 WLAN_STATUS_SAE_HASH_TO_ELEMENT(0x007e)以确认是否 WPA3-R3 连接;
若Status code返回 WLAN_STATUS_SUCCESS (0X0000)则还为WPA3 v1连接;
若beacon支持,则可能连接设备不支持,需要找2022年1月份之后过WiFi 联盟WPA3认证的设备测试。
- 此部分在hostapd 代码 auth_sae_send_commit函数中