Plundervolt hè un novu metudu di attaccu à i prucessori Intel chì afecta a tecnulugia SGX

Intel liberatu aghjurnamentu di u microcode chì corregge vulnerabilità (CVE-2019-14607) permettendu Per mezu di a manipulazione di u meccanismo di cuntrollu di tensione è frequenza dinamica in u CPU, iniziu danni à u cuntenutu di e cellule di dati, ancu in i zoni utilizati per i calculi in enclavi Intel SGX isolati. L'attaccu hè chjamatu Plundervolt, è potenzalmentu permette à un utilizatore locale di scalate i so privileggi nantu à u sistema, causanu una denegazione di serviziu è accede à e dati sensittivi.

L'attaccu hè periculosu solu in u cuntestu di manipulazioni cù calculi in enclaves SGX, postu chì esige diritti di root in u sistema per esse realizatu. In u casu più simplice, un attaccu pò ottene distorsioni di l'infurmazioni processati in l'enclave, ma in scenarii più cumplessi, a pussibilità di ricreà e chjave private guardate in l'enclave utilizatu per a criptografia cù l'algoritmi RSA-CRT è AES-NI ùn hè micca. esclusi. A tecnica pò ancu esse usata per generà errori in l'algoritmi inizialmente curretti per pruvucà vulnerabilità quandu u travagliu cù a memoria, per esempiu, per urganizà l'accessu à una zona fora di u cunfini di u buffer attribuitu.
Codice prototipu per fà un attaccu publicatu nantu à GitHub

L'essenza di u metudu hè di creà e cundizioni per l'occurrence di corruzioni di dati inespettati durante i calculi in SGX, da quale l'usu di criptografia è autentificazione di memoria in l'enclave ùn pruteghja micca. Per intruduce a distorsione, hè statu pussibule di utilizà interfacce di software standard per u cuntrollu di a frequenza è a tensione, di solitu utilizatu per riduce u cunsumu di energia durante u tempu inattivu di u sistema è attivà u massimu rendimentu durante u travagliu intensivu. E caratteristiche di frequenza è voltage spannu tuttu u chip, cumpresu l'impattu di l'informatica in un enclave isolatu.

Cambiendu a tensione, pudete creà e cundizioni in quale a carica ùn hè micca abbastanza per rinfurzà una cellula di memoria in u CPU, è u so valore cambia. Differenza chjave da l'attaccu RowHammer hè chì RowHammer permette di cambià u cuntenutu di i bits individuali in a memoria DRAM per leghje ciclicamente dati da e cellule vicine, mentri Plundervolt vi permette di cambià bits in u CPU quandu i dati sò digià stati caricati da a memoria per u calculu. Questa funzione permette di scaccià u cuntrollu di l'integrità è i meccanismi di criptografia utilizati in SGX per i dati in memoria, postu chì i valori in memoria restanu curretti, ma ponu esse distorti durante l'operazioni cun elli prima chì u risultatu hè scrittu in memoria.

Se stu valore mudificatu hè utilizatu in u prucessu di multiplicazione di u prucessu di criptografia, l'output hè rifiutatu cù ciphertext incorrect. Avè l'abilità di cuntattà un gestore in SGX per criptà i so dati, un attaccu pò, causendu fallimenti, accumulà statistiche nantu à i cambiamenti in u ciphertext output è, in pochi minuti, restaurà u valore di a chjave guardata in l'enclave. U testu di input uriginale è u testu di criptu di output currettu sò cunnisciuti, a chjave ùn cambia micca, è l'output di un testu criptu incorrectu indica chì un pocu hè statu distortu à u valore oppostu.

Dopu avè analizatu i coppie di valori di testi cifri curretti è currutti accumulati durante diversi fallimenti, utilizendu metudi di analisi di fallimentu differenziale (DFA, Analisi di difetti differenziali) Can predice chjavi probabili utilizati per a criptografia simmetrica AES, è dopu, analizendu l'intersezzione di e chjavi in ​​diversi setti, determina a chjave desiderata.

Diversi mudelli di processori Intel sò affettati da u prublema, cumprese CPU Intel Core cù 6
10a generazione, è ancu a quinta è sesta generazione di Xeon E3, a prima è a seconda generazione di Intel Xeon Scalable, Xeon D,
Xeon W è Xeon E.

Ricordemu chì a tecnulugia SGX (Estensioni di Guardia Software) apparsu in i processori Intel Core di sesta generazione (Skylake) è offerte una seria d'istruzzioni chì permettenu l'applicazioni à u livellu di l'utilizatori per attribuisce zoni di memoria chjusi - enclaves, u cuntenutu di quale ùn pò micca esse lettu o mudificatu ancu da u kernel è u codice in esecuzione in modi ring0, SMM è VMM. Hè impussibile di trasferisce u cuntrollu à u codice in l'enclave utilizendu funzioni tradiziunali di saltu è manipulazioni cù i registri è a pila; per trasfirià u cuntrollu à l'enclave, una nova struzzione creata apposta hè aduprata chì esegue un cuntrollu di l'autorità. In questu casu, u codice pusatu in l'enclave pò utilizà metudi di chjama classica per accede à e funzioni in l'enclave è struzzioni speciali per chjamà funzioni esterne. A criptografia di memoria Enclave hè aduprata per pruteggiri contr'à attacchi di hardware cum'è a cunnessione à un modulu DRAM.

Source: opennet.ru

Add a comment