Subject: CVE-2024-27048: wifi: brcm80211: handle pmk_op allocation failure

From: Greg Kroah-Hartman <[email-masked]>

Description
===========

In the Linux kernel, the following vulnerability has been resolved:

wifi: brcm80211: handle pmk_op allocation failure

The kzalloc() in brcmf_pmksa_v3_op() will return null if the
physical memory has run out. As a result, if we dereference
the null value, the null pointer dereference bug will happen.

Return -ENOMEM from brcmf_pmksa_v3_op() if kzalloc() fails
for pmk_op.

The Linux kernel CVE team has assigned CVE-2024-27048 to this issue.

Affected and fixed versions
===========================

	Issue introduced in 6.4 with commit a96202acaea4 and fixed in 6.6.23 with commit df62e22c2e27
	Issue introduced in 6.4 with commit a96202acaea4 and fixed in 6.7.11 with commit 9975908315c1
	Issue introduced in 6.4 with commit a96202acaea4 and fixed in 6.8.2 with commit 6138a82f3bcc
	Issue introduced in 6.4 with commit a96202acaea4 and fixed in 6.9 with commit b4152222e04c

Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.

Unaffected versions might change over time as fixes are backported to
older supported kernel versions.  The official CVE entry at
	https://cve.org/CVERecord/?id=CVE-2024-27048
will be updated if fixes are backported, please check that for the most
up to date information about this issue.

Affected files
==============

The file(s) affected by this issue are:
	drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c

Mitigation
==========

The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes.  Individual
changes are never tested alone, but rather are part of a larger kernel
release.  Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all.  If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
	https://git.kernel.org/stable/c/df62e22c2e27420e8990a4f09e30d7bf56c2036f
	https://git.kernel.org/stable/c/9975908315c13bae2f2ed5ba92870fa935180b0e
	https://git.kernel.org/stable/c/6138a82f3bccfc67ed7ac059493579fc326c02e5
	https://git.kernel.org/stable/c/b4152222e04cb8afeeca239c90e3fcaf4c553b42