fragattacks/src/common
Jouni Malinen 8f8473cebb SAE: Fix peer-commit-scalar reuse check
Only one peer-commit-scalar value was stored for a specific STA (i.e.,
one per MAC address) and that value got replaced when the next SAE
Authentication exchange was started. This ended up breaking the check
against re-use of peer-commit-scalar from an Accepted instance when
anti-clogging token was requested. The first SAE commit message (the one
without anti-clogging token) ended up overwriting the cached
peer-commit-scalar value while leaving that instance in Accepted state.
The second SAE commit message (with anti-clogging token) added ended up
getting rejected if it used the same value again (and re-use is expected
in this particular case where the value was not used in Accepted
instance).

Fix this by using a separate pointer for storing the peer-commit-scalar
value that was used in an Accepted instance. There is no need to
allocate memory for two values, i.e., it is sufficient to maintain
separate pointers to the value and move the stored value to the special
Accepted state pointer when moving to the Accepted state.

This fixes issues where a peer STA ends up running back-to-back SAE
authentication within couple of seconds, i.e., without hostapd timing
out the STA entry for a case where anti-clogging token is required.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
2020-02-08 07:19:53 +02:00
..
cli.c cli: Share a common tokenize_cmd() implementation 2016-08-06 12:46:39 +03:00
cli.h cli: Share a common tokenize_cmd() implementation 2016-08-06 12:46:39 +03:00
common_module_tests.c tests: Update SAE H2E test case to match SSWU parameter z change 2019-11-23 17:46:15 +02:00
ctrl_iface_common.c hostapd: Add wpa_msg_ctrl() to report Probe Request frames from STA 2017-11-23 20:12:34 +02:00
ctrl_iface_common.h hostapd: Add wpa_msg_ctrl() to report Probe Request frames from STA 2017-11-23 20:12:34 +02:00
defs.h Introduce and add key_flag 2020-01-09 12:38:36 +02:00
dhcp.h BSD: Use struct ip rather than struct iphdr 2020-01-02 19:17:10 +02:00
dpp.c DPP: DPPEnvelopedData generation for Configurator backup 2020-01-31 23:32:34 +02:00
dpp.h DPP: Received Configurator backup processing 2020-01-31 23:16:05 +02:00
dragonfly.c dragonfly: Disable use of groups using Brainpool curves 2019-07-27 23:36:27 +03:00
dragonfly.h dragonfly: SAE/EAP-pwd min PWE derivation iteration count to shared code 2019-07-23 21:21:30 +03:00
eapol_common.h PAE: Use be16/be32 instead of u16/u32 for spartse 2016-06-24 01:38:48 +03:00
gas_server.c DPP: Fix error path handling for GAS Comeback Response building 2018-11-25 13:51:26 +02:00
gas_server.h DPP: Configuration exchange 2017-06-19 21:13:15 +03:00
gas.c DPP: Configuration exchange 2017-06-19 21:13:15 +03:00
gas.h DPP: Configuration exchange 2017-06-19 21:13:15 +03:00
hw_features_common.c Do not enable HT/VHT for 6 GHz band 20 MHz width channels also 2020-01-23 16:10:41 +02:00
hw_features_common.h Extract BSS coex 40 MHz check into a separate function 2019-12-26 11:41:01 +02:00
ieee802_1x_defs.h mka: Support GCM-AES-256 2018-08-21 19:28:20 +03:00
ieee802_11_common.c AP: Support Short SSID List element in Probe Request frames 2019-12-28 23:13:58 +02:00
ieee802_11_common.h AP: Support Short SSID List element in Probe Request frames 2019-12-28 23:13:58 +02:00
ieee802_11_defs.h SAE: Use Anti-Clogging Token Container element with H2E 2020-01-21 13:13:56 +02:00
linux_bridge.h vlan: Use new bridge ioctl() 2019-01-02 00:23:43 +02:00
linux_vlan.h Use own header file for defining Linux VLAN kernel interface 2016-03-26 11:24:38 +02:00
Makefile Remove CONFIG_IEEE80211W build parameter 2019-09-08 17:33:40 +03:00
ocv.c OCV: Add function to verify a received OCI element 2018-12-17 00:02:14 +02:00
ocv.h OCV: Add function to verify a received OCI element 2018-12-17 00:02:14 +02:00
privsep_commands.h Remove all PeerKey functionality 2017-10-16 02:03:47 +03:00
qca-vendor-attr.h Make qca-vendor.h independent of other header files 2014-04-25 11:41:36 +03:00
qca-vendor.h Additional stats through QCA_NL80211_VENDOR_SUBCMD_GET_STA_INFO 2020-01-31 23:46:01 +02:00
sae.c SAE: Fix peer-commit-scalar reuse check 2020-02-08 07:19:53 +02:00
sae.h SAE: Fix peer-commit-scalar reuse check 2020-02-08 07:19:53 +02:00
tnc.h tests: TNC testing 2014-05-17 20:05:55 +03:00
version.h The master branch is now used for v2.10 development 2019-08-07 17:51:53 +03:00
wpa_common.c OWE: Select KDF hash algorithm based on the length of the prime 2020-01-24 00:47:16 +02:00
wpa_common.h FT-SAE: Add RSNXE into FT MIC 2019-10-18 16:20:27 +03:00
wpa_ctrl.c Android: Harden wpa_ctrl_open2() against potential race conditions 2019-01-06 20:20:20 +02:00
wpa_ctrl.h DPP: Received Configurator backup processing 2020-01-31 23:16:05 +02:00
wpa_helpers.c wpa_helpers: Ignore link-local IPv4 address while waiting for DHCP 2017-03-26 21:13:21 +03:00
wpa_helpers.h Add wpa_ctrl helper functions for upper level functionality 2014-03-12 01:09:21 +02:00