Cloudanix VulnDB

CVE-2026-80825

None

CVSS

—

EPSS

0.2%

Published

Sep 4, 2026

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A bug in certain wireless network drivers can crash the entire system when traffic is shared between a wired connection and a wireless access point.

Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
Moderate
Impact
Denial Of Service
Component
OS kernel
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Insufficient headroom reservation in mt7925_usb_sdio_tx_prepare_skb causes skb_under_panic during skb_push when ieee80211_8023_xmit forwards frames lacking mac80211-reserved extra_tx_headroom.

Why it matters to the business

Bridged wired-to-wireless setups using affected mt7925 hardware trigger immediate kernel crashes, halting network forwarding until manual reboot and potentially interrupting dependent services.

How an attack unfolds

An attacker sends frames into a bridged ingress interface; the frames reach mt7925_usb_sdio_tx_prepare_skb without required headroom, causing skb_push to panic the kernel during TX queueing.

How to fix it

Apply the upstream fix that adds explicit headroom validation in mt7925_usb_sdio_tx_prepare_skb, matching the prior mt7921 change; rebuild and deploy updated kernel modules for mt76/mt7925.

How to confirm the fix worked

Confirm absence of skb_under_panic in dmesg during bridged forwarding tests; verify the guard clause exists in mt7925_usb_sdio_tx_prepare_skb source after patching.

Typical attack path

  1. Bridge a wired netdev to an mt7925u AP interface
  2. Generate or forward frames via ieee80211_8023_xmit
  3. Trigger mt76u_tx_queue_skb path on the first short frame
  4. Execute skb_push without sufficient headroom

How to detect it

Search kernel logs for skb_under_panic messages referencing skb_push and mt7925_usb_sdio_tx_prepare_skb or mt76u_tx_queue_skb stack frames.

  • skb_under_panic: len:
  • mt7925_usb_sdio_tx_prepare_skb
  • skb_panic+0x58/0x60
  • mt76u_tx_queue_skb

What your security team should do

  • Prioritize kernel updates containing the mt7925 headroom fix
  • Temporarily disable bridging on mt7925u devices until patched
  • Add kernel panic monitoring for skbuff.c and mt76 drivers

The record

In the Linux kernel, the following vulnerability has been resolved: wifi: mt76: mt7925: ensure tx headroom in usb_sdio_tx_prepare_skb mt7925_usb_sdio_tx_prepare_skb() pushes a TX descriptor and a USB header onto every skb and assumes the headroom for them is already there. That holds for locally generated traffic, where mac80211 reserves hw->extra_tx_headroom, but forwarded frames are sent through ieee80211_8023_xmit(), which does not reserve it. Bridge a wired interface to an mt7925u AP and the first forwarded frame that arrives short panics the kernel: skbuff: skb_under_panic: len:415 put:4 tail:0x19b end:0x640 dev:wlan1 kernel BUG at net/core/skbuff.c:212! Call trace: skb_panic+0x58/0x60 (P) skb_push+0x58/0x60 mt7925_usb_sdio_tx_prepare_skb+0xf8/0x1b8 [mt7925_common] mt76u_tx_queue_skb+0xa0/0x1f8 [mt76_usb] __mt76_tx_queue_skb+0x54/0xe8 [mt76] mt76_txq_schedule.part.0+0x204/0x478 [mt76] mt76_txq_schedule_all+0x50/0x80 [mt76] mt792x_tx_worker+0x68/0x100 [mt792x_lib] __mt76_worker_fn+0x84/0x150 [mt76] Whether a given setup hits it depends on how much headroom the ingress netdev leaves in its rx skbs. Reproduced on a Raspberry Pi 5 bridging onboard ethernet to a Netgear A9000; originally reported on an MT7986 router running OpenWrt. Nick Morrow's testing on a Pi 4 (bcmgenet), which leaves more headroom, helped narrow the trigger to the ingress path. The same bug was fixed on mt7921 by commit 98c4d0abf5c4 ("mt76: mt7921: don't assume adequate headroom for SDIO headers"), but mt7925 was copied from mt7921 without the fix. Add the same guard here.

Affected packages

Ecosystem Package Introduced Fixed