Fractal: il kernel del MIT che svela i segreti invisibili delle CPU moderne

Fractal, il nuovo kernel del MIT, analizza le CPU con precisione e scopre comportamenti inediti nei chip Apple M1.

Capire cosa accade dentro un processore moderno è una delle sfide più complesse della sicurezza hardware.

Dopo Spectre e Meltdown, l’attenzione dei ricercatori si è concentrata su predizione dei salti, cache e speculative execution. Il problema è che i sistemi operativi tradizionali, da Linux a macOS, introducono interferenze che alterano le misurazioni. Per risolverlo, il MIT CSAIL ha sviluppato Fractal, un kernel progettato esclusivamente per l’analisi microarchitetturale dei processori, presentato  in occasione dell’IEEE Symposium on Security and Privacy.

Perché i sistemi operativi tradizionali disturbano i test

I sistemi operativi generalisti sono progettati per massimizzare usabilità e prestazioni, non per la ricerca. Durante un esperimento attivano scheduler, interrupt, gestione della memoria e migrazione dei thread tra core diversi.

Ogni attività introduce rumore sperimentale e rende difficile distinguere il comportamento reale dell’hardware da quello generato dal software. Per aggirare il problema, i ricercatori modificavano kernel esistenti con patch specifiche: un processo laborioso, difficile da replicare e ancora più complesso sui sistemi proprietari.

Fractal nasce da un approccio opposto. Il team del MIT ha sviluppato un kernel da zero il cui unico scopo è studiare il funzionamento interno dei processori. Il sistema si avvia direttamente sull’hardware senza software aggiuntivo in esecuzione, riducendo drasticamente le interferenze. Un elemento chiave è il concetto di outer kernel thread: una struttura che risiede nello spazio di memoria di un processo utente ma opera con privilegi kernel. Questa tecnica, definita dagli autori multi-privilege concurrency, consente di isolare la variabile da osservare e ottenere misurazioni molto più pulite rispetto a Linux o macOS.

Cosa ha rivelato l’analisi del chip Apple M1

La prima applicazione pratica di Fractal ha preso di mira Apple M1.

I ricercatori hanno analizzato i meccanismi di predizione dei salti, centrali nelle prestazioni ma spesso coinvolti negli attacchi side-channel. Lo studio ha confermato l’efficacia di CSV2, la protezione ARM contro l’influenza della speculative execution tra livelli di privilegio diversi. Ha però evidenziato un comportamento inatteso: prima che la protezione entri completamente in funzione, il processore carica potenziali target nella cache delle istruzioni, un’attività osservabile attraverso canali laterali.

Fractal ha inoltre fornito la prima evidenza della cosiddetta Phantom Speculation su Apple Silicon, un fenomeno già documentato su Intel e AMD. In questo scenario, istruzioni ordinarie vengono interpretate erroneamente dalla CPU come salti condizionali, avviando operazioni speculative non richieste dal programma. I test hanno mostrato che queste operazioni attraversano sia i confini di privilegio sia quelli degli spazi di indirizzamento, pur restando bloccate nella fase esecutiva dalle protezioni del chip. I risultati sono stati comunicati al team di sicurezza di Apple.

Una piattaforma aperta per la ricerca hardware

Gli autori hanno progettato Fractal come infrastruttura condivisa, non come progetto accademico isolato. Il kernel supporta le architetture x86_64, ARM64 e RISC-V e supera le 31.000 linee di codice.

Include chiamate di sistema compatibili con POSIX, una libreria C e porting di strumenti come GCC, Vim e Dash, riducendo il lavoro necessario per adattare esperimenti esistenti. L’obiettivo è offrire alla comunità uno strumento standardizzato per esaminare il comportamento interno dei processori e individuare le vulnerabilità prima che diventino minacce concrete.

Ti consigliamo anche

Link copiato negli appunti