I ricercatori del MIT hanno dimostrato che un componente dei moderni processori per computer che consente a diverse aree del chip di comunicare tra loro è suscettibile di un attacco side-channel. Credito:Jose-Luis Olivares, MIT
Un componente dei processori dei computer che collega diverse parti del chip può essere sfruttato da agenti dannosi che cercano di rubare informazioni segrete dai programmi in esecuzione sul computer, hanno scoperto i ricercatori del MIT.
I moderni processori per computer contengono molte unità di calcolo, chiamate core, che condividono le stesse risorse hardware. L'interconnessione su chip è il componente che consente a questi core di comunicare tra loro. Ma quando i programmi su più core vengono eseguiti contemporaneamente, c'è la possibilità che si ritardino a vicenda quando usano l'interconnessione per inviare dati attraverso il chip contemporaneamente.
Monitorando e misurando questi ritardi, un agente dannoso potrebbe condurre il cosiddetto "attacco side-channel" e ricostruire le informazioni segrete archiviate in un programma, come una chiave crittografica o una password.
I ricercatori del MIT hanno decodificato l'interconnessione su chip per studiare come sarebbe possibile questo tipo di attacco. Basandosi sulle loro scoperte, hanno costruito un modello analitico di come scorre il traffico tra i core su un processore, che hanno utilizzato per progettare e lanciare attacchi side-channel sorprendentemente efficaci. Quindi hanno sviluppato due strategie di mitigazione che consentono a un utente di migliorare la sicurezza senza apportare modifiche fisiche al chip del computer.
"Molte delle attuali difese del canale laterale sono ad hoc:qui vediamo un po' di perdita e la aggiustiamo. Ci auguriamo che il nostro approccio con questo modello analitico spinga difese più sistematiche e robuste che eliminino intere classi di attacchi allo stesso tempo ", afferma il co-autore principale Miles Dai, MEng '21.
Dai ha scritto l'articolo con il co-autore principale Riccardo Paccagnella, uno studente laureato presso l'Università dell'Illinois a Urbana-Champaign; Miguel Gomez-Garcia '22; John McCalpin, ricercatore presso il Texas Advanced Computing Center; e l'autore senior Mengjia Yan, Homer A. Burnell Assistente allo sviluppo professionale di ingegneria elettrica e informatica (EECS) e membro del Computer Science and Artificial Intelligence Laboratory (CSAIL). La ricerca viene presentata alla USENIX Security Conference.
Processori di rilevamento
Un processore moderno è come una griglia bidimensionale, con più core disposti in righe e colonne. Ogni core ha la propria cache in cui vengono archiviati i dati e c'è anche una cache più grande condivisa dall'intero processore. Quando un programma che si trova su un core deve accedere ai dati in una cache che si trova su un altro core o nella cache condivisa, deve utilizzare l'interconnessione su chip per inviare questa richiesta e recuperare i dati.
Sebbene sia un componente importante del processore, l'interconnessione su chip rimane poco studiata perché è difficile da attaccare, spiega Dai. Un hacker deve lanciare l'attacco quando il traffico proveniente da due core sta effettivamente interferendo tra loro, ma poiché il traffico trascorre così poco tempo nell'interconnessione, è difficile sincronizzare l'attacco nel modo giusto. Anche l'interconnessione è complessa e ci sono più percorsi che il traffico può intraprendere tra i core.
Per studiare come scorre il traffico sull'interconnessione, i ricercatori del MIT hanno creato programmi che accederebbero intenzionalmente alle cache di memoria situate al di fuori dei loro core locali.
"Testando diverse situazioni, provando posizionamenti diversi e scambiando le posizioni di questi programmi sul processore, possiamo capire quali sono le regole dietro i flussi di traffico sull'interconnessione", afferma Dai.
Hanno scoperto che l'interconnessione è come un'autostrada, con più corsie che vanno in ogni direzione. Quando due flussi di traffico entrano in collisione, l'interconnessione utilizza una politica di arbitrato prioritario per decidere quale flusso di traffico deve iniziare per primo. Le richieste più "importanti" hanno la precedenza, come quelle provenienti da programmi critici per le operazioni di un computer.
Utilizzando queste informazioni, i ricercatori hanno costruito un modello analitico del processore che riassume come il traffico può fluire sull'interconnessione. Il modello mostra quali core sarebbero più vulnerabili a un attacco side-channel. Un nucleo sarebbe più vulnerabile se fosse accessibile attraverso molte corsie diverse. Un utente malintenzionato potrebbe utilizzare queste informazioni per selezionare il miglior core da monitorare per rubare informazioni da un programma vittima.
"Se l'attaccante capisce come funziona l'interconnessione, può impostare se stesso in modo che l'esecuzione di un codice sensibile sia osservabile attraverso la contesa di interconnessione. Quindi può estrarre, a poco a poco, alcune informazioni segrete, come una chiave crittografica", spiega Paccagnella .
Attacchi efficaci
Quando i ricercatori hanno utilizzato questo modello per lanciare attacchi side-channel, sono rimasti sorpresi dalla rapidità con cui hanno funzionato gli attacchi. Sono stati in grado di recuperare le chiavi crittografiche complete da due diversi programmi vittima.
Dopo aver studiato questi attacchi, hanno utilizzato il loro modello analitico per progettare due meccanismi di mitigazione.
Nella prima strategia, l'amministratore di sistema utilizzerà il modello per identificare quali core sono più vulnerabili agli attacchi e quindi pianificherà il software sensibile per l'esecuzione su core meno vulnerabili. Per la seconda strategia di mitigazione, l'amministratore potrebbe riservare i core situati attorno a un programma suscettibile ed eseguire solo software affidabile su quei core.
I ricercatori hanno scoperto che entrambe le strategie di mitigazione sono state in grado di ridurre significativamente l'accuratezza degli attacchi del canale laterale. Nessuno dei due richiede all'utente di apportare modifiche all'hardware fisico, quindi le mitigazioni sarebbero relativamente facili da implementare, afferma Dai.
In definitiva, sperano che il loro lavoro ispiri più ricercatori a studiare la sicurezza delle interconnessioni su chip, afferma Paccagnella.
"Ci auguriamo che questo lavoro evidenzi come l'interconnessione su chip, che è un componente così grande dei processori dei computer, rimanga una superficie di attacco trascurata. In futuro, poiché costruiamo sistemi con proprietà di isolamento più forti, non dovremmo ignorare l'interconnessione, " Aggiunge. + Esplora ulteriormente
Questa storia è stata ripubblicata per gentile concessione di MIT News (web.mit.edu/newsoffice/), un popolare sito che copre notizie sulla ricerca, l'innovazione e l'insegnamento del MIT.