ZeroHour

CVE-2026-80943

moderate

Out-of-bounds QoS TID indexing in Linux rtl8192du Wi-Fi driver

CVSS 3.1
7.6 high
EPSS
Published
()
Modified
AI analysis

The Linux kernel's rtlwifi rtl8192du driver, which supports Realtek RTL8192DU USB Wi-Fi adapters, reads the low 4-bit QoS TID from an outgoing 802.11 frame header (values 0-15) and uses it directly to index the per-station aggregation array sta_entry->tids[], which holds only 9 (MAX_TID_COUNT) entries. A frame transmitted with a TID greater than 8 therefore indexes past the end of the array, confirmed by UBSAN as an index-10 access against rtl_tid_data[9]. Because the TID derives from QoS traffic on the wireless link, a peer on the adjacent Wi-Fi network can craft traffic that triggers the out-of-bounds access; the CVSS 3.1 score of 7.1-class severity (7.6, AV:A) reflects high availability impact (kernel crash/instability) with low confidentiality and integrity impact. Only systems using RTL8192DU-based USB Wi-Fi hardware with the in-tree rtl8192du driver are affected, not other Wi-Fi chipsets or drivers. No public proof of concept exists, the flaw is not in the CISA KEV catalog, and no exploitation is known.

What to do: Update to a kernel release or distro package that includes the fix, which bounds-checks the TID and keeps the default RTL_AGG_STOP aggregation state for out-of-range values (matching the existing rtl92cu driver behavior); the patch will be backported to stable kernels. Until patched, avoid using RTL8192DU USB dongles on untrusted or hostile wireless networks. Verify exposure by checking for the driver ('lsmod | grep rtl8192du') or the CONFIG_RTL8192DU kernel config option together with such hardware being present.

Affected
Linux kernel (rtlwifi rtl8192du driver for Realtek RTL8192DU USB Wi-Fi adapters)
Estimated exposure
moderate≈tens of thousands of systems (Linux machines using RTL8192DU USB Wi-Fi dongles on affected kernels) — Exposure is limited to systems with Realtek RTL8192DU USB Wi-Fi adapters running the in-tree rtl8192du driver — a small slice of the Linux install base with no public install-count or scan data available — so this is a hardware-scoped…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

In the Linux kernel, the following vulnerability has been resolved: wifi: rtlwifi: rtl8192du: check QoS TID before indexing tids rtl92du_tx_fill_desc() uses ieee80211_get_tid() to read the QoS TID from the 802.11 header and then uses it as an index into sta_entry->tids[]. ieee80211_get_tid() returns the low 4-bit QoS TID value, so the result can be in the range 0..15. rtlwifi only allocates MAX_TID_COUNT entries for sta_entry->tids[], and MAX_TID_COUNT is 9. A QoS TID greater than 8 therefore indexes past the aggregation state array. Keep the default RTL_AGG_STOP state for out-of-range TIDs, matching rtl92cu_tx_fill_desc(). This issue was detected by our static analysis tool and confirmed by manual audit. UBSAN validation for the same bug pattern reports an array-index-out-of-bounds access with index 10 for type 'rtl_tid_data [9]'.

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

In the news

No ingested article mentions this CVE yet.