Vulnerabilità nell'implementazione dei socket AF_PACKET del kernel Linux

Tre anni dopo l'ondata di vulnerabilità (1, 2, 3, 4, 5) nel sottosistema AF_PACKET del kernel Linux identificata un altro problema (CVE-2020-14386), che consente a un utente locale non privilegiato di eseguire codice con i privilegi di root o di uscire da contenitori isolati, se hanno accesso root.

Per creare un socket AF_PACKET e sfruttare la vulnerabilità è necessaria l'abilitazione del privilegio CAP_NET_RAW. Tuttavia, tale privilegio può essere ottenuto da un utente non privilegiato nei contenitori creati in sistemi con il supporto abilitato per gli spazi dei nomi degli identificatori utente (user namespaces). Ad esempio, gli spazi dei nomi degli identificatori utente sono abilitati di default in Ubuntu e Fedora, ma non attivati in Debian e RHEL. In Android, l'accesso per creare socket AF_PACKET è concesso al processo mediaserver, attraverso cui può essere sfruttata la vulnerabilità.

La vulnerabilità è presente nella funzione tpacket_rcv ed è causata da un errore nel calcolo della variabile netoff. Un attaccante può creare condizioni tali da far scrivere a netoff un valore inferiore a maclen, il che provoca un overflow nel calcolo di "macoff = netoff - maclen" e un'errata successiva impostazione del puntatore al buffer per i dati in arrivo. Di conseguenza, l'attaccante può avviare una scrittura da 1 a 10 byte nell'area al di fuori del buffer assegnato. Si segnala che è in fase di sviluppo un exploit che consente di ottenere i diritti di root nel sistema.

Il problema è presente nel kernel da luglio 2008, cioè si manifesta in tutti i kernel attuali. Una correzione è attualmente disponibile sotto forma di patch. È possibile monitorare l'apparizione di aggiornamenti dei pacchetti sulle distribuzioni sulle seguenti pagine: Ubuntu, Fedora, SUSE, Debian, RHEL, Arch.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster