Campionamento di sfratto L1D, L1DES o anche noto CacheOut è una delle nuove minacce che vengono aggiunti all'elenco dei conoscenti che consentire la possibilità di attaccare le CPU Intel tramite l'esecuzione di codice speculativo. Questa è la terza volta in meno di un anno che Intel presenta una nuova serie di vulnerabilità legate alla funzionalità speculativa dei suoi processori.
Dall'inizio i problemi di Intel sono iniziati con Spectre e Meltdown, che in seguito hanno lasciato il posto a più vulnerabilità identificate da allora, tra cui SPOILER, Foreshadow, SwapGS, ZombieLoad, RIDL e Fallout. Ebbene, i nuovi attacchi interessano le CPU Intel prodotte prima del quarto trimestre del 2018.
A differenza delle vulnerabilità MDS (Microarchitectural Data Sampling), secondo il sito web di CacheOut:
Un utente malintenzionato può utilizzare i meccanismi di memorizzazione nella cache delle CPU per mirare specificamente ai dati da filtrare.
I suoi scopritori vedono la vulnerabilità CacheOut come un altro attacco all'esecuzione speculativa e a conseguenza indiretta di Spectre e Meltdown.
Ed è che i ricercatori VUSec sembrano aver scoperto la vulnerabilità in parallelo, perché secondo il CVE, CacheOut è identico a una variante RIDL, che i suoi scopritori chiamano L1DES (seguono il nome ufficiale di Intel come L1D Eviction Sampling)
Ad un livello elevato, CacheOut forza la contesa sulla cache L1-D per eliminare i dati a cui punta dalla cache. Descriviamo due varianti.
Innanzitutto, nel caso in cui la cache contenga dati modificati dalla vittima, il contenuto della riga della cache viaggia attraverso gli LFB mentre viene scritto in memoria.
In secondo luogo, quando l'attaccante vuole far trapelare dati che la vittima non modifica, prima rimuove i dati dalla cache e poi li ottiene mentre transita attraverso i buffer di riempimento di riga per soddisfare una lettura simultanea dalla vittima.
I meccanismi di difesa dal collasso di Intel non avrebbero alcun effetto contro CacheOut, ma aiutano che la vulnerabilità non possa essere sfruttata tramite il browser.
VUSec offre anche un proof of concept exploit per la vulnerabilità su GitHub. La vulnerabilità porta il CVE-2020-0549 come CacheOut.
Mentre Intel assegna anche il proprio codice (INTEL-SA-00329) e lo classifica come moderato (6.5). Secondo la stessa Intel, i dati nella cache dati L1 (L1D) possono essere reindirizzati a un buffer L1D inutilizzato (buffer di riempimento).
I dati possono essere filtrati in modo specifico e letti da questo buffer di riempimento tramite attacchi ai canali laterali. Pertanto, Intel chiama questo metodo di lettura L1D Eviction Sampling e considera le potenziali vittime come un sottoinsieme di L1TF (Foreshadow e Foreshadow-NG). A differenza di Foreshadow, gli aggressori non dovrebbero essere in grado di eseguire query specifiche sugli indirizzi fisici con CacheOut.
L'altra delle vulnerabilità che sono stati rivelati e Intel tiene traccia come campionamento del registro vettoriale (RSV), È il meno critico poiché Intel afferma che questo difetto è meno grave perché la complessità dell'attacco è elevata e le possibilità che un utente malintenzionato ottenga dati rilevanti sono basse. Oltre a ciò, VRS è anche considerato una nuova variante dell'attacco RIDL.
VRS è correlato a una perdita nello Store Buffer dei risultati delle operazioni di lettura dei registri vettoriali che sono stati modificati durante l'esecuzione delle istruzioni vettoriali (SSE, AVX, AVX-512) nello stesso core della CPU.
La perdita si verifica in una serie di circostanze molto particolari ed è causata dal fatto che un'operazione speculativa eseguita, che porta al riflesso dello stato dei record vettoriali nel buffer di archiviazione, viene ritardata e terminata dopo il buffer e non prima.
Infine, Intel ha annunciato che nel giro di poche settimane avrebbe pronto gli aggiornamenti rilevante per correggere questi difetti.
Mentre per le CPU AMD, ARM e IBM non sono interessate da queste vulnerabilità.
Gli exploit delle vulnerabilità possono essere trovati nei seguenti link.