Una falla nel kernel Linux che era rimasta nascosta per quasi dieci anni è finita sotto i riflettori delle principali agenzie di sicurezza informatica. La vulnerabilità nota come Copy Fail, identificata con il codice CVE-2026-31431, è stata inserita da CISA (la Cybersecurity and Infrastructure Security Agency statunitense) nel suo catalogo KEV, quello che raccoglie le vulnerabilità già sfruttate attivamente dai criminali informatici. E questo dettaglio, da solo, basta a capire quanto la situazione sia seria.
Ma partiamo dall’inizio. Copy Fail appartiene alla categoria delle local privilege escalation, ovvero quelle falle che permettono a chi ha già un accesso limitato a un sistema di ottenere privilegi molto più elevati. Il problema nasce da un errore logico nel modulo crittografico algifaead del kernel, introdotto con una modifica risalente al 2017. Quella modifica aggiungeva il supporto alle operazioni cosiddette “in-place”: in pratica, la possibilità di cifrare dati direttamente nella stessa area di memoria dove si trovano, senza doverli copiare altrove.
Il guaio è che durante queste operazioni il kernel utilizza una piccola area di memoria temporanea e, a causa di un controllo mancante, finisce per scrivere alcuni byte nella zona sbagliata. Più precisamente, nella page cache, cioè la memoria che contiene le copie dei file usati dal sistema. Un attaccante può sfruttare questo comportamento per modificare in memoria il contenuto di un file eseguibile dotato di privilegi elevati. Il file su disco resta intatto, quindi nessun controllo di integrità segnala anomalie. Però quando il sistema va a eseguirlo, usa la versione alterata presente in RAM. Risultato: accesso root garantito.
Cloud e container: dove Copy Fail diventa davvero pericolosa
Il motivo per cui CISA ha alzato immediatamente il livello di allerta riguarda soprattutto gli ambienti cloud e container. Un processo compromesso all’interno di un container può sfruttare Copy Fail per uscire dall’isolamento. E non servono nemmeno tecniche particolarmente sofisticate: il livello di complessità dell’attacco è basso. Parliamo di configurazioni basate su Docker, LXC e Kubernetes: se il modulo algifaead è attivo sul kernel host, diventa possibile eseguire codice arbitrario al di fuori del container.
Per dare un’idea della semplicità dello sfruttamento, bastano circa 732 byte di codice Python per ottenere un’escalation a root. Esistono già varianti dello stesso exploit scritte in Go e Rust, con sequenze di chiamate di sistema differenti, e questo rende più complicata qualsiasi difesa basata su pattern statici.
Come verificare se un sistema Linux è esposto e quali contromisure adottare
Controllare se un sistema è vulnerabile a CVE-2026-31431 non richiede strumenti particolari, ma va fatto con un minimo di attenzione. Il primo passo è verificare la versione del kernel: le release precedenti a 6.18.22, 6.19.12 e 7.0 risultano vulnerabili. Se il kernel è stato rilasciato nel periodo compreso tra il 2017 e il 2026 senza patch correttive, il rischio è concreto.
Il secondo controllo riguarda la presenza del modulo algifaead: se è caricato, il sistema espone la superficie d’attacco. Negli ambienti containerizzati serve anche verificare se i container possono accedere ad AFALG, cosa che in molti casi avviene di default, propagando automaticamente il rischio.
L’aggiornamento del kernel resta la soluzione definitiva: il fix corregge la validazione dei buffer nelle operazioni crittografiche in-place. Se l’update non è immediatamente applicabile, disabilitare il modulo algifaead riduce drasticamente l’esposizione. Va però tenuto conto che questa misura può avere impatti sulle applicazioni che utilizzano AFALG per operazioni crittografiche, quindi serve una valutazione tecnica prima di procedere.
Il fatto che un’agenzia federale come CISA abbia inserito Copy Fail tra le vulnerabilità più pericolose conferma che si tratta di un difetto sfruttabile con estrema facilità. Di per sé non può essere utilizzata per attacchi da remoto, ma può diventare parte di una catena offensiva più elaborata, oppure essere impiegata per sfuggire all’isolamento dei container in ambienti Docker, LXC e Kubernetes. Per chi gestisce sistemi Linux, la priorità resta aggiornare rapidamente, limitare gli accessi locali e monitorare comportamenti anomali.