OpenBSD disabilita l'Hyper-Threading di Intel per sicurezza

Avatar di Manolo De Agostini

a cura di Manolo De Agostini

Il progetto OpenBSD (il sistema operativo libero, multipiattaforma su base Unix) ha annunciato l'intenzione di disabilitare il supporto all'Hyper-Threading delle CPU Intel a causa di preoccupazioni circa la sicurezza, in particolare riguardo un teorico pericolo dell'esistenza di bug "di classe Spectre".

L'Hyper-threading (HT) è l'implementazione proprietaria del Simultaneous Multithreading (SMT), tecnologia che permette ai processori di svolgere operazioni in parallelo su differenti core all'interno della stessa CPU multi-core. I processori possono gestire quindi due thread per core (da qui abbiamo ad esempio il Core i7-8700K con 6 core e 12 thread o il Ryzen 7 2700X con 8 core e 16 thread).

L'HT è stato aggiunto a tutte le CPU fin dal 2002 ed è attivato di default e usato come soluzione per aumentare ulteriormente le prestazioni in determinati scenari.

copertina

Secondo Mark Kettenis del progetto OpenBSD però, l'Hyper-Threading apre la porta a ulteriori "timing attack", ovvero una classe di attacchi crittografici tramite i quali una terza parte può dedurre il contenuto di un dato crittografato mediante la registrazione e l'analisi del tempo necessario per eseguire algoritmi crittografici.

Le vulnerabilità Meltdown e Spectre, insieme alle loro varianti, sono nella loro essenza tutti dei "timing attack". "Le implementazioni SMT (Simultanious Multi Threading) di solito condividono le cache TLB e L1 tra i thread. Questo può rendere questi attacchi alla cache molto più facili e sospettiamo fortemente che questo renderà diversi bug di classe Spectre sfruttabili", dice Kettenis.

Il team di OpenBSD è ora in procinto di fornire una nuova impostazione per disabilitare il supporto HT perché "molti sistemi moderni non offrono più la possibilità di disabilitare l'Hyper-Threading nella configurazione del BIOS".

"Questo ora può essere controllato attraverso un nuovo hw.smt sysctl" ha spiegato Kettenis. "Per ora funziona solo sulle CPU Intel con OpenBSD/amd64, ma abbiamo intenzione di estendere questa funzione alle CPU di altre aziende e altre architetture hardware". Insomma, Intel è la prima coinvolta, ma questo bando all'SMT in senso generale da parte di OpenBSD potrebbe riguardare anche AMD e altri.

Kettenis afferma che l'SMT non ha realmente un effetto positivo sulle prestazioni, come dichiarato da Intel e da altri produttori di CPU, e il cambiamento non dovrebbe comportare un grande calo in termini di prestazioni, cosa vera in alcuni scenari e meno in altri. "Non dovremmo far funzionare differenti domini di sicurezza su thread diversi sullo stesso core", conclude Kettenis.