CVE-2026-99229 in Linuxinformazioni

Riassunto

di VulDB • 03/11/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

io_uring/wait: non eseguire busy-waiting su un elenco di overflow bloccato

Finché il bit IO_CHECK_CQ_OVERFLOW_BIT è impostato, io_cqring_wait_schedule() restituisce immediatamente, prima di controllare i segnali o attivare il timeout, affinché io_cqring_wait() possa svuotare l'elenco degli overflow. Se ciò non porta allo svuotamento dell'elenco e l'anello CQ (Completion Queue) non contiene il numero di eventi richiesti dal chiamante, il ciclo riprende con lo stesso risultato. Il task rimane in spin nel kernel e non può essere terminato.

Si presume che questo scenario non possa verificarsi: se i CQE (Completion Queue Entries) non possono essere svuotati, l'anello è pieno e min_events è limitato alla dimensione dell'anello. Tuttavia:

- Con IORING_SETUP_CQE_MIXED un CQE a 32 bit richiede due voci contigue. Rimane bloccato nell'elenco se ne rimane libera solo una, e di conseguenza l'anello contiene meno eventi di cq_entries. Un'applicazione single-threaded che richiede tanti eventi quanti sono gli elementi dell'anello non esce mai da io_uring_enter().

- Se l'anello sia pieno dipende dalla testina CQ (CQ head), su cui può scrivere l'applicazione. Mentre un thread attende eventi su un anello vuoto, un altro thread può spostare indietro la testina in modo che l'anello appaia pieno e generi un overflow di CQE. Il thread in attesa non può più essere interrotto, nemmeno tramite SIGKILL.

Solo l'applicazione può liberare spazio nell'anello CQ. Restituire il controllo all'applicazione se l'elenco non è stato svuotato.

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

Responsabile

Linux

Prenotare

25/09/2026

Divulgazione

02/11/2026

Moderazione

accettato

EPSS

0.00000

KEV

no

Attività

molto basso

Fonti

Interested in the pricing of exploits?

See the underground prices here!