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

La traduzione VMA (Virtual Memory Area) eseguita nel kernel Linux 6.1, da una struttura dati «red-black tree» a una «maple tree», ha portato alla scoperta 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à, denominata StackRot, si manifesta a partire dal rilascio del kernel 6.1 ed è stata risolta negli aggiornamenti 6.4.1, 6.3.11 e 6.1.37.

La struttura «maple tree» è una variante dell'albero B, che supporta l'indicizzazione per intervalli di valori ed è progettata per un utilizzo efficace della cache dei moderni processori. Rispetto all'«red-black tree», l'uso della «maple tree» consente di ottenere prestazioni superiori. La vulnerabilità è causata da un errore nel gestore delle estensioni dello stack: nella struttura «maple tree», utilizzata per gestire le aree di memoria virtuale nel kernel, la sostituzione di un nodo nell'albero può avvenire senza impostare un blocco in scrittura, creando condizioni per l'accesso a un'area di memoria dopo il suo rilascio (use-after-free).

La complessità dell'exploitation della vulnerabilità era dovuta al fatto che i nodi nella struttura "maple tree" vengono rilasciati in modalità differita utilizzando chiamate di callback con blocchi RCU (Read-copy-update). Tuttavia, i ricercatori sono riusciti a superare le difficoltà e hanno preparato un exploit funzionante, che prevedono di pubblicare alla fine di luglio, per dare agli utenti il tempo di aggiornare i propri sistemi. L'exploitation è possibile in quasi tutte le configurazioni del kernel e richiede solo privilegi minimi.

Fonte: opennet.ru

Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster