CVE-2026-31581

ALSA: 6fire: fix use-after-free on disconnect

HIGH
7.8
CVSS Score
Published: April 24, 2026 at 02:42 PM UTC
Updated: June 17, 2026 at 10:34 AM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH7.8
Exploit prediction
EPSS 0.1%

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.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

v ≥ 4.19.325v ≥ 5.4.287v ≥ 6.11.11v < 6.6.1364.19.325 ≤ v < 4.205.10.231 ≤ v < 5.10.2585.15.174 ≤ v < 5.15.2095.4.287 ≤ v < 5.56.1.120 ≤ v < 6.1.1756.11.11 ≤ v < 6.126.12 ≤ v < 6.12.836.12.2 ≤ v < 6.12.836.13 ≤ v < 6.18.246.13 ≤ v < 6.19.146.13 ≤ v < 7.0.16.13 ≤ v < 7.16.19 ≤ v < 6.19.146.6.64 ≤ v < 6.6.1367.0 ≤ v < 7.0.10df7f4b5cc10f5adf98be0845372e9eef7bb5b09273eec23467dfbfbd0e4c10302579ba441fb1e134.19.3255.10.2315.15.1745.4.28757860a80f03f9dc69a34a5c37b0941ad032a0a8c6.1.1206.11.116.12.26.136.6.6474357d0b5cd3ef544752bc9f21cbeee4902fae6ca0810c3d6dd2d29a9b92604d682eacd2902ce947b754e831a94f82f2593af806741392903f359168b889a7d68d7e76b8795b754a75c91a2d561d5e8cea8cc56db659cf0ae57073e32a4735ead7bd7ee3f2d06d4e129e2508e356136f99bb20a332ff1a00
Vendor states this is fixed in 3dc20d1981d6a67d8184498a5da272942dde1e65 (fixed)
Vendor states this is fixed in 51f6532790b74ffdd6970bc848358a2838c1c185 (fixed)
Vendor states this is fixed in af75b486f7e883e3422ece23c8d727e6815144a0 (fixed)
Vendor states this is fixed in b9c826916fdce6419b94eb0cd8810fdac18c2386 (fixed)
Vendor states this is fixed in ba88461f7653636c48321ca993006a74724c2f41 (fixed)
Vendor states this is fixed in d21e8a2af4869b5890b34e081d5aeadc93e9cd5c (fixed)
Vendor states this is fixed in e247a0e01d15ed420f77ec5e2335721bf430a5b3 (fixed)
Vendor states this is fixed in e719232f4552e29de8027a83918ea94434be87af (fixed)
Vendor states this is fixed in e88354b381e2006de63d6b052ed7005c9a47d00e (fixed)
Affected range stops below 4.20, so it looks safe — our inference, not a vendor statement
Vendor states this is fixed in 5.10.258 (unaffected)
Vendor states this is fixed in 5.15.209 (unaffected)
Affected range stops below 5.5, so it looks safe — our inference, not a vendor statement
Vendor states this is fixed in 6.1.175 (unaffected)
Affected range stops below 6.12, so it looks safe — our inference, not a vendor statement
Vendor states this is fixed in 6.12.83 (unaffected)
Vendor states this is fixed in 6.13 (unaffected)
Vendor states this is fixed in 6.18.24 (unaffected)
Vendor states this is fixed in 6.19.14 (unaffected)
Vendor states this is fixed in 6.6.136 (unaffected)
Vendor states this is fixed in 7.0.1 (unaffected)
Vendor states this is fixed in 7.1 (unaffected)

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
HIGH
Availability
HIGH
Vector?

Quick Info

StatusMODIFIED
CWE
CWE-416

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card