Phoenix — attacco ai chip DDR5, che porta alla distorsione dei contenuti della memoria

I ricercatori dell'École polytechnique fédérale de Lausanne, insieme agli ingegneri di Google, hanno sviluppato una nuova tecnica di attacco di classe Rowhammer – Phoenix (CVE-2025-6202), che consente di bypassare i meccanismi di protezione TRR (Target Row Refresh) utilizzati nei chip DDR5, evitando la distorsione delle celle di memoria a causa della perdita di carica. È stato pubblicato un prototipo di exploit che permette di modificare il contenuto di un singolo bit nella memoria volatile e di ottenere un aumento dei privilegi nel sistema. La dimostrazione dell'attacco è stata effettuata su un PC con processore AMD basato sull'architettura Zen 4 e memoria DDR5 di SK Hynix, su cui sono state eseguite operazioni tipiche per desktop.

L'attacco RowHammer consente di distorcere il contenuto di singoli bit della memoria DRAM mediante letture cicliche dei dati dalle celle di memoria adiacenti. Poiché la memoria DRAM è un array bidimensionale di celle, ognuna delle quali composta da un condensatore e un transistor, la lettura continua della stessa area di memoria porta a fluttuazioni di tensione e anomalie che causano una leggera perdita di carica nelle celle vicine. Se l'intensità della lettura è elevata, la cella adiacente può perdere un volume di carica sufficientemente grande e il ciclo di rigenerazione successivo non riesce a ripristinare il suo stato originale, causando una modifica del valore dei dati conservati nella cella.

Il metodo di attacco Rowhammer è stato proposto nel 2014, dando origine a un gioco del gatto e del topo tra i ricercatori di sicurezza e i produttori di hardware: i produttori di chip tentavano di bloccare la vulnerabilità mentre i ricercatori trovavano nuovi modi per eluderla. Ad esempio, per proteggersi dal Rowhammer, i produttori di chip hanno aggiunto il meccanismo TRR (Target Row Refresh), ma si è scoperto che esso blocca la distorsione delle celle solo in casi specifici, senza proteggere da tutte le possibili varianti di attacco. Metodi di attacco sono stati sviluppati per i chip DDR3, DDR4 e DDR5 su sistemi con processori Intel, AMD e ARM, così come per la memoria video utilizzata nelle schede grafiche NVIDIA. Inoltre, sono stati trovati modi per eludere la correzione degli errori ECC e sono state proposte modalità di attacco tramite rete e attraverso l'esecuzione di codice JavaScript nei browser.

Un fattore chiave per eludere la protezione contro la distorsione delle celle di memoria in DRAM è la comprensione della logica di funzionamento del meccanismo TRR, che si basa principalmente sul nascondere i dettagli d'implementazione e sul principio della "sicurezza tramite oscurità". Per comprendere la logica di funzionamento e per effettuare reverse engineering, i ricercatori hanno realizzato schede speciali basate su FGPA Arty-A7 e ZCU104, che consentono di testare i moduli di memoria DDR5 SO-DIMM e RDIMM, rivelare i modelli di accesso alle celle di memoria, determinare quali comandi DDR a basso livello vengono trasmessi dopo operazioni software sulla memoria e analizzare la loro reazione.

Phoenix - attacco sui chip DDR5 che provoca la distorsione del contenuto della memoria

È emerso che la protezione nei chip DDR5 analizzati è implementata senza comandi aggiuntivi per gestire la frequenza di aggiornamento della memoria e si basa su circuiti con frequenza variabile per il riavvio delle celle. Per condurre con successo un attacco Rowhammer in queste condizioni, è necessaria una tracciabilità precisa di migliaia di operazioni di aggiornamento delle celle. In tali circostanze, i metodi di attacco Rowhammer precedentemente esistenti si sono dimostrati inapplicabili e i ricercatori hanno sviluppato un nuovo metodo che effettua la correzione automatica dei modelli di accesso man mano che vengono rilevate le operazioni di aggiornamento della memoria mancanti durante l'attacco.

