HIGH Introduced in 4.9
iwlwifi BANotif OOB
CVE-2026-93791
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
01Description
In the Linux kernel, the following vulnerability has been resolved: wifi: iwlwifi: mvm: add a check on the tid coming from the firmware ba_notif->tid is a firmware-controlled u8 that is used directly as an array index into tid_data[] without any validation. Add a bounds check against IWL_MAX_TID_COUNT before dereferencing the array.
02KernelScan AI Analysis
Risk summary
An attacker within WiFi range of a device using an Intel iwlwifi wireless adapter can trigger an out-of-bounds memory access in the kernel by exploiting an unchecked firmware-supplied traffic identifier in block-ack notification processing. This can lead to kernel memory corruption, potentially enabling information disclosure, privilege escalation, or a system crash. No authentication or special privileges are required — only proximity to the target's WiFi network.
Vulnerability analysis
The Intel iwlwifi driver processes block-ack notifications from the device firmware and uses a traffic identifier field contained in that notification directly as an array index into a per-station data array, without checking whether the value falls within the array's bounds. Because the identifier is a firmware-controlled byte that can take any value from 0 to 255, an out-of-range value causes the driver to read or write memory beyond the allocated array, corrupting adjacent kernel heap objects. The fix adds a bounds check that rejects any notification carrying an invalid identifier before the array is accessed. The vulnerable code path is reached when the WiFi adapter's firmware delivers a block-ack notification during normal wireless operation; an attacker within WiFi range can potentially craft wireless frames that cause the firmware to emit a notification with an out-of-range identifier, triggering the out-of-bounds access in the host kernel without requiring any privileges or user interaction.
Lifecycle
03Fix Versions
| Branch | Introduced | Fixed in | Patch commit |
|---|---|---|---|
| 6.12 | 4.9 | 6.12.111 | 0b5325a07716 |
| 6.18 | 4.9 | 6.18.53 | 59f64c283902 |
| 6.6 | 4.9 | 6.6.158 | 0f690fd3b553 |
| mainline | 4.9 | 7.2 | 0e4c0d832672 |
| cip/6.12 | 4.9 | 6.12.111-cip32 | 0b5325a07716 |
04CIP Kernels
State of the newest release of each Civil Infrastructure Platform SLTS tree, from CIP's own fix records.
| CIP tree | State |
|---|---|
| cip/6.12 | Fixed in 6.12.111-cip32 |
| cip/6.1 | Affected — no CIP fix yet (latest 6.1.189-cip61) |
| cip/6.1-rt | Affected — no CIP fix yet (latest 6.1.189-cip61-rt32) |
| cip/5.10 | Affected — no CIP fix yet (latest 5.10.271-cip78) |
| cip/5.10-rt | Affected — no CIP fix yet (latest 5.10.268-cip77-rt34) |
| cip/4.19 | Affected — no CIP fix yet (latest 4.19.325-cip136) |
| cip/4.19-rt | Affected — no CIP fix yet (latest 4.19.325-cip136-rt50) |