I ricercatori del MIT Computer Science and Artificial Intelligence Laboratory (CSAIL) hanno sviluppato un nuovo metodo innovativo per proteggere i computer dagli attacchi hardware.
Nella memoria fisica di un computer, le istruzioni del programma sono memorizzate a indirizzi specifici. Nonostante gli sforzi per oscurare questi indirizzi con tecniche come l’Address Space Layout Randomisation (ASLR), gli hacker più astuti hanno trovato il modo di sfruttare le falle dell’hardware per scovarli.
Soprannominata “Oreo”, dal nome del famoso biscotto a tre strati, la soluzione dei ricercatori promette di rafforzare l’efficacia dell’ASLR e di proteggere dalla crescente minaccia di attacchi collaterali alla microarchitettura, facendo sparire tali tracce.
L’ASLR è una misura di sicurezza standard presente nei moderni sistemi operativi, tra cui Linux e Windows. Il suo ruolo è quello di confondere le istruzioni del programma, rendendo più difficile per gli aggressori prevedere la loro esatta posizione. Tuttavia, gli hacker hanno sviluppato tecniche astute per aggirare l’ASLR.
Invece di sfruttare direttamente le vulnerabilità del software, si affidano ad attacchi collaterali alla microarchitettura. Questi attacchi prendono di mira l’hardware per monitorare le aree di memoria a cui si accede più frequentemente, utilizzando queste informazioni per mettere insieme le posizioni di dati sensibili o frammenti di codice eseguibile, noti come “gadget di codice”.
Una volta identificati questi “gadget”, gli hacker possono sferrare i cosiddetti attacchi di riutilizzo del codice, consentendo il furto di password o l’esecuzione di modifiche amministrative non autorizzate. L’efficacia dell’ASLR, uno scudo un tempo affidabile, ha vacillato di fronte a queste incursioni sofisticate.
“L’ASLR è stato utilizzato in sistemi operativi come Windows e Linux, ma negli ultimi dieci anni i suoi difetti di sicurezza lo hanno reso quasi inutilizzabile”, spiega Mengjia Yan, professore associato al MIT e ricercatore principale del CSAIL.
“Il nostro obiettivo è far rivivere questo meccanismo nei sistemi moderni per difendere gli attacchi alle microarchitetture”.
Per migliorare l’ASLR, il team del CSAIL ha progettato il sistema Oreo. Come dice il nome, questo metodo introduce un processo a tre livelli per nascondere le informazioni vitali agli hacker.
Il cuore di Oreo è uno “spazio degli indirizzi mascherato” che aggiunge un livello intermedio tra lo spazio degli indirizzi virtuali (usato per fare riferimento alle istruzioni del programma) e lo spazio degli indirizzi fisici (dove le istruzioni sono effettivamente memorizzate). Questo strato intermedio essenzialmente “cancella” qualsiasi traccia delle posizioni randomizzate dei programmi prima che le istruzioni vengano eseguite dall’hardware.
Shixin Song, autore principale dell’articolo su Oreo e dottorando in ingegneria elettrica e informatica presso il CSAIL, paragona il processo al biscotto stesso.
“L’idea di strutturarlo in tre strati ci è venuta dai biscotti Oreo”, racconta. “Pensate al ripieno bianco al centro di quel dolcetto: la nostra versione è uno strato che essenzialmente cancella le tracce delle posizioni dei gadget prima che finiscano nelle mani sbagliate”.
Questa strategia aggiunge un ulteriore passaggio che rimappa le istruzioni del programma da indirizzi virtuali randomizzati a posizioni fisse, offuscando il layout originale della memoria. Anche se un hacker utilizza tecniche lato hardware per scoprire gli indirizzi fisici, Oreo garantisce che gli indirizzi virtuali criptati rimangano invisibili.
Il team del CSAIL ha testato Oreo simulando attacchi hardware su Linux utilizzando gem5, una piattaforma spesso impiegata per studiare l’architettura dei computer. I risultati hanno dimostrato che Oreo è in grado di schermare con successo gli attacchi laterali alla microarchitettura senza impattare sulle prestazioni del software che protegge.
“Il nostro metodo introduce modifiche marginali all’hardware, richiedendo solo alcune unità di memoria aggiuntive per memorizzare alcuni metadati”, osserva Song. “Fortunatamente, ha anche un impatto minimo sulle prestazioni del software”.
Questo piccolo ingombro rende Oreo un aggiornamento leggero ma robusto per i sistemi di memoria basati su tabelle di pagine, spesso presenti nelle piattaforme dotate di processori Intel, AMD e Arm.
Il team CSAIL ritiene che Oreo abbia un potenziale significativo al di là di Linux.
“Pensiamo che Oreo possa essere un’utile piattaforma di co-progettazione software-hardware per un tipo più ampio di applicazioni”, afferma Yan. “Oltre a puntare sull’ASLR, stiamo lavorando a nuovi metodi che possano aiutare a salvaguardare le librerie crittografiche critiche ampiamente utilizzate per proteggere le informazioni nelle comunicazioni di rete e nello storage cloud”.
Sebbene Oreo offra una spinta significativa all’ASLR, non si tratta di una pallottola d’argento. Il team riconosce che deve lavorare insieme ad altre difese, in particolare contro gli attacchi di esecuzione speculativa.
Gli attacchi di esecuzione speculativa sono stati resi celebri dalle vulnerabilità Meltdown e Spectre scoperte nel 2018. Tali attacchi sfruttano una funzione del processore progettata per prevedere le attività successive a vantaggio dell’efficienza, ma così facendo lasciano inavvertitamente esposti dati sensibili.
Per difendersi dagli attacchi di esecuzione speculativa, Oreo deve essere abbinato ad altri meccanismi di sicurezza (come le mitigazioni Spectre).
Questa limitazione si estende anche a sistemi più grandi e complessi. Tuttavia, per applicazioni mirate come la salvaguardia di strumenti di crittografia sensibili, il potenziale di Oreo potrebbe essere trasformativo.
Il team CSAIL presenterà i suoi risultati alla fine del mese al Network and Distributed System Security Symposium. Il loro lavoro è stato finanziato da Amazon, dall’US Air Force Office of Scientific Research e da ACE, un centro della Semiconductor Research Corporation sponsorizzato dalla DARPA.
In prospettiva, il team spera che il framework Oreo ispiri un ulteriore sviluppo di meccanismi di co-progettazione software-hardware per combattere le minacce informatiche emergenti. Per ora, questa innovazione a tre livelli è una dolce aggiunta al kit di strumenti per la sicurezza informatica.















