AMD, PSF croce e delizia delle CPU Zen 3: migliori prestazioni ma potenziale punto debole

Another ICT Guy

AMD, PSF croce e delizia delle CPU Zen 3: migliori prestazioni ma potenziale punto debole

Si chiama Predictive Store Forwarding (PSF), è una tecnologia che permette ai processori AMD basati su architettura Zen 3 di offrire migliori prestazioni, ma al tempo stesso rappresenta un potenziale punto debole in termini di sicurezza. È la stessa AMD a parlare di “implicazioni per la sicurezza” in un documento pubblicato sul proprio sito. I processori Zen 3 al momento in commercio sono i Ryzen 5000 desktop, gran parte dell’offerta mobile e gli EPYC 7003 per l’ambito server, ma in arrivo c’è anche una nuova famiglia di Ryzen Threadripper per il mondo workstation.

“PSF”, si legge, “è un’ottimizzazione microarchitetturale basata sull’hardware progettata per migliorare le prestazioni nell’esecuzione del codice tramite la previsione delle dipendenze tra operazioni di load e store. In modo simile a tecnologie come la branch prediction, con PSF il processore suppone quale dovrebbe essere il risultato di un load ed esegue speculativamente le istruzioni successive“.

Nel caso in cui l’ipotesi fatta sia errata (fortunatamente non accade così spesso), i risultati sbagliati vengono eliminati dalla pipeline dalla CPU, ed è proprio questo processo che negli ultimi anni si è dimostrato potenzialmente vulnerabile ai cosiddetti attacchi “side channel” che permettono a malintenzionati di ottenere informazioni sensibili – pensate alle diverse versioni dell’attacco Spectre.

“In particolare”, scrive AMD, “i programmi che implementano l’isolamento interamente via software, noto come sandboxing, potrebbero doversi preoccupare delle speculazioni errate della CPU, le quali possono avvenire a causa di predizioni errate di PSF. Poiché la speculazione PSF è limitata la contesto del programma corrente, l’impatto di una speculazione errata è simile a quello di uno ‘speculative store bypass’, ad esempio Spectre v4“.

AMD illustra due casi in cui si può verificare una predizione errata di PSF. La prima è quando l’accoppiata store/load ha avuto una dipendenza per un po’, ma poi tale dipendenza viene interrotta. “Questo può avvenire se l’indirizzo di store o load cambia durante l’esecuzione del programma”. La seconda può verificarsi “se c’è un alias nella struttura predittiva di PSF. “Il preditore PSF è progettato per tracciare coppie store/load su porzioni del loro registro RIP (instruction pointer). È possibile che una coppia store/load con una dipendenza possa avere un alias nel predittore con un’altra coppia che non lo fa. Questo potrebbe portare a una speculazione errata quando viene eseguita la seconda accoppiata store/load”. Non vi sarebbero invece rischi ove l’isolamento venga fatto tramite meccanismi hardware come, ad esempio, implementando spazi di indirizzamento separati.

In ambedue i casi indicati, sorge un problema di sicurezza se esiste un codice che implementa un qualche tipo di controllo che può essere aggirato quando la CPU specula in modo errato. Ciò può verificarsi se un programma (come un browser) ospita parti di codice non attendibile e il codice in questione è in grado di influenzare il modo in cui la CPU specula in altre regioni in un modo che si traduce in perdita di dati.

In conclusione, benché AMD consigli di lasciare Predictive Store Forwarding attivato come di default, l’azienda ne sottolinea – in un atto di estrema trasparenza, questo va sottolineato – le potenziali implicazioni per la sicurezza. AMD non è al momento a conoscenza di alcun codice che potrebbe essere considerato vulnerabile a causa del comportamento di PSF, ma nel documento illustra come disabilitare da Linux la funzionalità “se lo si desidera”, in attesa che le patch proposte vengano integrate nel kernel.

AMD ritiene che per la maggior parte delle applicazioni il rischio per la sicurezza di PSF “è probabilmente basso” e, laddove viene richiesto l’isolamento, tecniche come address space isolation siano preferibili rispetto al sandboxing software. È plausibile che AMD stia lavorando anche con Microsoft per aggiornare Windows, mentre è al momento non è noto il potenziale impatto prestazionale derivante dalla disattivazione della tecnologia PSF.

Fonte: http://feeds.hwupgrade.it/

 

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *