Tre gruppi di ricercatori hanno individuato nuovi attacchi Rowhammer che prendono di mira le memorie GDDR delle GPU NVIDIA, aprendo scenari piuttosto preoccupanti per la sicurezza informatica. Chi mastica un po’ di cybersecurity conosce bene la tecnica Rowhammer: si tratta di un metodo che sfrutta accessi rapidi e ripetuti alle celle della DRAM (DDR3 e DDR4) per provocare disturbi elettrici capaci di invertire i bit nella memoria. Tradotto in parole semplici, uno zero diventa uno e viceversa, e questo fenomeno apparentemente banale può essere sfruttato per ottenere privilegi elevati, aggirare protezioni e mettere le mani su dati sensibili.
Il primo attacco Rowhammer risale al 2014, e nel tempo la tecnica si è evoluta parecchio. L’anno scorso qualcuno era riuscito per la prima volta a colpire la memoria GDDR di una GPU NVIDIA, ma con risultati piuttosto modesti: appena otto inversioni di bit. Ora invece la situazione è cambiata. I tre nuovi attacchi scoperti dai ricercatori permettono, in teoria, di ottenere il controllo completo della memoria della CPU. E uno di questi funziona persino quando è attiva la protezione IOMMU (Input–Output Memory Management Unit), che normalmente dovrebbe impedire proprio questo tipo di accesso non autorizzato.
GDDRHammer, GeForge e GPUBreach: come funzionano
I tre attacchi sono stati battezzati GDDRHammer, GeForge e GPUBreach, e ognuno segue un approccio leggermente diverso per raggiungere lo stesso obiettivo.
GDDRHammer è stato testato sulle GPU RTX A6000 con architettura Ampere. Rispetto ai tentativi precedenti, qui le cose si fanno serie: in media riesce a invertire 129 bit. Ma non è solo una questione di numeri. Il punto chiave è che GDDRHammer permette di manipolare l’allocatore di memoria per rompere l’isolamento tra le tabelle delle pagine della GPU e i dati utente memorizzati sulla scheda grafica. Le tabelle delle pagine sono strutture dati fondamentali, perché gestiscono le mappature tra indirizzi virtuali e indirizzi fisici. Una volta compromesse, un malintenzionato potrebbe accedere alla memoria della GPU sia in lettura che in scrittura.
GeForge funziona in modo simile a GDDRHammer, con una differenza: invece di colpire la tabella delle pagine, prende di mira la directory delle pagine. Il risultato finale però non cambia granché: accesso alla memoria della CPU, escalation dei privilegi, apertura di una root shell ed esecuzione di comandi arbitrari. Praticamente un incubo per chiunque si occupi di sicurezza.
GPUBreach è forse il più insidioso dei tre. Sfrutta vulnerabilità nei driver per ottenere privilegi root e, come accennato, funziona anche quando la protezione IOMMU è attiva. Negli altri due casi, attivare IOMMU nel BIOS sarebbe sufficiente a bloccare l’attacco. Per GPUBreach invece la contromisura suggerita è attivare l’opzione Error Correcting Codes (ECC) tramite linea di comando, anche se questo comporta una riduzione della memoria disponibile sulla GPU.
Un rischio concreto o solo teoria?
C’è un aspetto importante da considerare: questi tre attacchi Rowhammer contro le GPU NVIDIA non funzionano sulle schede grafiche di ultima generazione. I ricercatori li hanno dimostrati su hardware meno recente, e va detto che si tratta sostanzialmente di esercizi teorici, difficilmente sfruttabili nella pratica da un attaccante reale. Detto questo, la ricerca dimostra che la superficie di attacco legata alle memorie delle GPU è tutt’altro che trascurabile, e che le protezioni attuali non sempre bastano a garantire un isolamento completo tra GPU e CPU.
