In Netfilter, il sottosistema del kernel Linux utilizzato per filtrare e modificare i pacchetti di rete, è stata identificata una vulnerabilità (CVE non assegnato) che consente a un utente locale di eseguire codice a livello di kernel e aumentare i propri privilegi nel sistema. I ricercatori hanno dimostrato un exploit che ha permesso a un utente locale di ottenere i diritti di root su Ubuntu 22.04 con kernel 5.15.0-39-generic. Inizialmente si prevedeva di pubblicare informazioni sulla vulnerabilità il 15 agosto, ma a causa della condivisione di una lettera contenente un prototipo dell'exploit in una mailing list pubblica, l'embargo sulla divulgazione è stato annullato.
Il problema si manifesta a partire dal rilascio del kernel 5.8 ed è causato da un overflow del buffer nel codice per la gestione delle liste set nel modulo nf_tables, derivante dalla mancanza di adeguati controlli nella funzione nft_set_elem_init. L'errore è stato introdotto in una modifica che ha ampliato a 128 byte l'area di memorizzazione per gli elementi della lista.
Per eseguire l'attacco è necessario avere accesso a nftables, che può essere ottenuto in uno spazio dei nomi di rete (network namespace) separato in presenza dei diritti CLONE_NEWUSER, CLONE_NEWNS o CLONE_NEWNET (ad esempio, in caso di possibilità di avviare un contenitore isolato). Attualmente non è disponibile alcuna correzione. Per bloccare l'esploit della vulnerabilità nei sistemi comuni, è necessario disabilitare la possibilità di creare spazi dei nomi da parte degli utenti non privilegiati ("sudo sysctl -w kernel.unprivileged_userns_clone=0").
Fonte: opennet.ru