Il metodo si è dimostrato efficace e durante i test ha permesso di ottenere una distorsione controllata di un bit di memoria su tutti e 15 i chip DDR5 testati della SK Hynix (che detiene il 36% del mercato DRAM), prodotti dalla fine del 2021 fino alla fine del 2024. La distorsione di un singolo bit si è rivelata sufficiente per creare un exploit che consente di ottenere l'accesso root al sistema durante un attacco a un sistema con CPU AMD Ryzen 7 7700X e memoria SK Hynix DDR5 in 109 secondi. Per bloccare il metodo di attacco proposto, si raccomanda di aumentare la frequenza di aggiornamento della memoria di tre volte.

Per i metodi di sfruttamento che permettono di ottenere diritti di root tramite la distorsione di un bit, sono state esaminate le seguenti tecniche: modifica del contenuto delle voci della tabella delle pagine di memoria (PTE, page table entry) per ottenere privilegi di kernel; danneggiamento della chiave pubblica RSA-2048 memorizzata in OpenSSH (è possibile portare la chiave pubblica a corrispondere alla chiave privata dell'attaccante per connettersi alla VM della vittima); bypass della verifica dei privilegi tramite la modifica della memoria del processo sudo. macchina virtuale Il metodo con PTE si è rivelato funzionante per tutti e 15 i chip testati, l'attacco tramite RSA è riuscito per 11 chip, mentre tramite sudo per 5.

Phoenix - attacco sui chip DDR5 che provoca la distorsione del contenuto della memoria

Nell'exploit per la disposizione delle tabelle delle pagine di memoria nelle celle DRAM selezionate è stata impiegata la tecnica Rubicon, rivelata contemporaneamente all'attacco Phoenix in esame. Rubicon manipola le caratteristiche di ottimizzazione nel sistema di allocazione della memoria del kernel Linux, permettendo di ottenere l'allocazione di memoria in aree con un diverso valore di "migratetype", riservate per operazioni privilegiate. La presenza del problema è stata confermata nei kernel Linux da 5.4 a 6.8, ma teoricamente la vulnerabilità copre tutti i kernel con il meccanismo di allocazione della memoria Zoned Buddy Allocator.

Oltre a semplificare la realizzazione degli attacchi di tipo Rowhammer, la tecnica Rubicon è anche applicabile per aumentare l'efficacia degli attacchi microarchitetturali, come Spectre, e per semplificare l'individuazione della posizione in memoria di dati riservati, che devono essere estratti tramite perdite durante l'esecuzione speculativa delle istruzioni. Rubicon consente di omettere una lunga fase di scansione della memoria e di identificazione di file come /etc/shadow. Invece, è possibile iniziare immediatamente a sfruttare le vulnerabilità microarchitetturali grazie alla disposizione predeterminata del file a un indirizzo fisico noto. Ad esempio, l'applicazione del metodo Rubicon ha consentito di accelerare la perdita di dati in un sistema con CPU Intel i7-8700K da 2698 a 9,5 secondi (284 volte), e su CPU AMD EPYC 7252, da 189 a 27,9 secondi (6,8 volte).

Guarda il video

Nel frattempo, un altro gruppo di ricercatori dell'Università di George Mason ha dimostrato l'applicabilità degli attacchi di tipo Rowhammer per compromettere sistemi di intelligenza artificiale. I ricercatori hanno proposto il metodo OneFlip, che consente di modificare in modo mirato il comportamento dei modelli di intelligenza artificiale attraverso la distorsione in memoria di 1 bit di informazione. È disponibile un esempio di codice per sostituire una modifica trojan in una rete neurale. È stato dimostrato come la modifica di un singolo bit può essere utilizzata per distorcere il funzionamento del modello di pilota automatico per cambiare l'interpretazione del segnale stradale "Stop" in "Limite di velocità". È stato anche esaminato l'uso del metodo per aggirare i sistemi di riconoscimento facciale. Per i modelli che memorizzano i coefficienti di peso sotto forma di interi a 32 bit, il successo dell'attacco è valutato al 99,9% senza influire sulle caratteristiche originali del modello.

Phoenix - attacco sui chip DDR5 che provoca la distorsione del contenuto della memoria


Fonte: opennet.ru
Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster