Nell'implementazione dell'interfaccia di input/output asincrono io_uring, inclusa nel kernel Linux dalla versione 5.1, è stata individuata una vulnerabilità (CVE-2022-2602) che consente a un utente non privilegiato di ottenere diritti di root nel sistema. Il problema è stato confermato nel ramo 5.4 e nei kernel a partire dal ramo 5.15.
La vulnerabilità è causata dall'accesso a un blocco di memoria già liberato (use-after-free) nel sottosistema io_uring, che si verifica a causa di una condizione di competizione durante l'elaborazione di una richiesta io_uring su un file target durante l'esecuzione della raccolta di spazzatura per i socket Unix, se il raccoglitore di spazzatura libera tutti i descrittori di file registrati e il descrittore di file con cui lavora io_uring. Per creare artificialmente le condizioni per l'emergere della vulnerabilità, è possibile ritardare la richiesta utilizzando userfaultfd fino al momento in cui avviene la liberazione della memoria da parte del raccoglitore di spazzatura.
I ricercatori che hanno individuato il problema hanno annunciato la creazione di un exploit funzionante, che intendono pubblicare il 25 ottobre, per dare tempo agli utenti di installare aggiornamenti. Una correzione è attualmente disponibile in forma di patch. Gli aggiornamenti per le distribuzioni non sono ancora stati rilasciati, ma possono essere seguiti sulle pagine: Debian, Ubuntu, Gentoo, RHEL, Fedora, SUSE/openSUSE, Arch.
Fonte: opennet.ru
