KernelScan.io

HIGH Introduced in 6.7

mt76 RxPoll UAF

CVE-2026-90380

CVSS 8.8 / 10.0 NVD

CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

KernelScan AI7.5HIGH

01

In the Linux kernel, the following vulnerability has been resolved: wifi: mt76: mt792x: fix use-after-free in mt76_rx_poll_complete A use-after-free issue occurs in mt76_rx_poll_complete due to a race condition. The STA has already been removed, but the rx_status still had a pointer to the wcid in the STA. Set the links' wcid pointers to be NULL for a MLD in mt7925_sta_pre_rcu_remove() BUG: KASAN: invalid-access in mt76_rx_poll_complete+0x280/0x470 Call trace: dump_backtrace+0xec/0x128 show_stack+0x18/0x28 dump_stack_lvl+0x40/0xc8 print_report+0x1b8/0x710 kasan_report+0xe0/0x144 do_bad_area+0x120/0x260 do_tag_check_fault+0x20/0x34 do_mem_abort+0x54/0xa8 el1_abort+0x3c/0x5c el1h_64_sync_handler+0x40/0xcc el1h_64_sync+0x7c/0x80 mt76_rx_poll_complete+0x280/0x470 mt76_dma_rx_poll+0x114/0x51c mt792x_poll_rx+0x60/0xf8 napi_threaded_poll_loop+0xe0/0x450 napi_threaded_poll+0x80/0x9c kthread+0x11c/0x158 ret_from_fork+0x10/0x20

02

Engine v0.6.0

Risk summary

A use-after-free in the MediaTek mt7925 WiFi driver allows a nearby unauthenticated WiFi client to trigger kernel memory corruption by disconnecting during active frame reception. The race between station removal and receive processing can crash the kernel or potentially enable code execution. Any device using the mt7925 WiFi chipset with MLD (multi-link) stations is affected.

Affecteddrivers/net/wireless/mediatek/mt76/mt7925/main.c (wifi: mt76: mt7925)

Vulnerability analysis

A use-after-free occurs in the MediaTek mt7925 WiFi driver when a station disconnects while received frames are still being processed. During station removal, the station's internal wireless client ID structure is freed, but in multi-link device configurations the per-link pointers referencing that structure were not cleared beforehand. The receive poll routine can then follow a stale pointer into already-freed memory, causing a kernel crash or memory corruption. The fix introduces a dedicated pre-removal callback that nullifies all per-link pointers before the station is torn down, so the receive path can no longer dereference freed memory. This bug is reachable only on systems with the mt7925 WiFi driver loaded, and it can be triggered by any WiFi client within radio range that disconnects at the right moment — no authentication or local system access is required.

03

BranchIntroducedFixed inPatch commit
6.126.76.12.110aaf414bf81ab
7.26.77.2.6b250943f3f83
mainline6.77.3-rc1217f9e7bb025
cip/6.126.76.12.111-cip32aaf414bf81ab