Race condition letale per Linux: il trucco che trasforma un segnale POSIX in un’arma
Un ricercatore indipendente di nome Alexander Popov ha presentato una nuova tecnica per sfruttare una vulnerabilità critica nel kernel Linux, a cui è stato assegnato l’identificatore CVE-2024-50264. Questo errore di tipo “use-after-free” nel sottosistema AF_VSOCK è presente dalla versione 4.8 del kernel e consente a un utente locale senza privilegi di avviare uno errore quando si lavora con un oggetto virtio_vsock_sock durante la creazione della connessione.
La complessità e l’entità delle conseguenze hanno fatto sì che il bug si aggiudicasse i Pwnie Awards 2025 nella categoria “Best Privilege Escalation”.
In precedenza, si riteneva che lo sfruttamento del problema fosse estremamente difficile a causa dei meccanismi di difesa del kernel, come la distribuzione casuale delle cache e le peculiarità dei bucket SLAB, che interferiscono con metodi semplici come l’heap spraying.
Tuttavia, Popov è riuscito a sviluppare una serie di tecniche che eliminano queste restrizioni. Il lavoro è stato svolto nell’ambito della piattaforma aperta kernel-hack-drill, progettata per testare gli exploit del kernel.
Il passaggio chiave è stato l’utilizzo di un tipo speciale di segnale POSIX che non termina il processo. Interrompe la chiamata di sistema connect(), consentendo una riproduzione affidabile delle race condition e di non perdere il controllo sull’attacco.
Successivamente, il ricercatore ha imparato a controllare il comportamento delle cache di memoria sostituendo le proprie strutture al posto degli oggetti rilasciati. La messa a punto delle temporizzazioni consente di far scivolare i dati preparati in precedenza esattamente dove si trovava in precedenza l’elemento vulnerabile.
youtube.com/embed/qC95zkYnwb0?…
L'articolo Race condition letale per Linux: il trucco che trasforma un segnale POSIX in un’arma proviene da il blog della sicurezza informatica.