Un gruppo di ricercatori dell'Università libera di Amsterdam, dell'ETH di Zurigo e dell'azienda Qualcomm ha studiato l'efficacia della protezione contro gli attacchi di tipo , che consentono di modificare il contenuto di singoli bit nella memoria ad accesso casuale dinamica (DRAM). I risultati sono stati deludenti e i chip DDR4 dei principali produttori sono ancora ().
) La vulnerabilità RowHammer consente di alterare il contenuto di singoli bit di memoria attraverso la lettura ciclica dei dati da celle di memoria adiacenti. Poiché la memoria DRAM è un array bidimensionale di celle, ognuna delle quali è composta da un condensatore e da un transistor, la lettura continua della stessa area di memoria provoca fluttuazioni di tensione e anomalie, che comportano una leggera perdita di carica nelle celle adiacenti. Se l'intensità della lettura è sufficientemente elevata, una cella potrebbe perdere una quantità rilevante di carica e il successivo ciclo di rigenerazione non riuscirà a ripristinarne lo stato originale, portando a una modifica del valore dei dati memorizzati nella cella.
Per bloccare tale effetto, i moderni chip DDR4 utilizzano la tecnologia TRR (Target Row Refresh), progettata per prevenire la distorsione delle celle durante un attacco RowHammer. Il problema è che non esiste un approccio unico per l'implementazione del TRR e ogni produttore di CPU e memoria lo interpreta a proprio modo, adotta le proprie varianti di protezione e non rivela i dettagli di implementazione.
Lo studio dei metodi di blocco del RowHammer utilizzati dai produttori ha permesso di trovare facilmente modi per bypassare la protezione. Durante la verifica, è emerso che il principio praticato dai produttori di " (security by obscurity) nell'implementazione del TRR aiuta solo per la protezione in casi specifici, coprendo attacchi tipici che manipolano la variazione di carica nelle celle in una o due righe adiacenti.
L'utilità sviluppata dai ricercatori consente di verificare la vulnerabilità dei chip a varianti multiple dell'attacco RowHammer, in cui il tentativo di influenzare la carica viene effettuato su più righe di celle di memoria contemporaneamente. Tali attacchi permettono di eludere la protezione TRR implementata da alcuni produttori e portano a distorsioni dei bit di memoria anche su hardware nuovo con memoria DDR4.
Dei 42 moduli DIMM studiati, 13 moduli si sono rivelati vulnerabili a varianti non standard dell'attacco RowHammer, nonostante la protezione dichiarata. I moduli problematici sono stati prodotti da SK Hynix, Micron e Samsung, la cui produzione il 95% del mercato DRAM.
Oltre alla DDR4, sono stati analizzati anche i chip LPDDR4 utilizzati nei dispositivi mobili, che si sono rivelati sensibili a varianti avanzate dell'attacco RowHammer. In particolare, la memoria utilizzata negli smartphone Google Pixel, Google Pixel 3, LG G7, OnePlus 7 e Samsung Galaxy S10 si è rivelata vulnerabile.
I ricercatori sono riusciti a riprodurre su chip DDR4 problematici diverse tecniche di sfruttamento. Ad esempio, l'uso dell'exploit RowHammer- per PTE (Page Table Entries) ha richiesto, per ottenere privilegi di sistema, un attacco che variava da 2,3 secondi a tre ore e quindici secondi, a seconda dei chip testati. per danneggiare la chiave RSA-2048 memorizzata in memoria ha richiesto da 74,6 secondi a 39 minuti e 28 secondi. Per bypassare la verifica dei privilegi tramite la modifica della memoria del processo sudo ci sono voluti 54 minuti e 16 secondi.
È stata pubblicata un'utilità . Per effettuare con successo un attacco è necessaria la conoscenza della mappatura degli indirizzi fisici utilizzati nel controller di memoria in relazione ai banchi e alle righe di celle di memoria. Per determinare la mappatura è stata sviluppata un'utilità aggiuntiva , che richiede l'uso dei diritti di root. A breve sarà anche pubblicata un'applicazione per testare la memoria degli smartphone.
Azienda e Si è consigliato di utilizzare memoria con correzione degli errori (ECC), controller di memoria con supporto Maximum Activate Count (MAC) e di applicare una frequenza di rigenerazione aumentata per la protezione. Tuttavia, i ricercatori ritengono che non esista una soluzione garantita per proteggere i chip già rilasciati contro Rowhammer, e l'uso di ECC e l'aumento della frequenza di rigenerazione della memoria si sono rivelati inefficaci. Ad esempio, è già stato proposto per attaccare la memoria DRAM eludendo la protezione ECC, e inoltre è stata dimostrata la possibilità di effettuare un attacco alla DRAM attraverso , da e eseguendo JavaScript nel browser.
Fonte: opennet.ru
