Vulnerabilità StackRot nel kernel Linux, che consente di elevare i propri privilegi

La traduzione VMA (Virtual Memory Area) nel kernel Linux 6.1 dalla struttura dati "red-black tree" a "maple tree" ha portato alla creazione di una vulnerabilità (CVE-2023-3269) che consente a un utente non privilegiato di eseguire il proprio codice con i diritti del kernel. La vulnerabilità, soprannominata StackRot, si manifesta a partire dal rilascio del kernel 6.1 ed è stata corretta negli aggiornamenti 6.4.1, 6.3.11 e 6.1.37.

La struttura "maple tree" rappresenta una variante dell'albero B, supporta l'indicizzazione per intervalli di valori ed è progettata per un utilizzo efficiente della cache dei moderni processori. Rispetto all'"red-black tree", l'uso del "maple tree" consente di ottenere prestazioni superiori. La vulnerabilità è causata da un errore nel gestore di estensione dello stack: nella struttura "maple tree", utilizzata per gestire le aree di memoria virtuale nel kernel, la sostituzione di un nodo nell'albero poteva avvenire senza l'impostazione di un blocco in scrittura, creando così le condizioni per un accesso a un'area di memoria dopo la sua liberazione (use-after-free).

Sfruttare la vulnerabilità era complicato dal fatto che i nodi nella struttura "maple tree" vengono liberati in modo ritardato utilizzando callback con blocchi RCU (Read-copy-update). Tuttavia, i ricercatori sono riusciti a superare le difficoltà e a preparare un exploit funzionante, che prevedono di pubblicare entro la fine di luglio, per dare agli utenti il tempo di aggiornare i propri sistemi. Lo sfruttamento è possibile in quasi tutte le configurazioni del kernel e richiede solo privilegi minimi.

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