Training Solo: una vulnerabilità Spectre-v2 che colpisce le CPU Intel

vulnerabilità

Ricercatori della Vrije Universiteit Amsterdam reso noto, attraverso un post sul blog, a "Training Solo, una nuova famiglia di attacchi Spectre-v2 che sfruttano i difetti nelle previsioni speculative per infrangere i confini di sicurezza tra spazi di esecuzione privilegiati e non privilegiati, influenzando direttamente le CPU Intel.

Le nuove tecniche consentire l'estrazione di contenuti sensibili dal kernel o l'hypervisor a velocità fino a 17 KB al secondo, anche su sistemi che implementano mitigazioni moderne come IBPB, eIBRS o BHI_NO.

Training Solo, il nuovo volto di Spectre-v2 riemerge con forza

Sin dalla sua scoperta, Spectre-v2 è stata una delle classi di vulnerabilità più difficili da mitigare a causa della sua natura speculativa e "Training Solo», viene nuovamente introdotto un problema cruciale, poiché non richiede alcun codice controllato dall'aggressore per influenzare il predittore di diramazione, ma si basa invece su frammenti di codice esistenti (gadget) all'interno del kernel o dell'hypervisor per addestrare il predittore dallo spazio utente.

Il nostro lavoro dimostra che gli aggressori possono speculativamente dirottare il flusso di controllo all'interno dello stesso dominio (ad esempio, il kernel) e far trapelare segreti oltre i limiti dei privilegi, ripristinando i classici scenari di Spectre-v2 senza dover ricorrere a potenti sandbox come eBPF. Abbiamo creato un nuovo set di test per analizzare il predittore di ramificazione in uno scenario di auto-addestramento.

ricercatori hanno dimostrato che manipolando questi gadget (ad esempio sfruttando i filtri SECCOMP basati su cBPF) l'esecuzione speculativa può essere indotta che fa trapelare dati dal sistema privilegiato.

Attraverso questa tecnica, chiamata "allenamento individuale", la storia del predittore può essere alterata di forchette in modo che si verifichino salti errati durante l'esecuzione speculativa, con l'obiettivo di far trapelare il contenuto della memoria attraverso effetti collaterali nella cache.

I Gli attacchi di Training Solo sono disponibili in tre varianti, ognuno sfruttando diverse debolezze:

  1.  Manipolazione della cronologia dei rami con i gadget del kernel: Sfrutta le chiamate di sistema come SECCOMP, in cui i filtri possono indurre rami speculativi spuri, con perdite di memoria a velocità di 1,7 KB/s sulle CPU Intel Tiger Lake e Lion Cove.
  2.  Collisioni dei puntatori di istruzione (IP) nel buffer di previsione di diramazione (BTB): In questo caso, due rami indiretti diversi possono influenzarsi a vicenda se i loro indirizzi entrano in collisione nel buffer, consentendo così una previsione errata delle destinazioni speculative.
  3.  Influenze tra rami diretti e indiretti: Questa tecnica, basata su due vulnerabilità specifiche (CVE-2024-28956 (ITS) e CVE-2025-24495), sfrutta il modo in cui le diramazioni dirette possono influenzare la previsione delle diramazioni indirette. Utilizzando questo approccio, l'hash della password di root è stato recuperato dopo aver eseguito passwd -s in soli 60 secondi.

Il nostro lavoro si concentra sulla rottura dell'isolamento del dominio in modo mirato attraverso attacchi di auto-addestramento. Tuttavia, i problemi hardware rilevati nel nostro set di test influiscono anche sull'implementazione dell'isolamento, poiché si è dato per scontato che i rami diretti non sarebbero stati utilizzati per l'addestramento dei rami indiretti. 

Impatto e portata delle nuove vulnerabilità

Gli attacchi interessano un'ampia gamma di CPU Intel, tra cui linee popolari come Coffee Lake, Tiger Lake, Ice Lake e Rocket Lake, nonché server Xeon di seconda e terza generazione. Inoltre, anche le architetture Lunar Lake e Arrow Lake sono vulnerabili secondo CVE-2-3.

Per mitigare questi attacchi, Intel ha rilasciato un aggiornamento del microcodice che introduce una nuova istruzione: IBHF (Indirect Branch History Fence), progettata per impedire la contaminazione della cronologia delle diramazioni. Questa modifica deve essere implementata in modo esplicito dopo qualsiasi codice che influisca sul predittore di diramazione. Per le CPU più vecchie, è stato consigliato di utilizzare soluzioni software che cancellano manualmente la cronologia.

Da parte loro, gli sviluppatori del kernel di Linux ha già iniziato ad integrare patch per contrastare queste tecniche, comprese misure che spostano i salti indiretti fuori dalle aree di cache sensibili e protezione contro cBPF.

AMD, da parte sua, ha confermato che Queste tecniche non influenzare i tuoi processori. ARM ha indicato che sarebbero stati esposti solo i suoi chip più vecchi, privi di supporto per le estensioni FEAT_CSV2_3 e FEAT_CLRBHB.

Infine, se sei interessato a saperne di più, puoi consultare i dettagli Nel seguente collegamento.