All of lore.kernel.org
 help / color / mirror / Atom feed
* CVE-2026-80944: wifi: mwifiex: Detach sync cmd buffer on interrupted wait
@ 2026-09-11 19:40 Greg Kroah-Hartman
  0 siblings, 0 replies; only message in thread
From: Greg Kroah-Hartman @ 2026-09-11 19:40 UTC (permalink / raw)
  To: linux-cve-announce; +Cc: Greg Kroah-Hartman

From: Greg Kroah-Hartman <gregkh@kernel.org>

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

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

wifi: mwifiex: Detach sync cmd buffer on interrupted wait

mwifiex synchronous commands keep the caller-provided data buffer in
cmd_node->data_buf. Several callers pass stack-allocated objects there.

If wait_event_interruptible_timeout() is interrupted, the caller can
return and release that stack object while the firmware command is still
the current command. A late firmware response then reaches the normal
response handler, which can copy data through cmd_node->data_buf into the
stale stack address.

This fixes a stack corruption observed during repeated association and
disassociation cycles. The panic trace showed the command wait being
interrupted immediately before a bad pointer dereference:

  cmd_wait_q terminated: -512
  Unable to handle kernel paging request at virtual address 002c583837384662
  Kernel panic - not syncing: stack-protector: Kernel stack is corrupted
  ...
  Tainted: [M]=MACHINE_CHECK

The fault address decodes as little-endian ASCII:

  0x002c583837384662 -> "bF878X,\0"

which is a fragment of the VERSION_EXT firmware string exposed as
debugfs "verext":

  w8997o-V4, RF878X, FP92, 16.92.21.p153.7

The same runs also showed corrupted control data containing:

  0x2400372e333531 -> "153.7\0$"

which is the tail of the same VERSION_EXT string. This points at a late
VERSION_EXT response writing through a stale stack-backed data_buf after
the interrupted wait returned.

After cancelling pending commands on an interrupted or timed-out wait,
detach the caller-owned data buffer from the still-current command. This
preserves the existing command cancellation behaviour while preventing a
late response from writing through a pointer whose lifetime ended with the
waiting caller.

Tested on an i.MX8MP board using an 88W8997.

The Linux kernel CVE team has assigned CVE-2026-80944 to this issue.


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

	Issue introduced in 3.15 with commit 3d026d09b28dda24777129a931634949c75a9181 and fixed in 6.12.109 with commit 20ee9c03f261bf6ac59331e2ca7b46b23646412a
	Issue introduced in 3.15 with commit 3d026d09b28dda24777129a931634949c75a9181 and fixed in 6.18.50 with commit b1bbeb8970eeb6c6bf3cd5314138103f7b69446d
	Issue introduced in 3.15 with commit 3d026d09b28dda24777129a931634949c75a9181 and fixed in 7.2.4 with commit d29a165588b6a0cf7a38db5cbd602aef7ef8c658
	Issue introduced in 3.15 with commit 3d026d09b28dda24777129a931634949c75a9181 and fixed in 7.3-rc1 with commit ef06882c7d8a7400b67d0d003b1008093dd589ed

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-2026-80944
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/marvell/mwifiex/sta_ioctl.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/20ee9c03f261bf6ac59331e2ca7b46b23646412a
	https://git.kernel.org/stable/c/b1bbeb8970eeb6c6bf3cd5314138103f7b69446d
	https://git.kernel.org/stable/c/d29a165588b6a0cf7a38db5cbd602aef7ef8c658
	https://git.kernel.org/stable/c/ef06882c7d8a7400b67d0d003b1008093dd589ed

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2026-09-11 19:46 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-11 19:40 CVE-2026-80944: wifi: mwifiex: Detach sync cmd buffer on interrupted wait Greg Kroah-Hartman

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.