Indirector: vulnerabilità colpisce i processori Intel di fascia alta

da Livio Varriale
0 commenti 2 minuti leggi

Il documento “Indirector: High-Precision Branch Target Injection Attacks Exploiting the Indirect Branch Predictor” presentato al USENIX Security Symposium di agosto 2024 introduce nuovi attacchi di iniezione ad alta precisione sui predittori di rami indiretti (IBP) nei processori Intel di fascia alta (Raptor Lake e Alder Lake).

Annunci

Riassunto

Questo studio fornisce una visione completa della struttura e delle funzioni dei predittori di rami indiretti (IBP) e del Branch Target Buffer (BTB) nei processori Intel, rivelando dettagli sconosciuti sulle difese hardware di Intel come IBPB, IBRS e STIBP. Utilizzando tecniche di reverse engineering, sono stati sviluppati attacchi di iniezione di rami ad alta precisione per violare i confini di sicurezza in vari scenari, compresi quelli cross-process e cross-privilege.

Contesto

image 16
Indirector: vulnerabilità colpisce i processori Intel di fascia alta 7

Gli attacchi di Branch Target Injection (BTI) sfruttano l’hardware di predizione dei rami nei moderni CPU per reindirizzare il flusso di controllo di un programma. Dal 2018, con la scoperta di Spectre e Meltdown, sono stati condotti numerosi studi su BTB e RSB, ma l’IBP è rimasto in gran parte inesplorato. Questo lavoro colma questa lacuna, analizzando l’IBP per identificare nuove vulnerabilità.

Predittore di Rami Indiretti (IBP)

Il predittore di rami indiretti (IBP) è una componente hardware che prevede gli indirizzi target dei rami indiretti. Utilizzando una combinazione di cronologia globale e indirizzo del ramo, l’IBP predice l’indirizzo target dei rami indiretti.

CaratteristicaDescrizione
TabelleTre tabelle, ciascuna 2-way set associative
StrutturaTabella 0: 68 bit di cronologia, Tabella 1: 132 bit, Tabella 2: 388 bit
Indici e TagFunzioni hash per calcolare indice e tag basati sulla cronologia globale e l’indirizzo del ramo

Strumenti e Attacchi

iBranch Locator Tool

Un nuovo strumento ad alta risoluzione per localizzare qualsiasi ramo indiretto all’interno dell’IBP senza informazioni storiche precedenti.

Attacchi di iniezione

  • IBP Injection Attack: Localizza voci IBP vittime e inietta indirizzi target arbitrari.
  • BTB Injection Attack: Inietta target maligni nelle voci BTB della vittima tramite previsioni BTB.

Mitigazioni

Per mitigare i rischi posti dagli attacchi Indirector, si raccomandano le seguenti contromisure:

  1. Uso più aggressivo di IBPB: Attivare automaticamente IBPB durante i cambi di contesto tra utenti diversi per ridurre la frequenza delle transizioni.
  2. Progettazione Sicura del BPU: Integrare nuovi campi come Core-ID e Privilege Level nel design dell’IBP per prevenire aliasing tra rami indiretti provenienti da core SMT diversi e livelli di privilegio diversi.

Comunicazione responsabile

Le scoperte di sicurezza sono state comunicate a Intel nel febbraio 2024, che ha informato altri fornitori hardware/software interessati.

Per ulteriori dettagli, è possibile consultare il repository del codice.

Si può anche come

MatriceDigitale.it – Copyright © 2024, Livio Varriale – Registrazione Tribunale di Napoli n° 60 del 18/11/2021. – P.IVA IT10498911212 Privacy Policy e Cookies

Developed with love by Giuseppe Ferrara