informazioni sulla vulnerabilità () nel kernel Linux, utilizzata nella competizione durante la dimostrazione dell'hacking di Ubuntu. La vulnerabilità ha permesso a un utente non privilegiato di ottenere diritti di root. Esiste un exploit funzionante, ma non è stato ancora pubblicato. La vulnerabilità si trova nel sottosistema eBPF, che consente di eseguire gestori per il tracciamento, l'analisi delle prestazioni dei sottosistemi e la gestione del traffico, eseguiti all'interno del kernel in una macchina virtuale speciale con JIT.
Il problema è causato da un errore nella funzione __reg_bound_offset32(), utilizzata per controllare le operazioni a 32 bit nel bytecode BPF. A causa di calcoli errati dei limiti del registro, durante l'elaborazione di applicazioni BPF appositamente formattate si sono verificate condizioni per la lettura e scrittura di dati al di fuori del buffer allocato nell'area di memoria del kernel. Il problema è apparso nel kernel 5.5 e successivamente, durante il backporting delle correzioni, è stato trasferito nel kernel 5.4, così come nel , offerto in Ubuntu Linux.
Per bloccare la vulnerabilità, è consigliato un patch problematico o vietare l'esecuzione di applicazioni BPF da parte di utenti non privilegiati impostando sysctl kernel.unprivileged_bpf_disabled a 1. Stato della correzione nelle distribuzioni: , , , e (nei kernel la modifica problematica non è stata trasferita).
Fonte: opennet.ru
