Hanno rilevato una vulnerabilità in AMD SEV, che consente di determinare le chiavi di crittografia

AMD SEV

Gli sviluppatori del team di Google Cloud hanno identificato una vulnerabilità (CVE-2019-9836) nell'implementazione della tecnologia AMD SEV (virtualizzazione crittografata sicura), che può compromettere i dati protetti con questa tecnologia.

AMD SEV a livello hardwaree fornisce la crittografia trasparente della memoria delle macchine virtuali, dove solo il sistema guest corrente ha accesso ai dati decrittografati, mentre il resto delle macchine virtuali e l'hypervisor ottengono una serie di dati crittografati quando accedono a questa memoria.

Il problema individuato consente di ripristinare completamente il contenuto della chiave privata PDH che viene elaborato a livello di un singolo processore PSP (AMD Security Processor) protetto che non è disponibile per il sistema operativo principale.

Avendo la chiave PDH, l'attaccante può ripristinare la chiave di sessione e la sequenza segreta specificato durante la creazione della macchina virtuale e l'accesso ai dati crittografati.

La vulnerabilità è dovuta a difetti nell'implementazione delle curve ellittiche (ECC) utilizzati per la crittografia, che consentono a un attacco di ripristinare i parametri della curva.

Durante l'esecuzione del comando di avvio della macchina virtuale protetta, l'aggressore può inviare parametri di curva che non corrispondono ai parametri consigliati dal NIST, il che porterà all'uso di valori in punti di ordine inferiore nelle operazioni di moltiplicazione con dati da privati chiave.

L'implementazione della curva ellittica (ECC) di SEV è risultata vulnerabile ad attacchi di curva non validi. Al comando di avvio di avvio, un utente malintenzionato può inviare

I punti ECC di piccolo ordine non sono nelle curve NIST ufficiali e costringono il firmware SEV a moltiplicare un punto di piccolo ordine per il DH privato del firmware scalare.

Raccogliendo una quantità sufficiente di rifiuti modulari, un utente malintenzionato può recuperare la chiave privata PDH completa. Con PDH, un utente malintenzionato può recuperare la chiave di sessione e avviare il segreto della macchina virtuale. Ciò infrange le garanzie di riservatezza offerte da SEV.

La sicurezza del protocollo ECDH dipende direttamente dall'ordine del punto di inizio generato della curva, il cui logaritmo discreto è un compito molto complesso.

In uno dei passaggi per inizializzare l'ambiente AMD SEV, i parametri ottenuti dall'utente vengono utilizzati nei calcoli con una chiave privata.

In sostanza viene eseguita l'operazione di moltiplicazione di due punti, uno dei quali corrisponde alla chiave privata.

Se il secondo punto si riferisce a numeri primi di ordine inferiore, l'attaccante può determinare i parametri del primo punto (i bit del modulo utilizzati nell'operazione modulo a esponenziazione) elencando tutti i valori possibili. Frammenti selezionati di numeri primi possono essere combinati per determinare la chiave privata utilizzando il teorema cinese sui residui.

Un attacco curva non valido è il punto in cui la moltiplicazione dei punti ECDH viene eseguita su una curva diversa - parametri diversi (a, b). Ciò è reso possibile dalla funzione somma dei punti di Weierstrass poiché il parametro "b" non viene utilizzato.

Su questa curva, il punto ha un piccolo ordine primario. Provando tutti i valori possibili per il punto di piccolo ordine, un utente malintenzionato può recuperare i bit scalari privati ​​(modulare l'ordine).

Le piattaforme server AMD EPYC che utilizzano il firmware SEV fino alla versione 0.17 build 11 sono un problema.

AMD ha già rilasciato un aggiornamento del firmware, che ha aggiunto un blocco sull'utilizzo di punti che non corrispondono alla curva NIST.

Allo stesso tempo, i certificati generati in precedenza per le chiavi PDH rimangono validi, consentendo a un utente malintenzionato di effettuare un attacco alla migrazione della macchina virtuale da ambienti protetti dalla vulnerabilità a quelli soggetti al problema.

Viene anche menzionata la possibilità di eseguire un attacco rollback sulla versione firmware della precedente versione vulnerabile, ma questa funzione non è stata ancora confermata.

fonte: https://seclists.org/


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.