Un team di ricercatori del Georgia Institute of Technology e della Ruhr University Bochum ha scoperto due gravi vulnerabilità side-channel nei chip M2/M3/M4/A15/A16/A17 di Apple che consentono di accedere ai dati sensibili presenti in memoria. FLOP e SLAP sfruttano la cosiddetta esecuzione speculativa per aggirare tutte le protezioni, in modo simile alle famose vulnerabilità Spectre e Meltdown.
Descrizione delle vulnerabilità
Come tutti i processori moderni, Apple M2/M3/M4/A15/A16/A17 utilizzano l’esecuzione speculativa, ovvero il caricamento in memoria delle istruzioni che potrebbero essere eseguite. I chip M2/A15/A16 dell’azienda di Cupertino prevedono anche l’indirizzo di memoria in cui accedere, mentre i chip M3/M4/A17 prevedono anche il dato restituito dalla memoria. L’errata previsione può essere sfruttata per eseguire istruzioni arbitrarie su dati sbagliati.
La vulnerabilità FLOP, acronimo di False Load Output Predictions, riguarda il Load Value Predictor (LVP) che prevede il dato restituito dalla memoria prima dell’accesso della CPU. I ricercatori hanno dimostrato che, in caso di errata previsione, è possibile leggere dati sensibili dalla memoria. Usando Safari e Chrome hanno ottenuto la cronologia delle posizioni di Google Maps, le email di Proton e gli eventi di iCloud Calendar.
La vulnerabilità SLAP, acronimo di Speculative Load Address Prediction, riguarda invece il Load Address Predictor (LAP) che prevede l’indirizzo di memoria dal quale la CPU preleverà i dati. In questo caso, l’errata previsione può essere sfruttata per eseguire il dato presente nell’indirizzo di memoria con istruzioni arbitrarie. Usando Safari è possibile accedere alle email in Gmail, agli ordini di Amazon e altri dati del browser.
FLAP è presente solo nei chip Apple M3/M4/A17, mentre SLAP è presente nei chip Apple M2/M3/M4/A15/A16/A17. L’azienda di Cupertino ha pianificato il rilascio delle patch. Una possibile mitigazione temporanea è la disattivazione di JavaScript in Chrome e Safari, ma ciò causerà problemi con molti siti web.