Race condition in Linux kernel ALSA bcd2000 driver on disconnect
Key facts
- Attack vector
- —
- Privileges required
- —
- User interaction
- —
- Attack complexity
- —
- Impact type
- —
- Confidentiality · integrity · availability
- —
- Fix status
- Partial Red Hat: 1 without a fix
No CVSS vector from any source. Fix status from CNA and Red Hat.
Summary
The Linux kernel ALSA bcd2000 driver is affected in several stable branches, including 5.10.270 before 5.11, 5.15.221 before 5.16, 6.1.188 before 6.1.189, 6.6.157 before 6.6.158, 6.12.109 before 6.12.112, 6.18.50 before 6.18.54 and 7.2.4 before 7.2.8. A race between rawmidi operations and USB disconnect lets a rawmidi callback still access the URB after it is freed, causing a use-after-free.
Written with Claude Haiku 5.5 from the sources below · 2026-11-01
Description from the CNA
In the Linux kernel, the following vulnerability has been resolved: ALSA: bcd2000: Fix race between rawmidi and disconnect Although we tried to fix the potential UAF issues at USB disconnect on bcd2000 driver, there is still an overlooked case -- namely, when a rawmidi trigger callback has been already running at USB disconnect handling, the in-flight function (e.g. bcd2000_midi_send()) could still access the URB, because the previous URB NULL-check & clearance was considered only for the URB complete callbacks, but not about the parallel rawmidi operations. For addressing the race, this patch introduced a new spinlock that covers each rawmidi operation as well as the rawmidi handling in the complete callback. The URB is cleared with the lock, so it guarantees that the pending rawmidi task already finished or a NULL check is effective.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Linux | Linux | 5.10.270 to before 5.11; 5.15.221 to before 5.16 | 5.11, 5.16 | Patch available | CNA |
| Linux | Linux | 6.1.188 to before 6.1.189; 6.6.157 to before 6.6.158; 6.12.109 to before 6.12.112; 6.18.50 to before 6.18.54; 7.2.4 to before 7.2.8 | 6.1.189, 6.6.158, 6.12.112, 6.18.54, 7.2.8 | Patch available | CNA |
- Linux VendorLinux Affected 5.10.270 to before 5.11; 5.15.221 to before 5.16 Fixed in 5.11, 5.16 Patch available CNA
- Linux VendorLinux Affected 6.1.188 to before 6.1.189; 6.6.157 to before 6.6.158; 6.12.109 to before 6.12.112; 6.18.50 to before 6.18.54; 7.2.4 to before 7.2.8 Fixed in 6.1.189, 6.6.158, 6.12.112, 6.18.54, 7.2.8 Patch available CNA
Remediation
Upgrade the Linux kernel to 5.11, 5.16, 6.1.189, 6.6.158, 6.12.112, 6.18.54 or 7.2.8, depending on the branch in use. Red Hat's plan for Red Hat Enterprise Linux 10 is none available.
Written with Claude Haiku 5.5 from the sources below · 2026-11-01
- Fix · CNA Linux (Linux) Fixed in 5.11, 5.16
- Fix · CNA Linux (Linux) Fixed in 6.1.189, 6.6.158, 6.12.112, 6.18.54, 7.2.8
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Enterprise Linux 10 | Affected | No fix yet: Fix deferred |
Timeline
- 2026-10-06 Threatist record created from CVE-2026-98316
- 2026-10-06 Alias added: GHSA-877f-c8m6-hq9r
- 2026-10-19 Affected versions changed · CNA
- 2026-11-01 Affected versions changed · Red Hat
- 2026-11-01 CVSS score added · Red Hat
References
Other 6
- https://git.kernel.org/stable/c/3b824930259d54f5047ce6b5c97bd20db2fc2b98
- https://git.kernel.org/stable/c/c83d6b0a65f7b71bbabcc91c045dfbffdff6ae76
- https://git.kernel.org/stable/c/0a7ecf52cb59ed77ec525deb52c496ea8fba10b1
- https://git.kernel.org/stable/c/812ca56867bec3065c2a27f1ff5ce04e2a8bf4f0
- https://git.kernel.org/stable/c/9c8b6eff6e7505c128b615d9a1364ef66fa5c18e
- https://git.kernel.org/stable/c/221253723dc58bb901c3f27a7659823e63fc598c
More Linux vulnerabilities
- TI-2025-26358 tls: fix handling of zero-length records on the rx_list KEVCVSS 3.1CRITICAL 9.8
- TI-2026-38352 netfilter: bridge: make ebt_snat ARP rewrite writable KEVCVSS 3.1HIGH 8.8
- TI-2021-02452 Incorrect authorization in Ubuntu linux kernel KEVCVSS 3.1HIGH 8.8
- TI-2013-05264 The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the… KEVCVSS 3.1HIGH 8.8
- TI-2022-00125 Integer overflow in kernel KEVCVSS 3.1HIGH 8.4
- TI-2013-01864 The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9… KEVCVSS 3.1HIGH 8.4
Sources
- CVE-2026-98316 · CVE Program
- CVE-2026-98316 · NVD
- FIRST EPSS
- GHSA-877f-c8m6-hq9r · GitHub Advisory Database · CC BY 4.0
- CVE-2026-98316 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences