I processori Intel moderni, incluse le generazioni Raptor Lake (13a gen) e Alder Lake (12a gen), sono risultati vulnerabili ad un nuovo tipo di attacco side-channel ad alta precisione chiamato “Indirector“. Questa minaccia, scoperta da un team di ricercatori dell’Università della California a San Diego, sfrutta debolezze presenti in due componenti chiave delle CPU; l’Indirect Branch Predictor (IBP) e il Branch Target Buffer (BTB). L’IBP è progettato per prevedere gli indirizzi di destinazione dei branch indiretti, mentre il BTB predice quelli dei branch diretti; entrambi mirano a migliorare le prestazioni del processore.
Funzionamento dell’attacco Indirector
L’attacco Indirector sfrutta i difetti nei meccanismi di indicizzazione, tagging e condivisione delle voci di questi componenti; nonché la loro struttura prevedibile. In particolare, utilizza tre meccanismi principali. Un primo meccanismo iBranch Locator, un tool personalizzato che identifica con precisione le voci IBP associate a specifici branch. Un altro meccanismo tramite iniezioni mirate nelle strutture di predizione per eseguire codice speculativo; infine bypass di ASLR determinando le esatte locazioni dei branch indiretti e dei loro target.
Ciò consente all’attaccante di manipolare più “facilmente” il flusso di controllo dei processi protetti ; inoltre combinato con tecniche di side-channel della cache, può inferire i dati acceduti.
Mitigazioni proposte contro Indirector
Per mitigare i rischi posti da Indirector, che colpisce specificamente le CPU Intel Core di 12a generazione (Alder Lake) e 13a generazione (Raptor Lake), i ricercatori propongono due strategie principali.
La prima è un uso più aggressivo dell’Indirect Branch Predictor Barrier (IBPB); attualmente limitato su Linux a causa dell’impatto del 50% sulle prestazioni.
La seconda è il rafforzamento del design della Branch Prediction Unit (BPU) incorporando tag più complessi, crittografia e randomizzazione. Tuttavia, implementare queste mitigazioni richiede un delicato lavoro di bilanciamento; anche considerando i significativi compromessi in termini di performance che potrebbero esserci.
Divulgazione e pubblicazione dei dettagli
Intel è stata informata della vulnerabilità a febbraio 2024 e ha avvisato i vendor di hardware e software interessati. I dettagli completi dell’attacco Indirector saranno presentati dai ricercatori al prossimo USENIX Security Symposium di agosto 2024.
Nel frattempo, hanno pubblicato un paper tecnico e proof-of-concept su GitHub per ulteriori analisi da parte della comunità di sicurezza. La notizia arriva in concomitanza con la divulgazione di un’altra vulnerabilità dei processori Arm chiamata “TIKTAG“, che sfrutta l’estensione Memory Tagging per far trapelare dati con un alto tasso di successo.
Falla Indirector : conclusioni
In generale, per un normale utilizzatore di PC il rischio di ricevere un attacco Indirector è relativamente basso, poiché sfruttare vulnerabilità come questa richiede competenze tecniche decisamente elevate. Inoltre non è un attacco che può essere effettuato da remoto, come ad esempio attraverso una connessione di rete, l’attaccante deve avere un certo livello di accesso fisico o logico al sistema.
L’attacco Indirector evidenzia comunque ancora una volta come l’esecuzione speculativa, pur essendo un elemento chiave per le prestazioni delle CPU moderne, continui a rappresentare un tallone d’Achille per la sicurezza dei dati.
Sfruttando le predizioni dei branch e le side-channel, gli attaccanti possono aggirare le protezioni e accedere a informazioni sensibili. Mitigare queste minacce in modo efficace richiede un difficile equilibrio tra sicurezza e performance; serviranno ulteriori ricerche e innovazioni per rendere i processori futuri più resilienti senza sacrificarne le prestazioni. Nel frattempo meglio rimanere vigili, applicando le patch disponibili e seguendo sempre le normali misure di sicurezza come backup, aggiornamenti OS, antivirus ecc.