CVE-2026-74503
Received Received - Intake

Linux Kernel Use-After-Free in ALSA Timer Subsystem

Vulnerability report for CVE-2026-74503, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-15

Last updated on: 2026-08-15

Assigner: kernel.org

Description

In the Linux kernel, the following vulnerability has been resolved: ALSA: timer: Clear SNDRV_TIMER_IFLG_DEAD once the close completes snd_timer_close_locked() marks an instance with SNDRV_TIMER_IFLG_DEAD and returns early when the flag is already set, but the flag is never cleared again. A completed close ends in remove_slave_links(), which leaves timeri->timer NULL, so a second close is already harmless through the timer == NULL path; the early return can only be reached by an instance that was opened again in between. For such an instance the close unlinks nothing, so snd_timer_instance_free() frees an object that is still on timer->open_list_head, still on snd_timer_master_list if it was opened with a slave key, still owns any adopted slaves, and still holds its timer and module references. snd_seq_timer_open() reopens an instance exactly like that: it retries its fallback open on the same object after a failure that has already run snd_timer_close_locked() internally. An unprivileged user with access to /dev/snd/timer and /dev/snd/seq can force that failure, since snd_timer_check_master() returns -EBUSY when a pending slave matches the new master's (slave_class, slave_id) key and the target timer has reached max_instances, and SNDRV_TIMER_IOCTL_SELECT with dev_class = SNDRV_TIMER_CLASS_SLAVE keeps the caller-supplied dev_sclass, so a sequencer queue's key can be forged. The freed instance is afterwards dereferenced by any further snd_timer_open() on that timer, by snd_timer_check_slave(), and by /proc/asound/timers, which faults on the stale ti->owner pointer. The flag only has to be visible while the close is in progress, which is all its other users need. Clear it in remove_slave_links(), under the same timer->lock that sets it, once the instance is off every list.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-15
Last Modified
2026-08-15
Generated
2026-08-15
AI Q&A
2026-08-15
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
linux linux_kernel *

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-UNKNOWN

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This is a use-after-free vulnerability in the Linux kernel's ALSA timer subsystem. It occurs when an instance is marked as dead but the flag is not cleared after closing. This allows an unprivileged user to force a failure that reopens a closed instance, leading to a freed object being referenced later. This can cause memory corruption or crashes.

Detection Guidance

This vulnerability is specific to the Linux kernel's ALSA timer subsystem and requires local system access to detect. Check if your kernel version includes the fix by running: uname -a. If your kernel version is below the patched version, the vulnerability may exist. Monitor kernel logs for related errors or crashes involving ALSA timer operations.

Impact Analysis

An attacker with access to /dev/snd/timer and /dev/snd/seq could exploit this to cause system crashes, memory corruption, or potentially escalate privileges. It may also lead to denial-of-service conditions on affected systems.

Mitigation Strategies

Update your Linux kernel to the latest stable version that includes the fix for this vulnerability. If immediate patching is not possible, restrict access to /dev/snd/timer and /dev/snd/seq devices to trusted users only. Monitor system logs for signs of exploitation attempts or crashes related to ALSA timer operations.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-74503. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart