Tutoriel Linux

ReflXFS: una vulnerabilità critica in XFS che offre accesso root su RHEL, CentOS e AlmaLinux.

Débutant4 min de lecture
À retenirLinux n'est pas réservé aux experts. Le bon point de départ : une distribution accessible, une sauvegarde propre et quelques commandes comprises.

È stata scoperta una grave vulnerabilità nel file system XFS del kernel Linux. Denominata RefluXFS, questa vulnerabilità consente a un utente locale senza privilegi di ottenere l’accesso come root. Distribuzioni come RHEL, CentOS e AlmaLinux sono particolarmente colpite, destando una seria preoccupazione per gli amministratori di sistema.

RefluXFS, identificato come CVE-2026-64600, si basa su una vulnerabilità risalente a nove anni fa. Questa falla sfrutta la funzionalità reflink del file system XFS per sovrascrivere silenziosamente file critici appartenenti all’utente root. L’assenza di tracce nei log rende questo attacco praticamente irrintracciabile.

Scoperta grazie alla ricerca congiunta di Qualys e Anthropic, ReflXFS mette in discussione molti meccanismi di difesa classici presenti nei sistemi Linux. Ecco un’analisi tecnica di questa vulnerabilità, che merita la nostra massima attenzione.

Come ReflXFS sfrutta il file system XFS per elevare i privilegi di root

ReflXFS sfrutta la funzionalità reflink introdotta in XFS, che consente di clonare file senza copiare i dati. Un utente standard può quindi duplicare un file protetto, come /etc/passwd, semplicemente accedendovi in ​​lettura. In questo modo viene creata una copia che condivide gli stessi blocchi del disco fisico del file originale.

Il problema si presenta durante una scrittura diretta (O_DIRECT) su questo clone. Il kernel rilascia brevemente un blocco, quindi esegue un controllo obsoleto sulla condivisione dei blocchi. Una scrittura simultanea può quindi riscrivere i dati sui blocchi originali senza che l’inode o i permessi vengano modificati.

Questa situazione è paragonabile a quella di un artigiano che ridipinge un muro che gli era stato proibito di toccare, di nascosto e senza lasciare tracce visibili. Il risultato: un file di root modificato illegalmente può eseguire codice con pieni privilegi, garantendo un accesso root furtivo.

Il pericolo insidioso: accesso root persistente e non rintracciabile

Ciò che rende ReflXFS particolarmente temibile è che la modifica viene scritta a livello di blocco sul disco. Questo significa che i metadati rimangono intatti. Il binario modificato conserva il suo bit SUID, consentendo l’escalation dei privilegi durante la sua esecuzione.

Inoltre, questa alterazione persiste anche dopo un riavvio, rendendo l’intrusione persistente. Nessun log del kernel registra questa attività, eludendo così i normali strumenti di rilevamento. È un po’ come favorire un ladro che carica il suo orologio dopo aver rotto una finestra.

I meccanismi di protezione noti come SELinux, KASLR, SMEP o SMAP non riescono a rilevare nulla perché la vulnerabilità manipola il livello più profondo dell’allocazione dei blocchi nel filesystem. Un malfunzionamento di questo meccanismo rende inefficaci le tradizionali difese di sicurezza.

Macchine interessate e condizioni per sfruttare la vulnerabilità RefluXFS su RHEL, CentOS e AlmaLinux

La vulnerabilità interessa tutti i kernel Linux a partire dalla versione 4.11, ovvero quasi tutte le versioni attualmente supportate. Il filesystem deve essere XFS e deve utilizzare reflink abilitato (reflink=1). Infine, un utente non privilegiato deve avere accesso in scrittura a una directory situata sulla stessa partizione dei file di root critici.

Queste condizioni si verificano in molte installazioni predefinite. Ad esempio, la directory /var/tmp è spesso scrivibile da tutti gli utenti e si trova sulla stessa partizione di /etc e /usr/bin. Ciò crea un terreno fertile per lo sfruttamento della vulnerabilità.

Le distribuzioni interessate includono RHEL 8, 9 e 10, CentOS Stream, AlmaLinux, Rocky Linux, Oracle Linux e Amazon Linux. Complessivamente, questi sistemi comprendono circa 16,4 milioni di macchine vulnerabili, secondo Qualys. Debian, Ubuntu e Fedora Workstation non sono interessate nella loro configurazione standard, poiché non utilizzano XFS per la directory root.

SELinux e altre protezioni: perché non sono sufficienti contro ReflXFS

È allettante rifugiarsi dietro SELinux in modalità enforcing, pensando di essere al sicuro. Sfortunatamente, questa convinzione è errata nel caso di RefluXFS. Le protezioni di SELinux, anche in modalità strict, non possono bloccare questa vulnerabilità.

Il blocco del kernel, i container isolati e persino KASLR, SMEP o SMAP non rilevano né impediscono lo sfruttamento della vulnerabilità. Questa agisce aggirando la gestione standard dei permessi a livello di filesystem, rendendo inefficaci tali difese.

Un ingegnere di Red Hat ha proposto una soluzione temporanea: uno script SystemTap che disabilita la funzione xfs_file_remap_range, la causa del problema. Si tratta di una soluzione di emergenza, ma compromette la funzionalità di reflink per le applicazioni che ne dipendono.

La buona notizia è che dal 16 luglio 2026 è disponibile una patch integrata nel kernel Linux. Questa patch risolve la condizione di gara alla base di reflink in XFS e neutralizza l’attacco. Le distribuzioni basate su RHEL hanno già rilasciato aggiornamenti mirati.

Per RHEL e i suoi derivati, le versioni corrette sono 4.18.0-553.144.1.el8_10 per il ramo 8.10, 5.14.0-687.26.1.el9_8 per il ramo 9.8 e 6.12.0-211.34.1.el10_2 per il ramo 10.2. Questi aggiornamenti devono essere applicati senza indugio.

Nel frattempo, disabilitare Reflink tramite uno script o modificare la configurazione del sistema sono misure di emergenza. La posta in gioco è chiara: prevenire è meglio che curare, soprattutto di fronte a una vulnerabilità così insidiosa che aggira le protezioni tradizionali.

sudo apt update && sudo apt upgrade