GoFetch, il bug dei chip Apple che non può essere risolto

  News, Rassegna Stampa, Security
image_pdfimage_print


Un gruppo di ricercatori ha individuato un grosso problema di sicurezza presente nei chip M1, M2 e M3 silicon di Apple che è risolvibile solo tramite una revisione dell’architettura. Chiamato “GoFetch”, il bug permette a un attaccante di sottrarre informazioni crittografiche dalla cache CPU, ottenendo le chiavi utilizzate e riuscendo quindi ad accedere ai dati cifrati.

La vulnerabilità colpisce il DMP (data memory-dependent prefetcher), una funzionalità hardware usata per ottimizzare la cifratura. Nel dettaglio, DMP riesce a prevedere gli indirizzi di memoria a cui i programmi potrebbero accedere, pre-caricando i dati corrispondenti in cache; questo migliora notevolmente le performance.

I ricercatori hanno effettuato il reverse engineering del DMP nelle CPU Apple serie M e hanno scoperto che la funzionalità carica non solo i gli indirizzi di memoria ma anche il valore stesso dei dati, violando un importante requisito di sicurezza per la crittografia dato dal paradigma constant-time.

Questo paradigma viene usato per proteggere i dispositivi da attacchi side-channel e si assicura che tutte le operazioni della CPU impieghino lo stesso tempo, indipendentemente da ciò che fanno. Il codice constant-time prevede che non si possano mischiare dati e indirizzi di memoria, cosa che succede invece nelle CPU Apple: il DMP genera accessi alla memoria che sono dipendenti dal contenuto, dando origine a codice di esecuzione variabile che diventa vulnerabile agli attacchi.

“Per sfruttare il DMP, creiamo input specifici per le operazioni crittografiche in modo che i valori simili a puntatori appaiano solo se abbiamo indovinato correttamente alcuni bit della chiave segreta” ha spiegato il team. “Verifichiamo queste ipotesi controllando se il DMP esegue una de-referenziazione attraverso l’analisi del tempo di cache. Una volta indovinato, procediamo a indovinare il gruppo successivo di bit della chiave”.

Il team ha dimostrato l’efficacia dell’attacco sulle principali implementazioni crittografiche, sia classiche che post-quantistiche. Il bug colpisce anche le microarchitetture Intel Raptor Lake di 13° generazione.

I ricercatori specificano che non esistono fix per risolvere GoFetch, ma solo dei modi per mitigare i rischi. Il team ha condiviso diverse alternative, tra le quali disabilitare completamente DMP o applicare tecniche a livello di codice per il blinding crittografico che però penalizzano notevolmente le performance.

“Dato che abbiamo scoperto che i DMP esistono anche sulle CPU Apple M2/M3 e Intel di 13a generazione, il problema sembra trascendere i processori e i fornitori di hardware specifici” spiegano i ricercatori, evidenziando che il problema andrebbe risolto con delle contromisure hardware dedicate che modificano la microarchitettura delle CPU.

Condividi l’articolo



Articoli correlati

Altro in questa categoria


https://www.securityinfo.it/2024/03/26/gofetch-il-bug-dei-chip-apple-che-non-puo-essere-risolto/?utm_source=rss&utm_medium=rss&utm_campaign=gofetch-il-bug-dei-chip-apple-che-non-puo-essere-risolto