Un gruppo di ricercatori VUSec presso la Vrije Universiteit di Amsterdam ha scoperto un nuovo attacco side-channel chiamato SLAM, che colpisce sia le attuali CPU che quelle in uscita di Intel, AMD e Arm. L’attacco è in grado di eludere le funzioni di sicurezza e consente l’accesso non autorizzato alla password di amministratore dalla memoria del kernel.
SLAM è un acronimo, che sta per Spectre-based on LAM (Linear Address Masking). Il Linear Address Masking è una funzione dei processori Intel, ma si trova anche su quelli AMD sotto il nome di Upper Address Ignore (UAI) e su quelli Arm come Top Byte Ignore (TBI); si tratta di una funziona mirata a migliorare l’efficienza del sistema, ad esempio nel caso di Intel permettendo ai software di individuare i metadati dei puntatori dei dati senza dover mascherare i bit dei metadati.
Per eseguire SLAM gli attaccanti sfruttano una caratteristica che permette ai software di memorizzare bit non tradotti in indirizzi lineari 64 bit nei metadati del kernel e usano un’esecuzione transitoria per trovare istruzioni non mascherate, che vendono chiamate “gadget”.
Il team di ricercatori ha eseguito con successo SLAM su sistemi con Intel Core i9-13900K e AMD Ryzen 7 2700X con kernel Linux 6.3.0. Secondo VUSec, la mancanza di controlli adeguati nei nuovi livelli di paging espone le CPU e facilità l’esecuzione di questo attacco.
Al momento, SLAM prende di mira i sistemi Linux ed è già stato rilasciato un aggiornamento che disabilita LAM per impostazione predefinita; ARM ha rassicurato i propri utenti, affermando che non è necessaria alcuna azione aggiuntiva per contrastare l’attacco, in quanto i sistemi sono in grado di respingerlo. Dal canto suo, AMD è convinta che le mitigazioni per Spectre V2 siano adeguate anche per SLAM.
Intel ha invece contattato i fornitori software e ha affermato che fornirà indicazioni prima del rilascio futuro di CPU che supportano LAM. Sembra che l’azienda voglia lavorare a una soluzione che coinvolge l’implementazione di una estensione chiamata LASS (Linear Address Space Separation), che preverrebbe l’accesso non autorizzato attraverso il kernel.
VUSec ha reso disponibile il codice e i dati dell’attacco SLAM in un repository GitHhub, così che gli utenti possano riprodurlo e nella speranza che le vulnerabilità vengano corrette quanto prima, così da garantire la sicurezza dei sistemi.