Salta al contenuto principale


Scoperto un nuovo Side-Channel sui processori Intel che consente l’estrazione dei segreti dal Kernel


Gli esperti del Politecnico federale di Zurigo (ETH Zurigo) hanno scoperto un problema che minaccia tutti i moderni processori Intel. Il bug consente agli aggressori di estrarre dati sensibili dalla memoria allocata ai componenti di sistema privilegiati, come il kernel del sistema operativo.

Queste aree di memoria contengono in genere informazioni quali password, chiavi crittografiche, memoria di altri processi e strutture dati del kernel, pertanto è fondamentale garantire che siano protette da perdite dei dati. Secondo i ricercatori, le protezioni contro la vulnerabilità Spectre v2 durano da circa sei anni, ma un nuovo attacco chiamato Branch Predictor Race Conditions consente di aggirarle.

La vulnerabilità associata a questo fenomeno è stata definita dagli esperti “branch privilege injection” alla quale è stata assegnato il seguente CVE-2024-45332. Questo problema causa una condizione di competizione nel sottosistema predittore di diramazione utilizzato nei processori Intel.

I branch predictors (predittori di diramazione), come il Branch Target Buffer (BTB) e l’Indirect Branch Predictor (IBP), sono componenti hardware che tentano di prevedere l’esito di un’istruzione di diramazione prima del suo completamento, al fine di ottimizzare le prestazioni. Tali previsioni sono speculative, il che significa che vengono annullate se si rivelano errate. Tuttavia, se sono corrette, contribuiscono a migliorare le prestazioni.

I ricercatori hanno scoperto che gli aggiornamenti dei branch predictors nei processori Intel non sono sincronizzati con l’esecuzione delle istruzioni, il che consente loro di “infiltrarsi” oltre i limiti dei privilegi. Pertanto, se si verifica un cambio di privilegio (ad esempio dalla modalità utente alla modalità kernel), esiste una piccola finestra temporale durante la quale l’aggiornamento potrebbe essere associato al livello di privilegio sbagliato.

Di conseguenza, l’isolamento tra l’utente e il kernel viene interrotto e un utente non privilegiato può far trapelare dati dai processi privilegiati. I ricercatori hanno creato unexploit PoC che addestra il processore a prevedere un target di branch specifico, quindi effettua una chiamata di sistema per spostare l’esecuzione al kernel del sistema operativo, con conseguente esecuzione speculativa tramite un target controllato dall’aggressore (gadget). Il codice accede quindi ai dati segreti nella cache utilizzando metodi side-channel e le informazioni vengono trasmesse all’aggressore.

I ricercatori hanno dimostrato il loro attacco su Ubuntu 24.04 con meccanismi di protezione predefiniti abilitati per leggere il contenuto del file /etc/shadow/ contenente le password degli account con hash. L’exploit raggiunge una velocità massima di estrazione dati di 5,6 KB/s e dimostra una precisione del 99,8%. Sebbene l’attacco sia stato dimostrato su Linux, il problema è presente anche a livello hardware, quindi potrebbe teoricamente essere utilizzato anche contro i sistemi Windows.

Si segnala che la vulnerabilità CVE-2024-45332 colpisce tutti i processori Intel a partire dalla nona generazione (Coffee Lake, Comet Lake, Rocket Lake, Alder Lake e Raptor Lake). Sono stati esaminati anche i chip Arm Cortex-X1, Cortex-A76 e AMD Zen 5 e Zen 4, ma non sono risultati interessati al CVE-2024-45332.

I ricercatori hanno comunicato le loro scoperte agli ingegneri Intel nel settembre 2024 e l’azienda ha rilasciato aggiornamenti del microcodice che hanno risolto il problema CVE-2024-45332. Si dice che le patch del firmware riducano le prestazioni del 2,7%, mentre le patch del software riducono le prestazioni dell’1,6-8,3% a seconda del processore.

Il team dell’ETH di Zurigo ha affermato che presenterà il suo exploit in tutti i dettagli durante una conferenza alla conferenza USENIX Security 2025.

L'articolo Scoperto un nuovo Side-Channel sui processori Intel che consente l’estrazione dei segreti dal Kernel proviene da il blog della sicurezza informatica.