Otkrili su ranjivost u AMD SEV, koja omogućuje određivanje ključeva šifriranja

AMD SEV

Programeri Google Cloud tima prepoznali su ranjivost (CVE-2019-9836) u primjeni AMD SEV tehnologije (sigurna šifrirana virtualizacija), što može ugroziti podatke zaštićene ovom tehnologijom.

AMD SEV na hardverskoj razinie pruža transparentno šifriranje memorije virtualnih strojeva, gdje samo trenutni gostujući sustav ima pristup dešifriranim podacima, dok ostatak virtualnih strojeva i hipervizor dobivaju šifrirani skup podataka kada pristupe ovoj memoriji.

Utvrđeni problem omogućuje potpuno vraćanje sadržaja privatnog ključa PDH koji se obrađuje na razini jednog zaštićenog procesora PSP (AMD Security Processor) koji nije dostupan za glavni operativni sustav.

Imajući PDH ključ, napadač može vratiti ključ sesije i tajni slijed navedeno prilikom stvaranja virtualnog stroja i pristupa šifriranim podacima.

Ranjivost je posljedica nedostataka u provedbi eliptičnih krivulja (ECC) koji se koriste za šifriranje, a koji omogućuju napad da obnovi parametre krivulje.

Tijekom izvršavanja naredbe start zaštićenog virtualnog stroja, napadač može poslati parametre krivulje koji se ne podudaraju s parametrima preporučenima od NIST-a, što će dovesti do upotrebe točaka niskog reda u operacijama množenja s podacima privatni ključ.

Utvrđeno je da je implementacija SEV-ove eliptične krivulje (ECC) ranjiva na napad nevaljane krivulje. Na naredbu pokretanja pokretanja napadač može poslati

ECC točke malog reda nisu u službenim NIST krivuljama i prisiljavaju firmware SEV da pomnoži malu točku narudžbe s privatnim DH skalarnog firmwarea.

Skupljajući dovoljno modularnog otpada, napadač može oporaviti cijeli PDH privatni ključ. S PDH-om napadač može oporaviti ključ sesije i pokrenuti tajnu virtualnog stroja. To krši jamstva povjerljivosti koja nudi SEV.

Sigurnost ECDH protokola izravno ovisi o redoslijedu generirane početne točke krivulje, čiji je diskretni logaritam vrlo složen zadatak.

U jednom od koraka za inicijalizaciju AMD SEV okruženja, parametri dobiveni od korisnika koriste se u izračunima s privatnim ključem.

U osnovi se izvodi operacija množenja dviju točaka, od kojih jedna odgovara privatnom ključu.

Ako se druga točka odnosi na proste brojeve nižeg reda, tada napadač može odrediti parametre prve točke (bitovi modula koji se koriste u operaciji moduliranja potencijalom) nabrajanjem svih mogućih vrijednosti. Odabrani fragmenti prostih brojeva mogu se kombinirati za određivanje privatnog ključa pomoću kineskog teorema o rezidualima.

Nevaljani napad krivulje je mjesto gdje se množenje ECDH bodova izvodi na drugoj krivulji - različitim parametrima (a, b). To je omogućeno u kratkoj Weierstrassovoj funkciji zbroja bodova jer se parametar "b" ne koristi.

Na ovoj krivulji točka ima mali primarni poredak. Pokušavajući sve moguće vrijednosti za malu točku narudžbe, napadač može dohvatiti privatne skalarne bitove (modulirati redoslijed).

AMD EPYC poslužiteljske platforme koje koriste SEV firmware do verzije 0.17 build 11 predstavljaju problem.

AMD je već objavio ažuriranje firmvera, koji je dodao blokadu za korištenje točaka koje se ne podudaraju s NIST krivuljom.

Istodobno, prethodno generirani certifikati za PDH ključeve ostaju valjani, omogućujući napadaču da izvrši napad na migraciju virtualnog stroja iz okruženja koja su zaštićena od ranjivosti u ona koja su predmet problema.

Također se spominje mogućnost izvođenja napada povratom na verziju firmvera prethodne ranjive verzije, ali ova značajka još nije potvrđena.

izvor: https://seclists.org/


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.