Name
wpa-supplicant
Version
2.10
Type
library
Description
Client for Wi-Fi Protected Access (WPA)
Licenses
BSD-3-Clause
PURL
-
CPE
cpe:2.3:*:*:wpa_supplicant:2.10:*:*:*:*:*:*:*
Other Versions#
Patches#
#
Title
Author
Resolve
1
DPP: Delete PKEX code and identifier on success completion of
Jouni Malinen <quic_jouni@quicinc.com>
CVE-2022-37660
2
SAE: Reject invalid Rejected Groups element in the parser
Jouni Malinen <j@w1.fi>
3
Require Message-Authenticator in Access-Reject even
Jouni Malinen <j@w1.fi>
CVE-2024-3596
4
SAE: Check for invalid Rejected Groups element length
Jouni Malinen <j@w1.fi>
CVE-2024-3596
5
DPP3: PKEX over TCP
Jouni Malinen <jouni@qca.qualcomm.com>
CVE-2022-37660
6
eapol_test: Move Message-Authenticator attribute to be
Jouni Malinen <j@w1.fi>
CVE-2024-3596
7
ieee802_11_auth: Coding style cleanup - no string
Jouni Malinen <j@w1.fi>
8
RADIUS: Allow Message-Authenticator attribute as the
Jouni Malinen <j@w1.fi>
CVE-2024-3596
9
RADIUS: Drop pending request only when accepting the response
Jouni Malinen <j@w1.fi>
CVE-2025-24912
10
DPP: Change PKEX version configuration design
Jouni Malinen <quic_jouni@quicinc.com>
CVE-2022-37660
11
PEAP client: Update Phase 2 authentication requirements
Jouni Malinen <j@w1.fi>
CVE-2023-52160
12
RADIUS: Check Message-Authenticator if it is present even
Jouni Malinen <j@w1.fi>
CVE-2024-3596
13
Install wpa_passphrase when not disabled
Alex Kiernan <alexk@zuma.ai>
14
build: Re-enable options for libwpa_client.so and
Sergey Matyukevich <geomatsi@gmail.com>
15
DPP3: Add PKEX initiator retries and fallback from v2 to v1
Jouni Malinen <quic_jouni@quicinc.com>
CVE-2022-37660
16
Fix removal of wpa_passphrase on 'make clean'
Jouni Malinen <quic_jouni@quicinc.com>
17
RADIUS: Fix pending request dropping
Jouni Malinen <quic_jouni@quicinc.com>
CVE-2025-24912
18
RADIUS: Require Message-Authenticator attribute in MAC
Jouni Malinen <j@w1.fi>
CVE-2024-3596
19
SAE: Check for invalid Rejected Groups element length
Jouni Malinen <j@w1.fi>
20
hostapd: Move Message-Authenticator attribute to be the
Jouni Malinen <j@w1.fi>
CVE-2024-3596
21
RADIUS DAS: Move Message-Authenticator attribute to be
Jouni Malinen <j@w1.fi>
CVE-2024-3596
22
RADIUS server: Place Message-Authenticator attribute as
Jouni Malinen <j@w1.fi>
CVE-2024-3596
23
DPP3: Start with PKEXv2 and fall back to v1
Jouni Malinen <quic_jouni@quicinc.com>
CVE-2022-37660
Vulnerabilities#
Name
Analysis
Description
Patched
hostapd fails to process crafted RADIUS packets properly. When hostapd authenticates wi-fi devices with RADIUS authentication, an attacker in the position between the hostapd and the RADIUS server may inject crafted RADIUS packets and force RADIUS authentications to fail.
False Positive
An issue was discovered in Ubuntu wpa_supplicant that resulted in loading of arbitrary shared objects, which allows a local unprivileged attacker to escalate privileges to the user that wpa_supplicant runs as (usually root).
Membership in the netdev group or access to the dbus interface of wpa_supplicant allow an unprivileged user to specify an arbitrary path to a module to be loaded by the wpa_supplicant process; other escalation paths might exist.
Patched
RADIUS Protocol under RFC 2865 is susceptible to forgery attacks by a local attacker who can modify any valid Response (Access-Accept, Access-Reject, or Access-Challenge) to any other response using a chosen-prefix collision attack against MD5 Response Authenticator signature.
Patched
The implementation of PEAP in wpa_supplicant through 2.10 allows authentication bypass. For a successful attack, wpa_supplicant must be configured to not verify the network's TLS certificate during Phase 1 authentication, and an eap_peap_decrypt vulnerability can then be abused to skip Phase 2 authentication. The attack vector is sending an EAP-TLV Success packet instead of starting Phase 2. This allows an adversary to impersonate Enterprise Wi-Fi networks.
Patched
In hostapd 2.10 and earlier, the PKEX code remains active even after a successful PKEX association. An attacker that successfully bootstrapped public keys with another entity using PKEX in the past, will be able to subvert a future bootstrapping by passively observing public keys, re-using the encrypting element Qi and subtracting it from the captured message M (X = M - Qi). This will result in the public ephemeral key X; the only element required to subvert the PKEX association.