E’ stato individuato un serio difetto di progettazione, un bug nei Processori Intel con conseguente vulnerabilità che ha obbligato a ripensare significativamente i kernel dei sistemi operativi per rendere inoffensivo il problema di sicurezza presente a livello di chip. Lo riferisce The Register spiegando che il problema riguarda tutti i moderni computer degli ultimi dieci anni con processori Intel, inclusi quelli che eseguono macOS, Windows e Linux.
I programmatori dei principali sistemi operativi si stanno dando da fare per rivedere il meccanismo di gestione della memoria virtuale nel kernel open-source di Linux; Microsoft dovrebbe rilasciare patch specifiche con aggiornamenti in arrivo già introdotti nelle Insider build di novembre e dicembre.
Il rovescio della medaglia di questi update è che per quanto riguarda Linux e Windows porteranno a un calo nelle prestazioni. Quanto sarà rilevante il calo, non è ancora noto ma si parla di percentuali variabili tra il 5% e il 30%. I chip più recenti di Intel integrano funzionalità come il PCID (Process-context identifiers) e soffriranno meno del problema del calo di performance dopo gli aggiornamenti.
The Register spiega che i sistemi operativi a 64 bit, incluso macOS, hanno bisogno di update specifici per risolvere la vulnerabilità nell’hardware Intel x86-64 giacché il problema non è risolvibile con aggiornamenti del microcodice, il meccanismo che consente di effettuare aggiornamenti legati al processore, indipendentemente dal sistema operativo utilizzato.
Dettagli relativi alla vulnerabilità non sono ancora stati rivelati: l’embargo predisposto a proposito scadrà ad ogni modo a breve (probabilmente in concomitanza con il rilascio degli aggiornamenti da parte di Microsoft) ma a quanto sembra di capire in scenari ipotetici malintenzionati potrebbero essere in grado di leggere contenuti della memoria del kernel con informazioni quali login e password e altri dati.
L’accesso allo spazio di memoria usato dal kernel è normalmente inibito agli altri processi eseguiti dall’utente e per questo motivo è spesso usato dal sistema operativo per gestire password, nomi di login, file di cache dal disco e altro. “Immaginate un pezzo in JavaScript eseguito nel browser” scrive The Register, “un software malevolo eseguito su un cloud server pubblico potrebbe intercettare dati sensibili protetti nel kernel”.
Per risolvere il bug è necessario isolare la memoria gestita dal kernel in spazi distinti e separati usando un meccanismo indicato come Kernel Page Table Isolation (KPTI) che però porta al rallentamento delle performance in alcune macchine. Nel momento in cui scriviamo non è chiaro se Apple abbia già risolto o meno il problema e quali versioni del sistema operativo di Cupertino siano eventualmente colpite.
Oltre alle versioni desktop dei sistemi operativi a 64 bit, il problema potrebbe riguardare anche servizi cloud quali Amazon EC2, Microsoft Azure e Google Compute Engine.
[Aggiornamento: il problema sembra non essere circoscritto né solo ai processori Intel né all’ambiente desktop: potrebbe coinvolgere smartphone, tablet e set top Box con processori ARM come iPhone, iPad, Apple TV e tantissimi smartphone Android.]