
Le exploit del kernel Linux diventano pubbliche: la patch per bloccare il root locale
Le exploit per quattro falle del kernel Linux, ognuna delle quali consente a un utente locale di ottenere i privilegi di root, sono ora pubbliche; le patch esistono, quindi il rischio è per i sistemi non aggiornati.
Il codice di exploit funzionante per quattro vulnerabilità del kernel Linux, ognuna delle quali consente a un utente locale di prendere il controllo completo di una macchina, è stato pubblicato dal ricercatore che le ha scoperte. Tutte e quattro sono bug di sicurezza della memoria nella parte del sistema che gestisce il traffico di rete, e ciascuna consente a qualcuno che ha già un piccolo livello di accesso, ad esempio un account con privilegi limitati su un server condiviso, di elevarsi a root, che è il livello di accesso più alto su una macchina Linux. Il kernel è il programma centrale di un computer Linux: si trova tra l'hardware e tutto il resto e decide chi è autorizzato a fare cosa. Il ricercatore, Asim Manizada, ha segnalato le falle al team di sicurezza del kernel Linux a metà luglio e ha pubblicato il suo resoconto tecnico insieme agli exploit funzionanti il 18 settembre, dopo un periodo di attesa coordinato con le distribuzioni Linux in modo che le correzioni potessero essere rilasciate prima. I manutentori del kernel hanno corretto tutte e quattro nelle ultime settimane, quindi un sistema che esegue un kernel aggiornato non è interessato. Finora non ci sono segnalazioni di utilizzo delle quattro vulnerabilità in attacchi reali.
Gli exploit sono opera di Manizada, sono ottimizzati per specifiche build del kernel e possono mandare in crash una macchina, quindi sono pensati per sistemi di test isolati piuttosto che per sistemi in produzione. Anche così, la pubblicazione del codice di exploit aumenta il rischio sui sistemi condivisi. L'escalation locale dei privilegi, il nome tecnico per passare da un account limitato al controllo completo, è più rilevante dove un attaccante ha già un certo accesso, come un account con privilegi limitati su un server multiutente, e vuole prendere il controllo dell'intera macchina. Qualsiasi macchina che esegue ancora un kernel più vecchio dovrebbe essere aggiornata.
Le quattro falle sono state chiamate DirtyAH6, TUNderflow, PPPoEject e DiagSpill. DirtyAH6 è tracciata come CVE-2026-80844 e risiede nel codice IPsec che gestisce l'Authentication Header di IPv6, dove IPsec è un insieme di regole per cifrare e verificare il traffico di rete e IPv6 è la versione attuale del sistema di indirizzamento di Internet. TUNderflow è CVE-2026-81000 e si trova nei dispositivi di rete virtuale TUN e TAP, che sono versioni software di una scheda di rete. PPPoEject è CVE-2026-68121 e si trova nel codice per PPP over Ethernet, un modo di trasportare una connessione Internet su un cavo di rete che molti fornitori di banda larga usano ancora. DiagSpill è CVE-2026-74469 e si trova nel codice di segnalazione per SCTP, un protocollo di rete usato per il traffico di segnalazione in stile telefonico. Tre delle quattro possono essere raggiunte da un utente normale solo quando i namespace utente non privilegiati sono abilitati. I namespace utente sono una funzionalità di Linux che consente a un utente normale di agire come root all'interno di una sandbox privata. Molte distribuzioni li abilitano per impostazione predefinita, ed è così che un attaccante ottiene i privilegi di rete richiesti dagli exploit. La quarta falla, DiagSpill, è l'eccezione: non richiede namespace utente né privilegi speciali, purché il sistema abbia disponibile il modulo di rete SCTP.
Manizada ha anche scoperto che due delle falle, DirtyAH6 e DiagSpill, possono essere attivate tramite la rete, ma solo in casi limitati e principalmente per causare il crash del sistema piuttosto che per assumerne il controllo. DirtyAH6 può mandare in crash un host che funge da router o gateway IPv6 e aggiunge un Authentication Header IPsec in modalità transport. DiagSpill può mandare in crash un host solo quando alcune opzioni SCTP, disattivate per impostazione predefinita, sono attivate. Manizada ha raggiunto il root remoto con DirtyAH6 solo nel suo laboratorio, e solo modellando prima la memoria sul target. Farlo da una posizione remota da solo, ha scritto, "sembra estremamente difficile", anche se non lo ha escluso. Per DiagSpill, ha detto di non vedere alcun percorso verso il root remoto, nemmeno con una perfetta modellazione della memoria. Ha anche detto che le falle potrebbero, in teoria, consentire a un attaccante di uscire da un container, il compartimento isolato usato per eseguire un'applicazione separatamente dal resto di un server, ma non ha creato un simile exploit.
La soluzione è aggiornare a un kernel che contenga tutte e quattro le correzioni. Le prime versioni stabili del kernel con il set completo sono 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.109, 6.18.50 e 7.2.4. Questi sono numeri di versione del progetto principale del kernel Linux. La maggior parte delle persone esegue un kernel fornito da una distribuzione, come Debian, Ubuntu, Red Hat o SUSE, che usa i propri numeri di versione e aggiunge queste correzioni secondo il proprio calendario, quindi i numeri sopra non sono quelli da cercare su quei sistemi. Controlla l'avviso di sicurezza della tua distribuzione per confermare che abbia rilasciato un aggiornamento che include tutte e quattro. Se l'applicazione della patch non è possibile subito, due passaggi riducono il rischio. Il primo è disattivare i namespace utente non privilegiati, che chiude il percorso dell'utente normale verso DirtyAH6, TUNderflow e PPPoEject, ma non ferma DiagSpill e non ferma un container o un processo che ha già privilegi di amministrazione di rete. Il secondo è disattivare le funzionalità interessate, AH6, TUN/TAP, PPPoE e SCTP, se non le usi. Manizada raccomanda di applicare la patch piuttosto che disattivare le funzionalità, perché potrebbero esistere altri percorsi verso le stesse falle.
Tutte e quattro sono bug di sicurezza della memoria in diverse parti del codice di rete del kernel. Ognuna consente a un attaccante di corrompere la memoria del kernel, che Manizada ha poi usato per ottenere una shell di root. Gli errori di fondo sono vecchi, da 10 a 21 anni nel codice. DirtyAH6 è nel codice IPsec che gestisce l'Authentication Header di IPv6: quel codice si fidava di un campo dell'header di routing senza verificarlo rispetto al numero di indirizzi presenti, quindi un pacchetto craftato causava uno spostamento di un puntatore interno ben oltre i limiti e una scrittura oltre il buffer. TUNderflow è nei dispositivi di rete virtuale TUN e TAP: un singolo valore veniva usato sia come spazio libero che come dimensione, e un valore troppo grande passato attraverso Open vSwitch causava un overflow nel calcolo della dimensione, così i dati del pacchetto finivano fuori dal loro buffer. PPPoEject è nel codice per PPP over Ethernet: manteneva un puntatore in un buffer di rete mentre chiamava una routine del dispositivo che poteva liberare e spostare quel buffer, e le scritture successive usavano memoria liberata, un bug noto come use-after-free. DiagSpill è nel codice di segnalazione per SCTP: un contatore che tiene traccia degli endpoint di connessione è largo solo 16 bit, quindi il 65.536° endpoint lo riportava a zero, e il codice di segnalazione non riservava spazio ma copiava l'intera lista, scrivendo circa 8 MiB di dati oltre la fine del suo buffer.
Manizada ha detto di aver trovato le quattro falle con un processo assistito dall'IA che costruisce una mappa di come il kernel gestisce la memoria e ragiona sulla sua disposizione. La correzione del kernel per DirtyAH6 lo registra: il commit include una riga "Assisted-by" che accredita il suo strumento IA personalizzato. La divulgazione è l'ultima di una serie di falle di escalation dei privilegi del kernel Linux rese pubbliche nel 2026, diverse delle quali trovate con l'aiuto di modelli linguistici di grandi dimensioni. Manizada ha divulgato una simile falla di Open vSwitch, OVSwrap, a luglio. Uno dei nuovi exploit riutilizza anche una tecnica di Dirty Frag, un'altra falla di root del kernel Linux divulgata a maggio da un altro ricercatore. Nel suo resoconto, Manizada ha detto che questo lotto probabilmente conclude la fase pubblica della sua caccia ai bug assistita dall'IA.
Per chiunque gestisca un sito web o un server aziendale, la domanda pratica è semplice: quale macchina esegue quale kernel, e quando è stato aggiornato l'ultima volta? I lettori che preferiscono non tenere traccia da soli degli avvisi del kernel potrebbero trovare utile che AEU Hosting (albhosting.eu) è un servizio di hosting WordPress gestito, progettato in modo che il lato server del servizio, non solo il sito web, sia responsabilità del provider di hosting mantenerlo. Se affitti il tuo server o il tuo piano di hosting da qualcun altro, chiedi al provider quando la patch per queste quattro falle è arrivata sulle tue macchine, e non accettare un numero di versione che proviene da un progetto diverso da quello che il tuo server esegue effettivamente.
Come Proteggerti
- Installa gli aggiornamenti offerti dal tuo computer, server o provider di hosting e, se usi una macchina Linux, attiva gli aggiornamenti di sicurezza automatici così non devi ricordartene.
- Scrivi alla tua azienda di hosting e fai una domanda chiara: la patch Linux per queste quattro falle (DirtyAH6, TUNderflow, PPPoEject e DiagSpill) è stata applicata ai server su cui gira il mio sito web, e quando?
- Se gestisci tu stesso un server Linux, apri la pagina di sicurezza pubblicata dalla tua versione di Linux (ad esempio Debian, Ubuntu, Red Hat o SUSE) e controlla che elenchi un aggiornamento per queste falle prima di presumere di essere al
- Non distribuire account di accesso extra sul tuo server o sito web a persone che non ne hanno strettamente bisogno, perché queste falle sono più pericolose per un attaccante che ha già un piccolo account lì.
- Riavvia il server dopo un aggiornamento di Linux, poiché una nuova versione del nucleo del sistema inizia a funzionare solo dopo il riavvio della macchina.
Vulnerabilità e Soluzioni
- CVE-2026-68121 PPPoEject, a use-after-free flaw in the kernel's PPP over Ethernet code that allows local privilege escalation when unprivileged user namespaces are enabled; fixed in current stable kernel releases. Vedi la soluzione e i dettagli →
- CVE-2026-74469 DiagSpill, a flaw in the kernel's SCTP reporting code that allows local privilege escalation with no special privileges and can crash a host with non-default SCTP options enabled; fixed in current stable kernel releases. Vedi la soluzione e i dettagli →
- CVE-2026-80844 DirtyAH6, a flaw in the kernel's IPsec code for the IPv6 Authentication Header that allows local privilege escalation and, in narrow router cases, a crash; fixed in current stable kernel releases. Vedi la soluzione e i dettagli →
- CVE-2026-81000 TUNderflow, a flaw in the TUN and TAP virtual network devices that allows local privilege escalation when unprivileged user namespaces are enabled; fixed in current stable kernel releases. Vedi la soluzione e i dettagli →
I Termini Spiegati
- Linux kernel Il programma centrale di un computer Linux, che si trova tra l'hardware e tutto il resto del software e decide chi è autorizzato a fare cosa.
- root Il livello di amministratore integrato su una macchina Linux, che può leggere, modificare o eliminare qualsiasi cosa su di essa.
- local privilege escalation Un modo per qualcuno che ha già un piccolo accesso a un computer di concedersi il controllo completo di amministratore su di esso.
- CVE Un numero di riferimento pubblico assegnato a una falla di sicurezza nota, in modo che tutti possano cercare lo stesso problema con un unico nome condiviso.
- user namespaces Una funzionalità di Linux che consente a un utente normale di comportarsi come l'amministratore all'interno di una piccola sandbox privata sulla stessa macchina.
- SCTP Un protocollo di rete usato per il traffico di segnalazione in stile telefonico, che può essere presente su un sistema Linux anche quando nessuno lo usa.
- use-after-free Un bug di programmazione in cui il software continua a usare una porzione di memoria dopo che è stata restituita, così qualcos'altro può essere scritto in quello spazio.
- container Un compartimento isolato leggero su un server usato per eseguire un'applicazione separatamente da tutto il resto sulla macchina.