Red Hot Cyber
La cybersecurity è condivisione. Riconosci il rischio, combattilo, condividi le tue esperienze ed incentiva gli altri a fare meglio di te.
Cerca

CPU Intel Vulnerabili! Nuovo Attacco “Indirector” Minaccia Rileva Dati Sensibili

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.

BTI

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.

Acquista il corso Dark Web & Cyber Threat Intelligence (e-learning version)
Il Dark Web e la Cyber Threat Intelligence rappresentano aree critiche per comprendere le minacce informatiche moderne. Tra ransomware, data breach e attività illecite, le organizzazioni devono affrontare sfide sempre più complesse per proteggere i propri dati e le infrastrutture. Il nostro corso “Dark Web & Cyber Threat Intelligence” ti guiderà attraverso i meccanismi e le strategie utilizzate dai criminali informatici, fornendoti competenze pratiche per monitorare, analizzare e anticipare le minacce.

Accedi alla pagina del corso condotto dall'Prof. Pietro Melillo sulla nostra Academy e segui l'anteprima gratuita.

Per un periodo limitato, potrai utilizzare il COUPON CTI-16253 che ti darà diritto ad uno sconto del 20% sul prezzo di copertina del corso
Per ulteriori informazioni, scrivici ad [email protected] oppure scrivici su Whatsapp al 379 163 8765 

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:

  1. Branch Target Buffer (BTB): Utilizzato per prevedere gli indirizzi di destinazione dei rami diretti (cioè, le istruzioni di salto che hanno una destinazione fissa).
  2. Return Stack Buffer (RSB): Utilizzato per gestire le chiamate di funzione e i relativi ritorni.
  3. Indirect Branch Predictor (IBP): Progetta per prevedere gli indirizzi di destinazione dei rami indiretti, ovvero quei salti il cui indirizzo di destinazione non è noto a priori e deve essere calcolato durante l’esecuzione.

Dettagli della violazione

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.

Indirector e Nuovi Vettori di Attacco

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:

  1. iBranch Locator: Uno strumento che utilizza tecniche per identificare gli indici e i tag dei rami indiretti, permettendo di localizzare esattamente le voci IBP pertinenti.
  2. Iniezioni IBP/BTB: Manipolazioni delle strutture di previsione per eseguire codice speculativo.
  3. Bypass ASLR: Tecniche che aggirano la randomizzazione del layout dello spazio degli indirizzi (ASLR), facilitando l’accesso e la manipolazione del flusso di controllo dei processi protetti.

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.

Misure di Mitigazione

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.

Conclusioni

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.

Raffaela Crisci
Membro del gruppo di Red Hot Cyber Dark Lab. Ingegnere informatico laureata con lode presso l'Università degli Studi del Sannio, con specializzazione in Cyber Security. Esperta in Cyber Threat Intelligence con esperienza in una multinazionale leader del settore. Forte disciplina e capacità organizzative sviluppate attraverso lo sport