Tutti i processori Intel x86-64, realizzati nell’ultimo decennio, contengono un grave errore di progettazione che compromette la sicurezza dei principali sistemi operativi. La notizia arriva tramite un report di The Register, nel quale vengono accennati alcuni dettagli di questa vulnerabilità, anche se il grosso delle informazioni rimane sotto embargo sino alla fine del mese, in modo da evitare che venga sfruttata prima della diffusione delle patch necessarie.
Sembra che l’errore di progettazione consenta di accedere alla memoria protetta del kernel attraverso dei semplici programmi eseguiti a livello utente, persino dalle app JavaScript di un browser web. Si potrebbe realizzare un codice malevolo in grado di leggere dati sensibili come 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: 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.
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 ambienti virtualizzati in particolar modo) in base allo scenario considerato. Si tratta di un colpo estremamente pesante, non solo per gli utenti che sfruttano al massimo le proprie workstation, ma anche per tutte le principali infrastrutture cloud come Microsoft Azure, Amazon EC2 e Google Compute Engine.
AMD ha già rilasciato una dichiarazione nella quale afferma che i suoi processori non sono colpiti da questa falla, visto che la sua micro-architettura non permette accessi, neanche speculativi, ai dati presenti in una memoria di più alto livello da parte di una di basso livello.
Al momento le patch per Windows e Linux sono in fase di finalizzazione, mentre non ci sono dettagli noti riguardo l’implementazione della patch su macOS, anche se pure Apple è al lavoro per correggere la vulnerabilità.