CVE-2026-31581 ALSA: 6fire: fix use-after-free on disconnect
A use-after-free vulnerability in the Linux kernel's ALSA 6fire USB driver allows attackers to execute arbitrary code or escalate privileges via device disconnection.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-31581?
CVE-2026-31581 is a high-severity use after free vulnerability in Linux kernel, published on 24 Apr 2026. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
ALSA: 6fire: fix use-after-free on disconnect
In usb6fire_chip_abort(), the chip struct is allocated as the card's private data (via snd_card_new with sizeof(struct sfire_chip)). When snd_card_free_when_closed() is called and no file handles are open, the card and embedded chip are freed synchronously. The subsequent chip->card = NULL write then hits freed slab memory.
Call trace: usb6fire_chip_abort sound/usb/6fire/chip.c:59 [inline] usb6fire_chip_disconnect+0x348/0x358 sound/usb/6fire/chip.c:182 usb_unbind_interface+0x1a8/0x88c drivers/usb/core/driver.c:458 ... hub_event+0x1a04/0x4518 drivers/usb/core/hub.c:5953
Fix by moving the card lifecycle out of usb6fire_chip_abort() and into usb6fire_chip_disconnect(). The card pointer is saved in a local before any teardown, snd_card_disconnect() is called first to prevent new opens, URBs are aborted while chip is still valid, and snd_card_free_when_closed() is called last so chip is never accessed after the card may be freed.
Weakness: CWE-416
Which versions are affected by CVE-2026-31581?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2026-31581?
Apply the vendor's patch.
Upgrade to the fixed version. These bugs are found with fuzzing and sanitisers and avoided by memory-safe languages. More about Use after free.
Is CVE-2026-31581 being exploited?
There is no known exploitation of CVE-2026-31581 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as BELL-CVE-2026-31581, DEBIAN-CVE-2026-31581, GHSA-8wc2-723q-hf3g, ROOT-OS-DEBIAN-11-CVE-2026-31581, ROOT-OS-DEBIAN-12-CVE-2026-31581, ROOT-OS-DEBIAN-13-CVE-2026-31581 and 3 more.