Tutti i processori Intel x86-64 sono vulnerabili, tutti quelli realizzati nell’ultimo decennio, i quali contengono un grave errore di progettazione che compromette la sicurezza dei principali sistemi operativi. Questo è quanto detto da The Register attraverso un report nel quale vengono accennati alcuni dettagli di questa vulnerabilità, anche se il grosso delle informazioni al momento sono stati “censurati” sino alla fine del mese, in modo da evitare che venga sfruttata prima della diffusione delle patch necessarie.
Da quel poco che è emerso, è noto che l’errore di progettazione consente di accedere alla memoria protetta del kernel attraverso dei semplici programmi eseguiti a livello utente, persino dalle app JavaScript di un browser web. Ciò, nel peggiore dei casi, potrebbe portare alla realizzazione di codice malevolo in grado di leggere dati sensibili come, ad esempio, password e chiavi di login presenti nella memoria del kernel, dal momento che questa non risulta essere più totalmente isolata dal sistema.
La falla è particolarmente grave e non può essere chiusa con una semplice patch, bensì richiede una parziale riscrittura dei sistemi operativi o la sostituzione fisica del processore con un’unità non colpita da questo errore di progettazione. La soluzione, infatti, si basa sulla separazione totale della memoria del kernel dai processi eseguiti normalmente, utilizzando un sistema chiamato Kernel Page Table Isolation (KPTI) che gestirà in maniera diversa il passaggio tra user-mode e kernel-mode, eseguendo quest’ultima modalità in uno spazio totalmente isolato; tuttavia gli effetti dell’applicazione di questa patch avranno importanti conseguenze negative sulle performance del sistema, portando a rallentamenti che si stimano essere compresi tra il 5 e il 30% in base allo scenario considerato.
Nelle ultime ore la voce di Intel si è fatta sentire spiegando, con una nota diffusa, che non è un suo problema esclusivo ma che si tratta di un problema legato a tutti i processori e per i quali si stava cercando una soluzione comune. Nota parzialmente vera, perché quello che nessuno sapeva, fino ad oggi, è che il problema non è uno solo ma bensì sono due. Ben due falle che interessano praticamente tutti i processori presenti sul mercato in miliardi di dispositivi. E quando si parla di tutti i chip si intende proprio tutti, da quelli dei computer a quelli degli smartphone per passare a quelli usati sulle auto e sui sistemi embedded.
I bug sono due, Meltdown e Spectre, chiamati così dagli esperti e dai ricercatori che li hanno scoperti (maggior informazioni: https://meltdownattack.com).
Entrando nel dettaglio:
Meltdown, è quello emergo nella giornata di ieri e riguarda esclusivamente i processori Intel prodotti negli ultimi dieci anni. Per chiuderlo o si cambia processore oppure si applica una patch denominata Kaiser, una patch già usata per risolvere un altro problema emerso lo scorso anno capace di isolare una porzione di memoria rendendola inaccessibile. Questa patch causa dei rallentamenti: Intel nella nota di ieri ha stabilito che per un utente di un computer di casa il rallentamento è minimo e quasi impercettibile, ma non ha chiarito quanto impatta la patch per i clienti business che hanno processori Xeon nei server dei loro datacenter. Le prime stime parlano di cali dal 17% al 27% per richieste SQL, in altri casi però la perdita è superiore in altri invece è solo del 5%. Un bel problema in ogni caso, perché a nessuno piace avere il processore rallentato. I processori AMD non hanno questo problema, e infatti uno degli ingegneri AMD si è affrettato a includere nella patch Kaiser per Linux, disponibile open source, un controllo che verificasse anche la marca del processore, proprio per evitare che i processori AMD venissero penalizzati da una patch che finirà su tutte le distribuzioni. Microsoft e Apple hanno già rilasciato alcune patch, mentre a livello business sia Amazon che Microsoft hanno effettuato modifiche all’infrastruttura dei loro datacenter per proteggere le varie macchine virtuali degli utenti. Tra gli utenti Amazon AWS qualcuno ha già avvertito un calo di prestazioni in ogni caso, e dobbiamo considerare che siamo solo agli inizi: le falle sono state rese pubbliche da poche ore. Sintetizzando Meldown colpisce tutti i processori Intel, è facile creare un exploit per sfruttarlo e può essere chiuso usando una patch che i produttori di sistemi operativi stanno rilasciando in questi giorni ma che rallenta, non si capisce ancora quanto, il sistema.
Spectre, la seconda falla, è ben più grave anche se le conseguenze potrebbero essere meno serie. Di buono, se così si può dire, c’è il fatto che realizzare un exploit per sfruttarla non è così semplice. La questione seria è però che colpisce ogni processore sul mercato ed è proprio un difetto di progettazione che il mondo dei produttori di chip si porta dietro da più di 20 anni, fin dal 1995. Miliardi e miliardi di chip disegnati con un unico scopo: rendere il processore il più veloce possibile senza però domandarsi se il modo in cui lo si è fatto era anche quello che offriva i maggiori criteri a livello di sicurezza. I designer di chip, da ARM a AMD arrivando al colosso Intel hanno prodotto macchine super veloci senza freni. Questo fa capire quanto è serio Spectre, anche perché non esiste una soluzione: bisogna proprio ripensare al modo in cui sono stati progettati i processori e questo secondo gli esperti potrebbe richiedere anche un decennio.
Quindi, questa è la situazione attuale: la più grande falla di sicurezza nel mondo dei chip e dei processori. Difficile capire esattamente cosa succederà ora, sicuramente ci saranno azioni legali contro i produttori di processori. Ma ci sarà molto di più considerando che il problema è noto solo da poche ore.
Discussione su post