Intel ha rilasciato una nuova versione del microcode che corregge i
problemi di stabilità dell'ultima rilasciata[1]
Però in Debian si è andati indietro di due versioni, perché pure la
precedente a quella bacata generava problemi (si vede nei bug Debian del
microcode intel). Non ho capito se questa risolve anche questi problemi.
Si può vedere dallo script spectre-meltdown-checker presente
nell'omonimo pacchetto se la propria CPU è tra quelle che hanno indicato
come problematiche con la versione precedente del microcode di Intel
C'è una riga tipo questa
* CPU microcode is known to cause stability problems: NO
Io sono in testing e la versione che riporta questa scritta è la v0.34,
altrimenti si può prendere da github lo script.
Inoltre ho letto che il CEO di Intel ha dichiarato che già nel 2018
usciranno processori che implementeranno a livello hardware correttivi
per spectre e meltdown (scusate, non ho il link sottomano). Però non ho
capito se implementeranno le mitigazioni distribuite con microcode, con
i vari kernel dei vari sistemi operativi, con i browser, ... o se stanno
modificando la logica di funzionamento per impedire che questi tipi di
attacchi possano essere attuati. O potrebbe essere solo una mossa per
cercare di rassicurare il mercato.
Per saperne di più su cosa sono spectre e meltdown e come funzionano vi
consiglio di guardare questo articolo di Schneier[2] (gli esperti di
sicurezza lo chiamano il guru dei guru... ha scritto dei libri davvero
interessanti che meriterebbero di essere letti), soprattutto il link per
meltdown[3] e spectre[4] scritti da uno dei team che ha scoperto le
vulnerabilità che spiegano in dettaglio cos'è il bug scoperto e come
l'attaccante riesce a sfruttarlo. Anche i commenti sono interessanti,
poiché partecipano nei commenti vari esperti di sicurezza.
Molto brevemente per meltdown (semplifico): i processori di nuova
generazione permettono di evitare di stare in idle mentre sono in attesa
di processare l'istruzione successiva, ma calcolano quella che potrebbe
essere l'istruzione (o le istruzioni) successive ed eseguono. Se
l'istruzione/i eseguita/e risulta/no quella/e corretta/e, allora hanno
risparmiato tempo e usano il risultato ottenuto; se non è così buttano
via tutto, senza in realtà cancellare nulla. L'attaccante può far si che
il processore su un'istruzione resti in attesa e faccia eseguire al
processore un'altra possibile successiva (ad esempio resta in attesa su
un "if" ed il processore esegue l'istruzione nel caso l'"if" sia vero);
quest'istruzione eseguita potrebbe accedere in un'area di memoria
protetta e copiare quanto letto nella cache interna... dopo aver letto
viene verificata se quell'istruzione era valida o meno e se non era
valida lancia un'eccezione... ma nella cache rimane quanto letto, anche
se eseguito out-of-order (da istruzioni che il programma magari non
richiederà di eseguire, perché l'"if" si rivelerà falso). Ora con varie
tecniche è possibile leggere la cache e quindi avere accesso a tutta
l'area di memoria, anche quella protetta.
Molto molto brevemente per spectre (semplifico): sfrutta lo stesso
problema dell'out-of-order di spectre solo che qui viene ricercata ed
eseguita un'istruzione (es: di una libreria) individuando la sua
posizione e facendola eseguire da un'istruzione out-of-order.
Schneier dice che meltdwon è un bug convenzionale che può essere
"corretto" (penso intenda mitigato), mentre spectre è peggiore (anche se
alcuni esperti non sono molto d'accordo con lui). Subito dopo aggiunge:
non è possibile creare patch per queste vulnerabilità, i chip
necessitano di essere riprogettati in un modo da eliminarla.
Ciao
Davide
[1]
https://it.slashdot.org/story/18/02/08/1432255/intel-replaces-its-buggy-fix-for-skylake-pcs
[2] https://www.schneier.com/blog/archives/2018/01/the_effects_of_3.html
[3] https://meltdownattack.com/meltdown.pdf
[4] https://spectreattack.com/spectre.pdf
--
Dizionari: http://linguistico.sourceforge.net/wiki
Browser: http://www.mozilla.org/products/firefox
GNU/Linux User: 302090: http://counter.li.org
Non autorizzo la memorizzazione del mio indirizzo su outlook