Nell'implementazione dell'interfaccia di input/output asincrono io_uring, presente nel kernel Linux dalla versione 5.1, è stata scovata una vulnerabilità (CVE-2022-2602), che consente a un utente non privilegiato di ottenere i diritti di root nel sistema. La problematica è stata confermata nella branch 5.4 e nei kernel a partire dalla branch 5.15.
La vulnerabilità è causata da un accesso a un blocco di memoria già liberato (use-after-free) nel sottosistema io_uring, che si verifica a causa di una condizione di corsa durante l'elaborazione di una richiesta io_uring su un file di destinazione durante l'esecuzione della garbage collection per i socket Unix, se il garbage collector libera tutti i descrittori di file registrati e il descrittore di file su cui opera io_uring. Per creare artificialmente le condizioni per attivare la vulnerabilità, è possibile ritardare la richiesta utilizzando userfaultfd fino al momento in cui si attiva il rilascio di memoria da parte del garbage collector.
I ricercatori che hanno individuato il problema hanno annunciato la creazione di un exploit funzionante, che intendono pubblicare il 25 ottobre, per dare agli utenti tempo per installare gli aggiornamenti. La correzione è al momento disponibile sotto forma di patch. Gli aggiornamenti per le distribuzioni non sono ancora stati rilasciati, ma è possibile tenere traccia della loro disponibilità sulle seguenti pagine: Debian, Ubuntu, Gentoo, RHEL, Fedora, SUSE/openSUSE, Arch.
Fonte: opennet.ru
