CVE-2026-90350
NoneCVSS
—
EPSS
0.2%
Published
Sep 17, 2026
CISA due date
—
Cloudanix analysis
A missing check in the Wi-Fi driver could let a program on the computer read or corrupt nearby memory, risking crashes or security bypass on certain wireless chips.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Data Exposure
- Component
- OS kernel
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Out-of-bounds array read in mt76_vif_link() when an unspecified link identifier (0xf) is supplied, allowing access one element past the link[] array and aliasing adjacent offchannel_link structure fields.
Why it matters to the business
Kernel memory corruption or information disclosure risk on Linux systems using MediaTek mt76 wireless hardware, potentially leading to system instability or local privilege escalation during normal Wi-Fi operations.
How an attack unfolds
An attacker with local access triggers mt7996_set_tsf, mt7996_offset_tsf or mt7996_net_fill_forward_path paths that pass an uninitialized deflink_id value into mt76_vif_link without bounds validation, resulting in an out-of-bounds read.
How to fix it
Update the Linux kernel to a version containing the bounds check that rejects link_id values >= IEEE80211_MLD_MAX_NUM_LINKS and returns NULL, matching the pattern already used in mt7996_sta_link.
How to confirm the fix worked
Confirm the patch is present by inspecting mt76_vif_link for an explicit link_id range check before indexing mvif->link[], then exercise the TSF and forwarding paths to ensure no crash or unexpected aliasing occurs.
Typical attack path
- Obtain local execution on a system with mt76-based Wi-Fi
- Invoke TSF offset or forwarding-path configuration routines
- Supply IEEE80211_LINK_UNSPECIFIED value as link identifier
- Trigger out-of-bounds read that aliases offchannel_link data
How to detect it
Review kernel logs for mt76 oops or warnings referencing mt76_vif_link, link_id validation, or offchannel_link; inspect call traces containing mt7996_set_tsf or mt7996_net_fill_forward_path.
What your security team should do
- Apply the upstream kernel fix for mt76 immediately on all affected MediaTek Wi-Fi devices
- Prioritize systems exposing Wi-Fi configuration surfaces to untrusted local users
- Monitor for kernel oops or slab corruption in mt76 driver paths until patched
The record
In the Linux kernel, the following vulnerability has been resolved: wifi: mt76: reject out-of-range link ids in mt76_vif_link() mt76_vif_link() indexes mvif->link[] without validating link_id, but callers pass mvif->deflink_id / msta->deflink_id, which hold IEEE80211_LINK_UNSPECIFIED (0xf) until the first link has been added. Since IEEE80211_MLD_MAX_NUM_LINKS is 15, that reads one element past the end of the array, aliasing mt76_vif_data.offchannel_link. Reachable via mt7996_set_tsf()/mt7996_offset_tsf() and mt7996_net_fill_forward_path(). Bounds check link_id and return NULL, matching mt7996_sta_link() and mt7996_sta_link_protected().
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|