Capire cosa succede davvero dentro un processore moderno resta una delle sfide più ostiche della sicurezza hardware, e proprio qui entra in gioco Fractal, il kernel sviluppato dal MIT per andare a fondo nei meccanismi nascosti delle CPU. Dopo i casi clamorosi di Spectre e Meltdown, i ricercatori hanno puntato i riflettori su predizione dei salti, cache e speculative execution. Il guaio è che i sistemi operativi classici, da Linux a macOS, introducono interferenze capaci di falsare le misurazioni. Per questo il MIT CSAIL ha messo a punto Fractal, un kernel pensato solo ed esclusivamente per l’analisi microarchitetturale dei processori, presentato durante l’IEEE Symposium on Security and Privacy.
Perché i sistemi operativi tradizionali rovinano i test
I sistemi operativi generalisti nascono per garantire usabilità e prestazioni, mica per la ricerca pura. Quando parte un esperimento, ecco che si attivano scheduler, interrupt, gestione della memoria e migrazione dei thread da un core all’altro. Ogni operazione aggiunge rumore sperimentale e rende complicato capire dove finisce il comportamento reale dell’hardware e dove inizia quello prodotto dal software. Fino a oggi i ricercatori si arrangiavano modificando kernel esistenti con patch dedicate, un lavoro lungo, difficile da replicare e ancora più contorto sui sistemi proprietari.
Fractal ribalta completamente la prospettiva. Il team del MIT ha costruito un kernel da zero con un’unica missione, studiare il funzionamento interno dei chip. Il sistema si avvia direttamente sull’hardware, senza altro software in esecuzione, e questo abbatte le interferenze in modo netto. Il pezzo forte è il cosiddetto outer kernel thread, una struttura che vive nello spazio di memoria di un processo utente ma lavora con privilegi kernel. Gli autori la chiamano multi-privilege concurrency e permette di isolare la variabile da osservare, ottenendo misurazioni molto più pulite rispetto a quelle che si potrebbero ricavare su Linux o macOS.
Cosa ha tirato fuori l’analisi del chip Apple M1
Il primo banco di prova reale di Fractal è stato Apple M1. I ricercatori hanno passato al setaccio i meccanismi di predizione dei salti, fondamentali per le prestazioni ma spesso al centro degli attacchi side-channel. L’analisi ha confermato che CSV2, la protezione ARM contro l’influenza della speculative execution tra livelli di privilegio diversi, funziona davvero. Però ha fatto emergere anche qualcosa di inaspettato, ovvero che prima che la protezione entri pienamente in funzione il processore carica potenziali target nella cache delle istruzioni, e questa attività risulta osservabile tramite canali laterali.
C’è di più. Fractal ha portato la prima prova concreta della cosiddetta Phantom Speculation su Apple Silicon, un fenomeno già visto su Intel e AMD. In pratica istruzioni del tutto normali vengono scambiate dalla CPU per salti condizionali, facendo partire operazioni speculative che il programma non ha mai chiesto. I test hanno mostrato che queste operazioni superano sia i confini di privilegio sia quelli degli spazi di indirizzamento, pur restando bloccate nella fase esecutiva grazie alle protezioni del chip. Tutti i risultati sono stati girati al team di sicurezza di Apple.
Una piattaforma aperta a disposizione della ricerca
Gli autori non hanno pensato a Fractal come a un progetto accademico chiuso, ma come a un’infrastruttura condivisa. Il kernel gira su 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 il porting di strumenti come GCC, Vim e Dash, riducendo parecchio la fatica necessaria per adattare esperimenti già esistenti. L’idea di fondo è mettere a disposizione della comunità uno strumento standardizzato per studiare il comportamento interno dei processori e scovare le vulnerabilità prima che si trasformino in minacce concrete.