Raffaela Crisci : 3 Luglio 2024 07:36
I moderni processori Intel, comprese le CPU delle generazioni Raptor Lake e Alder Lake (cioè le 12a e 13a generazione di processori Intel “Core”), sono vulnerabili a un nuovo attacco Branch Target Injection (BTI) ad alta precisione chiamato “Indirector”.
Scoperto dai ricercatori Luyi Li, Hosein Yavarzadeh e Dean Tullsen dell’Università della California di San Diego, Indirector sfrutta le vulnerabilità nell’Indirect Branch Predictor (IBP) e nel Branch Target Buffer (BTB), due componenti critici delle CPU Intel, per manipolare l’esecuzione speculativa e rubare informazioni sensibili. Questo attacco rappresenta una significativa minaccia alla sicurezza, aggirando le difese esistenti. I dettagli completi saranno presentati al prossimo USENIX Security Symposium nell’agosto 2024.
Gli attacchi Branch Target Injection (BTI) sfruttano le caratteristiche delle moderne CPU per reindirizzare il flusso di controllo di un programma, basandosi sul funzionamento della branch prediction. La branch prediction, utile a migliorare le prestazioni della CPU, è una tecnica utilizzata da queste ultime per prevedere la direzione che prenderà il flusso di esecuzione di un programma, migliorando così l’efficienza.
Vuoi diventare un Ethical Hacker?
Non perdere i nostri corsi e scrivi subito su WhatsApp al numero
375 593 1011
per richiedere informazioni dicendo che hai trovato il numero sulle pagine di Red Hot Cyber
Supporta RHC attraverso:
Ti piacciono gli articoli di Red Hot Cyber? Non aspettare oltre, iscriviti alla newsletter settimanale per non perdere nessun articolo.
Quando la CPU incontra un’istruzione di ramo (come una condizione IF), deve decidere quale percorso seguire prima di conoscere il risultato dell’istruzione. Per evitare di rimanere inattiva, la CPU predice il risultato e continua l’esecuzione speculativa lungo il percorso previsto.
Esempi di BTI nella vulnerabilità SPECTRE
Componenti della Branch Prediction:
Gli attacchi BTI sfruttano queste tecniche di branch prediction per eseguire codice speculativo, che è una forma di esecuzione in cui la CPU tenta di prevedere i prossimi passi di un programma. Gli attacchi come Spectre e Meltdown [1] hanno dimostrato che queste esecuzioni speculative possono essere manipolate per accedere a dati sensibili.
Gli attacchi BTI mettono in luce vulnerabilità fondamentali nella progettazione delle CPU moderne, sfruttando l’interazione tra branch prediction ed esecuzione speculativa. Anche con difese come l’Indirect Branch Predictor Barrier (IBPB) e altre mitigazioni, esistono ancora vettori di attacco che possono essere utilizzati per compromettere la sicurezza dei processori.
Gli attacchi come Spectre (CVE-2017-5753 e CVE-2017-5715) e Meltdown (CVE-2017-5754) hanno mostrato che è possibile indurre la CPU a eseguire operazioni che portano alla divulgazione non autorizzata di informazioni sensibili attraverso esecuzioni speculative, evidenziando la necessità di miglioramenti continui nelle tecniche di mitigazione e nella progettazione hardware delle CPU.
Il nuovo attacco, denominato Indirector, sfrutta vulnerabilità specifiche dell’IBP per eseguire attacchi precisi e mirati, ignorando le difese esistenti. I principali meccanismi utilizzati includono:
L’attacco Indirector evidenzia come le moderne CPU Intel, tra cui Raptor Lake e Alder Lake, siano vulnerabili a queste tecniche di BTI. Questo attacco potrebbe essere sfruttato per divulgare informazioni sensibili dai processori. La ricerca suggerisce che, nonostante le difese implementate dopo Spectre e Meltdown, esistono ancora vulnerabilità che possono essere sfruttate per compromettere la sicurezza delle CPU.
Per mitigare questi attacchi, è possibile utilizzare barriere come l’**Indirect Branch Predictor Barrier (IBPB)** e di rafforzare la progettazione dell’unità di branch prediction (BPU) con tag più complessi, crittografia e randomizzazione.
L’IBPB è una misura di sicurezza che invalida le predizioni dei rami indiretti durante i cambi di contesto, come il passaggio da un utente all’altro. Su Linux, l’IBPB è attivato automaticamente durante le transizioni alla modalità SECCOMP (un meccanismo di sandboxing) o durante attività con rami indiretti limitati nel kernel. Tuttavia, l’uso frequente di IBPB può causare un calo delle prestazioni fino al 50%, rendendone difficile l’implementazione aggressiva in ambienti che richiedono alte prestazioni, come browser o sandbox.
Per mitigare ulteriormente gli attacchi, dovrebbe essere migliorata la progettazione della BPU. Intel ha già introdotto campi come Core-ID e Privilege Level nella progettazione del loro Indirect Branch Predictor (IBP) per prevenire aliasing tra rami indiretti eseguiti su diversi core o a diversi livelli di privilegio. Tuttavia, i ricercatori propongono di integrare tag più complessi, crittografia e randomizzazione nelle future progettazioni della BPU per fornire un isolamento più fine tra diversi domini di sicurezza, riducendo così la superficie di attacco.
Gli attacchi BTI come Indirector mostrano la continua evoluzione delle tecniche di attacco contro le CPU moderne. Nonostante le misure di sicurezza implementate, la complessità e la sofisticatezza delle CPU moderne offrono ancora vettori di attacco che richiedono ulteriori ricerche e miglioramenti nelle difese hardware e software. Le vulnerabilità side-channel possono diventare minacce persistenti se non opportunatamente patchate e studiate, lasciando spazio ad un alto numero di bersagli vulnerabili agli attaccanti.
Copyright @ 2003 – 2024 RED HOT CYBER
PIVA 16821691009