Sono emersi dettagli su una nuova falla di sicurezza identificata nel kernel di Linux che potrebbe consentire a un utente di ottenere privilegi elevati su un host di destinazione; chiamata StackRot (CVE-2023-3269, punteggio CVSS: 7.8), la falla interessa le versioni di Linux dalla 6.1 alla 6.4.
Fortuna vuole che non ci siano prove, allo stato attuale, che questa vulnerabilità sia stata di fatto sfruttata.
Cosa dicono gli esperti di StackRot?
“Poiché StackRot è una vulnerabilità del kernel di Linux trovata nel sottosistema di gestione della memoria, colpisce quasi tutte le configurazioni del kernel e richiede capacità [informatiche] minime per essere attivata“, ha detto il ricercatore di sicurezza Ruihan Li dell’Università di Pechino.
“Tuttavia, va notato che i nodi Maple Tree vengono liberati utilizzando i callback RCU, ritardando la deallocazione effettiva della memoria fino al termine del periodo di grazia RCU. Di conseguenza, sfruttare questa vulnerabilità è considerato una sfida“.
Dopo una divulgazione datata 15 giugno 2023, è stata risolta nelle versioni stabili 6.1.37, 6.3.11 e 6.4.1 a partire dal 1 luglio 2023, dopo uno sforzo durato due settimane guidato da Linus Torvalds, sì, dal creatore stesso del Kernel di Linux.
Si prevede che entro la fine del mese sarà reso pubblico un proof-of-concpet (PoC) e ulteriori dettagli tecnici sulla falla.
La vulnerabilità è essenzialmente radicata in una struttura dati chiamata Maple Tree, introdotta nel kernel di Linux 6.1 come sostituzione del red-black tree (rbtree) per gestire e memorizzare le aree di memoria virtuale (VMAs), un intervallo continuo di indirizzi virtuali che potrebbero contenere il contenuto di un file su disco o la memoria che un programma utilizza durante l’esecuzione.
In particolare, viene descritta come un bug di utilizzo dopo la liberazione che potrebbe essere sfruttato da un utente locale per compromettere il kernel e aumentare i propri privilegi sfruttando il fatto che Maple Tree “può subire la sostituzione di un nodo senza acquisire correttamente il blocco di scrittura MM”.
“In ogni caso, penso che voglia effettivamente spostare tutto il codice di espansione dello stack in un nuovo file a sé stante, piuttosto che averlo diviso tra mm/mmap.c e mm/memory.c, ma poiché questo dovrà essere retroportato all’introduzione iniziale di VMA del Maple Tree comunque, ho cercato di mantenere i patch abbastanza minimali“, ha detto Torvalds.
Uso Linux devo temere il bug StackRot?
Assolutamente, no.
Tanto per cominciare non è nulla che il classico “sudo apt update” e “sudo apt upgrade” con eventuale “sudo apt autoremove” non possa risolvere; di norma le varie distribuzioni vanno “in cerca” del Kernel per poi aggiornarsi “da sole”.
Basta tenere il sistema operativo (che sia ZorinOS, Ubuntu o Mx Linux poco cambia) aggiornato.