CVE-2026-74504 in Linuxinformazioni

Riassunto

di VulDB • 15/08/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

ALSA: seq: Correzione della divisione per zero in initialize_timer()

Un timer ALSA (SND_UTIMER) guidato dall'utente spazio utente consente a un utente non privilegiato di impostare la risoluzione hardware del snd_timer sottostante su un valore arbitrario a 64 bit tramite SNDRV_TIMER_IOCTL_CREATE. La funzione snd_utimer_create() rifiuta solo lo zero.

Quando tale timer è associato a una coda del sequencer, initialize_timer() calcola il periodo dei tick come:

tmr->ticks = 1000000000 / (r * freq);

dove r è quella risoluzione controllata dall'utente e freq è la frequenza di aggiornamento del sequencer in Hz, limitata tra MIN_FREQUENCY..MAX_FREQUENCY (10..6250). Una risoluzione pari a 2^63 fa sì che il prodotto a 64 bit r * freq vada in overflow tornando a zero per qualsiasi freq pari, inclusa DEFAULT_FREQUENCY (1000), causando così un errore di divisione per zero.

La divisione viene eseguita sotto tmr->lock con le interruzioni disabilitate; pertanto l'oops lascia il spinlock detenuto e blocca la CPU. È raggiungibile da un utente non privilegiato che ha accesso a /dev/snd/timer e /dev/snd/seq.

Oops: divide error: 0000 [#1] SMP KASAN PTI
CPU: 7 UID: 1000 PID: 456 Comm: alsa_seq_utimer Not tainted 7.2.0-rc4+ RIP: 0010:initialize_timer.constprop.0+0x20a/0x2d0 snd_seq_timer_start+0x15e/0x2b0 snd_seq_control_queue+0x56f/0xba0 snd_seq_write+0x3e0/0x730

Rifiuta un prodotto in overflow con check_mul_overflow() e torna a utilizzare un singolo tick, evitando anche di alimentare il calcolo del periodo con un divisore che ha subito wrap-around ma non è zero (ad esempio 2^63 * 1000 mod 2^64 == 0, o altre risoluzioni che vanno in overflow restituendo un valore piccolo).

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Responsabile

Linux

Prenotare

15/08/2026

Divulgazione

15/08/2026

Moderazione

accettato

CPE

pronto

EPSS

0.00000

KEV

no

Attività

molto basso

Fonti

Do you want to use VulDB in your project?

Use the official API to access entries easily!