]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
wifi: cfg80211: use kfree_sensitive() for connkeys cleanup
authorZilin Guan <zilin@seu.edu.cn>
Fri, 23 May 2025 11:01:56 +0000 (11:01 +0000)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 11 Jun 2025 09:36:56 +0000 (11:36 +0200)
The nl80211_parse_connkeys() function currently uses kfree() to release
the 'result' structure in error handling paths. However, if an error
occurs due to result->def being less than 0, the 'result' structure may
contain sensitive information.

To prevent potential leakage of sensitive data, replace kfree() with
kfree_sensitive() when freeing 'result'. This change aligns with the
approach used in its caller, nl80211_join_ibss(), enhancing the overall
security of the wireless subsystem.

Signed-off-by: Zilin Guan <zilin@seu.edu.cn>
Link: https://patch.msgid.link/20250523110156.4017111-1-zilin@seu.edu.cn
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/wireless/nl80211.c

index fd5f79266471e49d791f539391632ae3910ea620..85f139016da21c2bc77606ba22cd1c6e60d8fe31 100644 (file)
@@ -1583,7 +1583,7 @@ nl80211_parse_connkeys(struct cfg80211_registered_device *rdev,
 
        return result;
  error:
-       kfree(result);
+       kfree_sensitive(result);
        return ERR_PTR(err);
 }