Fragnesia — vulnerabilità nel kernel Linux che consente di ottenere i privilegi di root tramite la modifica della cache delle pagine

Nel kernel di Linux è stata individuata la quarta vulnerabilità nelle ultime due settimane (CVE-2026-46300) che consente a un utente non privilegiato di ottenere diritti di root riscrivendo i dati nella cache delle pagine. Alla vulnerabilità è stato assegnato il nome in codice Fragnesia o Copy Fail 3.0. La natura della vulnerabilità è simile a quelle precedentemente rivelate, Copy Fail e Dirty Frag. Come nel caso di Dirty Frag, la nuova vulnerabilità è presente nel sottosistema xfrm-ESP, ma è causata da un errore diverso e richiede una correzione separata. È disponibile un exploit funzionante.

La vulnerabilità si manifesta nei kernel di Linux rilasciati dopo il 5 maggio, a causa dell'attivazione accidentale corretta della vulnerabilità Dirty Frag. Per correggere la vulnerabilità Fragnesia per il kernel di Linux è stata proposta una patch. L'analisi di questa patch ha mostrato che non è sufficiente, dopo di che è stata preparata una seconda versione della patch.

La vulnerabilità è presente nel sottosistema xfrm nell'implementazione del meccanismo di incapsulamento del protocollo ESP (Encapsulating Security Payload) in TCP (ESP-in-TCP, RFC 8229), utilizzato per il tunnel del traffico IPsec sopra TCP. Per evitare un'eccessiva buffering, le operazioni che utilizzano l'algoritmo AES-GCM venivano eseguite in loco tramite l'esecuzione dell'operazione XOR sui dati nella cache delle pagine. A causa di un errore logico, si sono verificate condizioni che consentivano di riscrivere 1 byte nella cache delle pagine a un offset scelto. Ripetendo le operazioni, è possibile modificare byte per byte il contenuto di qualsiasi file nella cache delle pagine.

Tutte le operazioni di lettura dai file restituiscono innanzitutto il contenuto dalla cache delle pagine. In caso di modifica dei dati nella cache delle pagine, le operazioni di lettura da un file porteranno al ritorno di informazioni non realmente memorizzate nel supporto, ma di dati modificati. Sfruttare la vulnerabilità implica modificare la cache delle pagine per un file eseguibile con il flag suid root, precedentemente letto per entrare nella cache delle pagine. Nell'exploit proposto dai ricercatori, i primi 192 byte del file /usr/bin/su nella cache delle pagine vengono riscritti con codice per eseguire /usr/bin/sh. Il successivo avvio dell'utilità "su" porta a caricare in memoria non il file eseguibile originale dal supporto, ma una copia modificata dalla cache delle pagine.

Per sfruttare la vulnerabilità Fragnesia, nel sistema deve essere consentita la creazione di spazi dei nomi per gli identificatori degli utenti (user namespace). In Ubuntu, tale operazione è disabilitata di default, ma può essere abilitata tramite sysctl «kernel.apparmor_restrict_unprivileged_userns=0» o profili AppArmor. Negli altri distribuzioni, la disponibilità del «user namespace» per gli utenti non privilegiati dipende dal valore di sysctl «kernel.unprivileged_userns_clone» (se è 0, è vietato).

Le patch di aggiornamento per il kernel Linux e i pacchetti del kernel nelle distribuzioni non sono ancora state pubblicate. Lo stato della risoluzione delle vulnerabilità nelle distribuzioni può essere valutato in queste pagine: Debian, Ubuntu, SUSE/openSUSE, RHEL, Gentoo, Arch, Fedora. Come misura di emergenza, è possibile bloccare il caricamento dei moduli del kernel esp4 e esp6:

sh -c «printf ‘install esp4 /bin/false\ninstall esp6 /bin/false\n’ > /etc/modprobe.d/dirtyfrag.conf; rmmod esp4 esp6 2>/dev/null; true»

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