Alcuni modelli di CPU prodotte da Intel e AMD sono vulnerabili a un attacco di esecuzione speculativa scoperto di recente e ribattezzato Retbleed. Se portato a termine con successo, può far trapelare in modo occulto dati riservati come password e altro materiale sensibile.
A scoprire questa nuova vulnerabilità persistente nelle CPU dei due chipmaker sono stati i ricercatori Johannes Wikner e Kaveh Razavi del Politecnico di Zurigo, che hanno pubblicato un technical paper sull’attacco Retbleed che verrà discusso dagli stessi ricercatori il prossimo 10 agosto alla conferenza Usenix Security.
Morpheus, la CPU “mutante” a prova di cyber attacchi: come funziona e punti di forza
Indice degli argomenti
Come funziona l’attacco Retbleed
Il nome Retbleed deriva dal fatto che l’attacco sfrutta un particolare sistema di difesa software noto come Retpoline che i produttori di chip hanno introdotto nel 2018 proprio per mitigare gli effetti dannosi degli attacchi di esecuzione speculativa come il famigerato Spectre.
L’esecuzione speculativa nei processori
Per comprendere come funziona l’attacco Retbleed è utile ricordare brevemente in cosa consiste l’esecuzione speculativa (speculative execution) utilizzata dai moderni processori per PC.
Si tratta, in particolare, di una tecnica di ottimizzazione delle CPU che consiste nell’eseguire operazioni che potrebbero servire, in un secondo momento, per completare le istruzioni che il processore sta eseguendo. Di fatto, quindi, la CPU “prevede” l’indirizzo dell’istruzione successiva che sta per ricevere e la esegue automaticamente prima che venga effettivamente confermata. Per semplificare il concetto, è come se la CPU anticipasse l’esecuzione dei comandi per velocizzarne l’elaborazione.
Un attacco di esecuzione speculativa come Retbleed (e quindi tutti quelli della serie Spectre) funziona proprio ingannando la CPU nell’esecuzione di un’istruzione che accede a dati sensibili in memoria, che normalmente sarebbero off-limits per un’applicazione con bassi privilegi di esecuzione.
Infatti, queste istruzioni eseguite erroneamente (risultato della previsione errata) sono destinate a lasciare tracce dell’esecuzione nella cache, dando così luogo a uno scenario di attacco Retbleed in cui un programma malevolo può indurre il processore a eseguire percorsi di codice errati ed estrarre i dati della vittima dopo l’annullamento dell’operazione.
I dettagli delle vulnerabilità nelle CPU Intel e AMD
Retbleed è l’ultimo di una serie di attacchi che va ad aggiungersi alla classe di attacchi Spectre noti come Spectre-BTI (CVE-2017-5715 o Spectre-V2).
In particolare, sono due le vulnerabilità identificate dai ricercatori e che, se sfruttate, consentono di portare a termine l’attacco: la prima, tracciata come CVE-2022-29900, riguarda il processori AMD, mentre la seconda, tracciata come CVE-2022-29901, riguarda i processori Intel.
Nel dettaglio, le CPU AMD vulnerabili all’attacco Retbleed sono quelli basati sulle architetture Zen 1, Zen 1+ e Zen 2, prodotti dal 2017 al 2019. Per quanto riguarda Intel, invece, il problema riguarda le CPU Intel Core dalla generazione 6 (Skylake del 2015) alla 8 (Coffee Lake del 2017).
I ricercatori hanno verificato che, nel caso delle CPU Intel Coffee Lake vulnerabili, Retbleed permette di intercettare dati a circa 219 byte al secondo con il 98% di accuratezza. Nel caso della CPU AMD basate su architettura Zen 2, invece, i dati vengono estratti a 3,9 kilobyte al secondo con accuratezza del 99%.
Come mitigare il rischio di un attacco Retbleed
Entrambi i chipmaker hanno rilasciato già alcune soluzioni di mitigazione dell’attacco Retbleed.
In particolare, Intel raccomanda nel suo bollettino di sicurezza l’uso della protezione software nota come Enhanced Indirect Branch Restricted Speculation (eIBRS).
Da parte sua, anche AMD si è mossa in una direzione simile, rilasciando una guida per mitigare il problema che potrebbe portare alla divulgazione di informazioni sensibili.
Infine, i ricercatori Intel hanno fatto sapere che “i sistemi Windows non sono interessati dall’attacco Retbleed poiché utilizzano l’Indirect Branch Restricted Speculation (IBRS) per impostazione predefinita, che è anche la mitigazione resa disponibile agli utenti Linux”.
Al momento, i ricercatori non sono a conoscenza del fatto che questo problema venga sfruttato al di fuori di un ambiente di laboratorio controllato.