Patch Intel per Meltdown e Spectre? Spazzatura. Parola di Linus Torvalds

Pubblicato il 23 Gen 2018

Linus_Torvalds

La vicenda delle vulnerabilità Spectre e Meltdown, rese pubbliche all’inizio di gennaio (ne avevamo parlato qui e qui), si fa sempre più complicata. A causa della gravità delle falle, che si annidano in profondità nel microcodice dei processori, in particolare nella parte per l’esecuzione speculativa delle istruzioni, i produttori di CPU coinvolti (principalmente Intel, ma anche AMD e ARM) hanno infatti pubblicato rapidamente delle patch per “mitigare” il problema. Purtroppo, mitigare non vuol dire risolvere, e la fretta – soprattutto quando si tratta di software – gioca brutti scherzi. Così, le prime patch di Intel per mitigare il problema hanno creato ulteriori guai, provocando improvvisi reboot e altri malfunzionamenti di cui solo ora l’azienda californiana pare aver trovato la causa. Almeno sulle architetture Haswell e Broadwell, mentre per Ivy/Sandy Bridge e Sky/Kaby Lake si sta ancora lavorando. Intel infatti ha avvisato ieri i suoi clienti di attendere la disponibilità di una nuova versione della patch prima di procedere all’installazione.

La soluzione è lontana

Ma i problemi più grossi paiono riguardare le soluzioni proposte per eliminare la vulnerabilità dalle future architetture. Per ottenere una soluzione definitiva, è necessario un cambiamento profondo nel sistema di esecuzione speculativa, cambiamento che richiederà molto tempo e la riprogettazione di parecchio microcodice. Così Intel sta puntando su un “Piano B” per i processori di prossima uscita: Dotarli di un flag, chiamato “IBRS_ALL” che quando settato inibirà l’utilizzo dell’esecuzione speculativa del codice, bloccando la via a Spectre. Tuttavia, i chip verranno forniti con il flag non settato. Sarà l’utente a scegliere se usare il processore al 100% delle prestazioni e correre il rischio di incappare in Spectre, o se tutelarsi settando IBRS_ALL, perdendo però fino al 30% della potenza di calcolo.

Le parole di Torvalds

Questa “soluzione” un po’ posticcia ha fatto letteralmente infuriare Linus Torvalds, il creatore di Linux, che in una serie di post pubblicati domenica scorsa sul forum degli sviluppatori del kernel Linux ha sparato a zero contro la casa di Santa Clara. “Tutto questo è pura spazzatura – afferma Torvalds nel post – davvero Intel vuole inserire questa roba (Linus usa un termine più colorito, vagamente trumpiano) come parte della propria architettura? Qualcuno ha parlato con loro e gli ha spiegato che è una follia? Per favore, se ci sono ingegneri Intel che mi leggono, parlate con i vostri manager”.

Nel dialogo con uno sviluppatore Torvalds analizza più a fondo la questione dal punto di vista tecnico, osservando che mentre l’impostazione della patch Intel per Meltdown è fondamentalmente corretta, quella pensata per l’altra vulnerabilità sembra più una hack malfatta. Essa verrà fatta ingoiare agli utenti più che altro perché da un lato Intel non vuole impegnarsi a fondo per risolvere il problema in tempi brevi, e dall’altro vuole mettersi al riparo da eventuali cause legali che potrebbero essere intentate per il calo di prestazioni delle CPU.

Torvalds si spinge poi ancora più in là, analizzando le patch e osservando che alcune fanno cose “assurde” o comunque inutili, visto che già retpoline di Google consente di proteggere adeguatamente il kernel, e si chiede quindi quale sia lo scopo di chi ha introdotto queste modifiche.

Nuove minacce

Bloccare in modo sicuro Spectre si sta rivelando sempre più cruciale: se infatti la prima vulnerabilità scoperta era di tipo a sola lettura, ovvero permetteva a un’applicazione di leggere i dati nella memoria protetta del kernel senza poterla però controllare, la Spectre v2 consentirebbe (attraverso il poisoning del sistema di esecuzione speculativa della CPU) di “forzare” il processore a eseguire speculativamente determinate sequenze di codice. Ciò consentirebbe a un attaccante di portare nella memoria protetta le informazioni che gli interessano. E questo aprirebbe scenari davvero gravi, visto che l’unico punto a sfavore di Spectre era il fatto che, una volta letta la memoria, era davvero difficile decifrarla per ottenere dati utilizzabili.

Sembra, comunque, che Intel abbia “preso atto” delle osservazioni di Torvalds: portavoce del produttore hanno dichiarato ieri alla testata “The Register” che Intel considera seriamente i suggerimenti dei suoi partner industriali, e che si sta attivando per lavorare con la comunità Linux, e particolarmente con Torvalds, per cercare insieme una soluzione. Speriamo che, per una volta, il parere degli ingegneri prevalga su quello dei legali.

Valuta la qualità di questo articolo

Z
Renzo Zonin
email Seguimi su

Articoli correlati

Articolo 1 di 5