Bug 'Copy Fail' nel kernel Linux concede l'accesso root dal 2017
Una vulnerabilità silente nel kernel Linux emerge dopo nove anni
I ricercatori di sicurezza hanno divulgato una vulnerabilità critica di escalation dei privilegi locali (LPE) che è rimasta dormiente nel kernel Linux per quasi nove anni. Chiamata "Copy Fail" e identificata come CVE-2026-31431 con un punteggio di gravità di 7.8, consente a un utente locale non privilegiato di ottenere l'accesso root su praticamente ogni distribuzione Linux mainstream distribuita dal 2017.
La vulnerabilità è nota per la sua semplicità e portabilità. A differenza di molti bug LPE di alto profilo come Dirty Cow o Dirty Pipe, non richiede una condizione di gara per avere successo, né offset specifici per la versione del kernel, né un payload compilato. Come ha dichiarato il team di ricerca Xint Code di Theori, "Lo stesso script funziona su ogni distribuzione e architettura testata".
Il meccanismo tecnico: un difetto logico in linea retta
Copy Fail origina da un difetto logico nel template crittografico `authencesn` all'interno del sottosistema crittografico del kernel Linux. Il bug è concatenato attraverso l'interfaccia socket `AF_ALG` e la chiamata di sistema `splice()`.
Questa catena produce una scrittura controllata di 4 byte nella cache delle pagine in memoria del kernel di qualsiasi file leggibile. L'attaccante sceglie il file bersaglio, l'offset e il valore. Scegliendo come bersaglio la copia in cache di un binario setuid-root come `/usr/bin/su`, un attaccante può corrompere la sua copia in memoria per ottenere i privilegi di root.
La modifica è furtiva. Essa bypassa interamente il percorso VFS; la pagina corrotta non viene mai contrassegnata come sporca e nulla viene scritto su disco. Al riavvio del sistema o all'evizione della pagina, la cache ricarica una copia pulita dallo storage.
L'exploit universale: uno script Python di piccole dimensioni
L'exploit di prova di concetto sottolinea il pericolo del bug. È uno script Python di 732 byte che utilizza solo moduli della libreria standard (`os`, `socket`, `zlib`). Non richiede dipendenze né compilazione.
La dimostrazione di Theori mostra lo stesso script e binario che ottengono shell di root su Ubuntu 24.04 LTS, Amazon Linux 2023, RHEL 10.1 e SUSE 16 in una sola esecuzione. I ricercatori hanno confermato che altre distribuzioni come Debian, Arch, Fedora, Rocky Linux e AlmaLinux sono ugualmente interessate.
Chi è interessato e perché è importante
L'impatto della vulnerabilità varia a seconda dell'ambiente ma è grave negli scenari multi-tenant. Qualsiasi sistema in cui un utente non attendibile può eseguire codice come utente normale è ad alto rischio.
- Host Linux multi-tenant: Box di sviluppo condivisi, host di salto e server di build dove qualsiasi utente può diventare root.
- Cluster Kubernetes e container: La cache delle pagine condivise significa che un pod compromesso può corrompere un binario host, consentendo la fuga da container cross-tenant.
- Esecutori CI e fattorie di build: Sistemi come i runner self-hosted di GitHub Actions che eseguono codice PR non attendibile.
- Piattaforme SaaS cloud: Servizi che eseguono codice fornito dal tenant, come host notebook o funzioni serverless.
Per i server standard single-tenant o workstation single-user, il rischio immediato è più basso ma è comunque presente come potente strumento di step-up post-sfruttamento.
Guida alla mitigazione e alla patch
La mitigazione principale è quella di applicare la patch immediatamente. La correzione, commit principale `a664bf3d603d`, ripristina un'ottimizzazione in-place del 2017 in `algif_aead`. Ciò garantisce che le pagine della cache delle pagine rimangano in una lista di dispersione di origine di sola lettura.
Le principali distribuzioni, tra cui Debian, Ubuntu e SUSE, hanno iniziato a distribuire patch. Red Hat inizialmente aveva pianificato di rinviare la correzione ma in seguito si è allineato con altri fornitori per applicare la patch prontamente. Se l'applicazione della patch non è immediatamente possibile, gli amministratori possono disabilitare il modulo vulnerabile.
# echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf
# rmmod algif_aead 2>/dev/null || true
Questa azione è improbabile che interrompa la funzionalità comune, poiché `AF_ALG` non viene utilizzato per impostazione predefinita per servizi core come dm-crypt/LUKS, IPsec o SSH. Per gli ambienti containerizzati, è inoltre consigliabile bloccare la creazione di socket `AF_ALG` tramite seccomp.
Confronto con i bug storici di LPE in Linux
Copy Fail appartiene alla stessa famiglia di Dirty Pipe e Dirty Cow: corruzione della cache delle pagine che porta all'escalation dei privilegi senza modifica del disco. Tuttavia, si distingue in modi chiave.
- vs. Dirty Cow: Nessuna condizione di gara. Copy Fail è un difetto di codice deterministico in linea retta.
- vs. Dirty Pipe: Molto più portabile. Dirty Pipe richiedeva kernel ≥ 5.8 con patch specifiche; Copy Fail interessa l'intera finestra 2017-2026.
La scoperta del bug è stata assistita dall'AI. Il ricercatore Taeyang Lee di Xint ha fornito la prima intuizione e lo scanner di sicurezza AI Xint Code ha controllato l'intero sottosistema `crypto/`, individuando Copy Fail come la scoperta di massima gravità entro un'ora.
Timeline di divulgazione e ricerca in corso
La vulnerabilità è stata segnalata al team di sicurezza del kernel Linux il 23 marzo 2026. Una patch è stata committata al ramo principale il 1° aprile e CVE-2026-31431 è stato assegnato il 22 aprile. La divulgazione pubblica è seguita il 29 aprile.
Theori ha indicato che una seconda parte della divulgazione, che descrive un primitive di escape del container Kubernetes costruito sullo stesso difetto, è imminente. La descrizione tecnica completa, comprese l'analisi della causa radice e i diagrammi della lista di dispersione, è disponibile sul blog di Xint.
Per i difensori, il messaggio è chiaro: questo è un difetto diffuso, affidabile e facilmente sfruttabile che mina fondamentalmente il confine di sicurezza tra utenti non privilegiati e l'account root sui sistemi Linux interessati. L'applicazione prioritaria della patch è essenziale.
Related News

La politica anti-AI di Zig: una scommessa strategica sui contributori umani

Localsend: L'alternativa open-source ad AirDrop per la condivisione di file multipiattaforma

Presentazione di Talkie: un modello AI vintage da 13 miliardi di parametri addestrato su testi precedenti al 1931

Microsoft e OpenAI smantellano l'accordo esclusivo sull'AI

AI's Hidden Risk: Outsourcing Thinking Erodes Engineering Value

