Un nuovo attacco denominato Indirector mette a rischio i processori Intel più recenti, inclusi quelli di 12° e 13° generazione, vale a dire Alder Lake e Raptor Lake. L’attacco sfrutta le vulnerabilità nei componenti hardware Indirect Branch Predictor (IBP) e Branch Target Buffer (BTB), per manipolare l’esecuzione speculativa ed estrarre dati.
Indirector è stato scoperto da tre ricercatori dell'Università della California e di San Diego, che presenteranno i dettagli completi al prossimo USENIX Security Symposium che si terrà il prossimo agosto. Utilizzando tecniche avanzate di iniezione e predizione, l'attacco permette di manipolare il flusso di controllo dei processi protetti e di estrarre informazioni sensibili.
Il funzionamento dell'attacco si basa su tre meccanismi principali:
- iBranch Locator: Uno strumento personalizzato che identifica gli indici e i tag dei rami vittima.
- Iniezioni IBP/BTB: Esecuzione speculativa del codice attraverso iniezioni mirate nelle strutture di predizione.
- Bypass ASLR: Rende più semplice la manipolazione del flusso di controllo dei processi protetti identificando con precisione le posizioni dei rami indiretti.
Intel è stata avvisata dell’attacco nel febbraio 2024 e ha già informato i fornitori di hardware e software interessati. Tra le misure di mitigazione suggerite, vi è l'uso più aggressivo della Indirect Branch Predictor Barrier (IBPB) e il miglioramento della Branch Prediction Unit (BPU) tramite tag più complessi, crittografia e randomizzazione.
Tuttavia, l'implementazione di queste misure può comportare significativi compromessi in termini di prestazioni, specialmente per quanto riguarda l’IBPB; per questo, bisognerà bilanciare con attenzione le mitigazioni per evitare di impattare troppo negativamente sulle performance.
Nei sistemi Linux, l'IBPB è attivato di default durante le transizioni alla modalità SECCOMP o per compiti con rami indiretti limitati nel kernel, sebbene il suo utilizzo sia limitato a causa di un impatto sulle prestazioni del 50%.