Un nuovo attacco di tipo side-channel sta mettendo in pericolo le GPU prodotte da NVIDIA, AMD, Intel e altre aziende. Questo attacco, noto come "GPU.zip", è stato sviluppato da ricercatori provenienti da quattro università americane: l'Università del Texas ad Austin, la Carnegie Mellon University, l'Università di Washington e l'Università di Illinois Urbana-Champaign. L'attacco sfrutta la compressione dei dati grafici.
Secondo quanto riportato sul loro sito dedicato, "
GPU.zip è un nuovo tipo di side channel che espone i dati visivi elaborati dalla GPU. Questo canale sfrutta un'ottimizzazione che è dipendente dai dati, invisibile al software e presente in quasi tutte le GPU moderne: la compressione dei dati grafici. Questo studio presenta la prima analisi focalizzata sulla sicurezza di questa ottimizzazione e dimostra che può essere sfruttata per rivelare dati visivi. Ad esempio, utilizzando GPU.zip, una pagina web dannosa può estrarre pixel da un'altra pagina web nell'ultima versione di Google Chrome, violando il modello di sicurezza del browser".I ricercatori hanno informato i produttori di GPU interessati, tra cui AMD, Apple, Arm, Intel, Nvidia e Qualcomm, della vulnerabilità a marzo, ma fino ad oggi nessuno di loro, né Google, ha rilasciato una patch per risolvere il problema. Google sembra ancora in fase di valutazione per decidere "quando e come" distribuire un aggiornamento.
In genere, il software disattiva la compressione quando si trattano dati sensibili, ma i ricercatori hanno scoperto che le GPU comprimono i dati in modo visibile dal software anche quando non richiesto esplicitamente.
"
La compressione dei dati grafici è una caratteristica delle moderne GPU utilizzata per risparmiare larghezza di banda della memoria e migliorare le prestazioni senza coinvolgere il software. In particolare, le moderne GPU comprimono i dati grafici in modo lossless (senza perdita di informazioni, ndr) anche quando il software non richiede alcuna compressione".Gli algoritmi di compressione utilizzati dai produttori sono diversi tra loro e possono variare anche in base alle singole architetture. Inoltre, spesso questi algoritmi non sono documentati. Attraverso un processo di reverse engineering, i ricercatori sono riusciti a sfruttare la compressione per rivelare dati visivi dalle GPU, concentrandosi in particolare sulle GPU AMD e Intel integrate.
Nello specifico, hanno dimostrato un attacco che estrae i dati dei singoli pixel attraverso un browser web su vari dispositivi e architetture grafiche. Un esempio concreto ha mostrato che è possibile ottenere il nome utente da un iframe di Wikipedia in 30 minuti su una CPU Ryzen e in 215 minuti su una GPU Intel, con una precisione rispettivamente del 97% e del 98,3%.
GPU.zip potenzialmente può influenzare miliardi di dispositivi, ma la sua pericolosità è limitata da due fattori: la complessità e il tempo necessario per eseguire l'attacco. Inoltre, i ricercatori spiegano che l'attacco non funziona su quei siti web che impediscono l'incorporamento di iframe "cross-origin". Quindi, l'utente medio può rimanere abbastanza tranquillo.
"
Il più delle volte, i siti web sensibili già impediscono l'incorporamento da parte di siti web esterni. Di conseguenza, non sono vulnerabili al furto di pixel che abbiamo dimostrato utilizzando GPU.zip. Tuttavia, alcuni siti web rimangono vulnerabili. Ad esempio, se un utente che ha effettuato l'accesso a Wikipedia visita una pagina web dannosa, questa pagina può sfruttare GPU.zip per scoprire il nome utente Wikipedia dell'utente", spiegano i ricercatori.