Mohammad R. Fadiheh (da sinistra a destra), Il professor Wolfgang Kunz e Dominik Stoffel hanno sviluppato il nuovo algoritmo in collaborazione con gli scienziati di Stanford. Attestazione:Koziel/TUK
All'inizio del 2018, I ricercatori di sicurezza informatica hanno scoperto due falle di sicurezza che, secondo loro, erano presenti in quasi tutti i processori di fascia alta realizzati e utilizzati dalle principali aziende. Conosciuto minacciosamente come Spectre e Meltdown, questi difetti erano preoccupanti perché rappresentavano un nuovo tipo di violazione non precedentemente noto che poteva consentire agli hacker di dedurre dati segreti:password, numeri di previdenza sociale, cartelle cliniche, dal modo in cui i computer precalcolano determinati dati utilizzando funzionalità architetturali chiamate "esecuzione fuori ordine" e "esecuzione speculativa" per accelerare i loro processi.
Con quello, una corsa è iniziata nella comunità hardware quando i progettisti di chip si sono affrettati a trovare soluzioni a Spectre e Meltdown e a rivelare difetti non ancora scoperti prima che lo facessero gli hacker. Nell'anno successivo, sono emerse numerose varianti di questi attacchi, e altro è previsto.
In questi "attacchi di canali segreti, " nessun dato passa mai di mano tra il processore hackerato e gli aggressori che cercano di rubare dati. Le informazioni vengono dedotte nel modo in cui le risposte in un cruciverba possono essere indovinate senza conoscere la risposta effettiva all'indizio. Questi hack, perciò, sono quasi impossibili da individuare.
All'altezza di questa minaccia emergente, un team guidato da scienziati informatici presso TU Kaiserslautern, Germania, in collaborazione con ricercatori della Stanford University in California, ha adottato un nuovo approccio per esporre potenziali difetti nei nuovi progetti di chip. è un algoritmo, Controllo unico dell'esecuzione del programma, o UPEC, in breve.
"UPEC è una forma di verifica automatizzata della sicurezza che avviserà i progettisti di potenziali difetti nelle loro microarchitetture, molto prima che i chip vengano prodotti in serie, "dice il professor Wolfgang Kunz, Cattedra di Electronic Design Automation presso TU Kaiserslautern.
La cosa più importante è che hanno dimostrato che tali falle di sicurezza esistono in uno spettro di processori molto più ampio di quanto si pensasse in precedenza, interessando non solo i processori di fascia alta ma anche i processori semplici che sono onnipresenti in numerose applicazioni della vita quotidiana, come nell'Internet delle cose.
In sostanza, L'UPEC analizza gli effetti collaterali della microarchitettura delle decisioni di progettazione e rileva se possono essere sfruttati per creare canali nascosti. Ciò che è particolarmente importante è che l'UPEC è esaustivo. Tiene conto di tutti i possibili programmi che possono essere eseguiti sul processore. I ricercatori ritengono che l'UPEC possa esporre qualsiasi potenziale vulnerabilità del canale nascosto nei futuri progetti di chip, anche quelli che i designer non avevano previsto.
Nei test del mondo reale, il team di ricerca ha chiesto all'UPEC di analizzare diversi progetti di chip open source e ha identificato una serie di difetti precedentemente sconosciuti. Il team ha creato e analizzato diverse varianti di progettazione di questi processori e ha dimostrato che tali punti deboli derivano facilmente dai normali processi di progettazione e possono interessare praticamente qualsiasi processore, processori particolarmente semplici non solo la classe dei processori di fascia alta analizzati negli attacchi Spectre/Meltdown.
"Il punto chiave qui è che anche semplici passaggi di progettazione, come aggiungere o rimuovere un buffer, può introdurre inavvertitamente vulnerabilità del canale nascosto in quasi tutti i processori, "dice Mo Fadiheh, membro della squadra di Kaiserslautern.
Un importante attacco che l'UPEC ha rivelato è quello che il team ha soprannominato l'attacco "Orco" che potrebbe essere presente su chip che sono già utilizzati come spina dorsale in molte applicazioni critiche per la sicurezza nell'Internet-of-Things e in autonomi sistemi, come auto e aeroplani a guida autonoma.
"Teoricamente, un hacker potrebbe usare un attacco degli Orchi per assumere il controllo di un veicolo autonomo o per requisire computer in rete su Internet-of-Things, " dice il membro del team Subhasish Mitra, professore di ingegneria elettrica e informatica alla Stanford University.
Orc è il primo attacco imprevisto ad essere scoperto automaticamente dal solo software. La scoperta di Orc dimostra che gli attacchi di canale nascosto sono possibili nei processori semplici. I ricercatori non possono dirlo con certezza se le vulnerabilità degli Orchi siano già presenti nei chip perché non dispongono del codice sorgente proprietario per effettuare tali valutazioni.
"Suggeriamo che le aziende che producono questi processori più semplici utilizzino l'UPEC per essere certi che non contengano Orc e altre vulnerabilità, "Kunz consiglia.
L'UPEC non richiede che un progettista abbia una conoscenza esistente di potenziali attacchi e fornisce garanzie di sicurezza dimostrabili. In particolare, per la comunità dei progettisti di processori, L'UPEC non richiede modifiche drastiche ai processi di progettazione standard. Finora, UPEC funziona per processori di complessità fino a media. Sono in corso ulteriori ricerche sui processori di fascia alta. L'attuale implementazione di UPEC è stata realizzata ampliando un ambiente di verifica formale esistente fornito da Onespin Solutions.
"Orc dimostra che gravi difetti possono derivare da decisioni di progettazione apparentemente innocue che i progettisti di chip prendono ogni giorno, "dice il professor Mark D. Hill, un esperto di architettura informatica dell'Università del Wisconsin-Madison. "Con UPEC, i progettisti possono essere molto più sicuri che troveranno ed elimineranno tutti i potenziali difetti del canale nascosto nei loro progetti."