Google ha pubblicato un articolo sul blog dedicato alla sicurezza per illustrare un nuovo bug Rowhammer, denominato Half-Double, che sfrutta le caratteristiche fisiche dei chip DRAM per alterare il contenuto della memoria. Questa vulnerabilità, resa nota per la prima volta nel 2014, è tuttora presente nelle più moderne DDR4.
Half-Double: nuova tecnica Rowhammer
Rowhammer è un termine composto da row (riga) e hammer (martello) che indica la tecnica usata per accedere ai dati presenti nella memoria DRAM. A causa delle dimensioni ridotte dei chip, l’accesso ripetuto (“martellamento”) ai bit nelle singole celle di memoria consente di leggere anche il contenuto delle celle di memoria adiacenti. L’indirizzamento avviene selezionando le corrispondenti riga e colonna della matrice composta dalle celle.
Il fenomeno di accoppiamento elettrico, dovuto alle limitazioni fisiche, permette di eludere le protezioni hardware e software. Un eventuale codice infetto può quindi guadagnare il completo controllo del sistema. Solitamente il bug interessa solo le due righe adiacenti. Ma Google ha scoperto con Half-Double che l’effetto Rowhammer si propaga a distanza maggiore.
Effettuando un numero elevato di accessi alla riga A e una dozzina di accessi alla riga B è possibile accedere anche alla riga C. Ciò significa che l’accoppiamento elettrico responsabile di Rowhammer ha effetti più a lungo raggio con la riduzione della dimensione delle celle di memoria.
Google ha collaborato con JEDEC per indicare possibili soluzioni al problema. L’organizzazione ha pubblicato due documenti che illustrano tecniche di mitigazione a livello di sistema e chip DRAM.