AMD SEV ievainojamība, kas ļauj noteikt šifrēšanas atslēgas

Izstrādātāji no Google Cloud komandas identificēts ievainojamība (CVE-2019-9836) AMD SEV (Secure Encrypted Virtualization) tehnoloģijas ieviešanā, kas ļauj apdraudēt datus, kas aizsargāti, izmantojot šo tehnoloģiju. AMD SEV aparatūras līmenī nodrošina caurspīdīgu virtuālās mašīnas atmiņas šifrēšanu, kurā tikai pašreizējai viesu sistēmai ir piekļuve atšifrētiem datiem, un citas virtuālās mašīnas un hipervizors saņem šifrētu datu kopu, mēģinot piekļūt šai atmiņai.

Konstatētā problēma ļauj pilnībā atjaunot privātās PDH atslēgas saturu, kas tiek apstrādāts atsevišķa aizsargāta PSP procesora (AMD Security Processor) līmenī, kas nav pieejams galvenajai OS.
Ja ir PDH atslēga, uzbrucējs var atgūt sesijas atslēgu un slepeno secību, kas norādīta, veidojot virtuālo mašīnu, un piekļūt šifrētajiem datiem.

Ievainojamību izraisa eliptiskās līknes šifrēšanas (ECC) ieviešanas trūkumi, kas ļauj uzbrukums lai atjaunotu līknes parametrus. Aizsargātas virtuālās mašīnas palaišanas komandas izpildes laikā uzbrucējs var nosūtīt līknes parametrus, kas neatbilst NIST ieteiktajiem parametriem, kā rezultātā reizināšanas operācijās ar privātās atslēgas datiem tiek izmantotas zemas kārtas vērtības.

ECDH protokola drošība tieši atkarīgs no pasūtījums ģenerētais līknes sākumpunkts, kura diskrētais logaritms ir ļoti sarežģīts uzdevums. Vienā no AMD SEV vides inicializācijas soļiem privātās atslēgas aprēķinos tiek izmantoti no lietotāja saņemtie parametri. Būtībā operācija ir divu punktu reizināšana, no kuriem viens atbilst privātajai atslēgai. Ja otrais punkts attiecas uz zemas kārtas pirmskaitļiem, tad uzbrucējs var noteikt pirmā punkta parametrus (modulo operācijā izmantoto moduļa bitus), pārmeklējot visas iespējamās vērtības. Lai noteiktu privāto atslēgu, atlasītos pirmskaitļu fragmentus pēc tam var apvienot, izmantojot Ķīniešu atlikuma teorēma.

Problēma skar AMD EPYC serveru platformas, kas izmanto SEV programmaparatūru līdz versijai 0.17 build 11. AMD jau ir опубликовала Programmaparatūras atjauninājums, kas bloķē punktus, kas neatbilst NIST līknei. Tajā pašā laikā iepriekš ģenerētie sertifikāti PDH atslēgām paliek spēkā, kas ļauj uzbrucējam veikt uzbrukumu, lai migrētu virtuālās mašīnas no vides, kas ir aizsargāta pret ievainojamību, uz vidi, kas ir jutīga pret problēmu. Tiek pieminēta arī iespēja veikt uzbrukumu, lai atgrieztu programmaparatūras versiju uz vecu ievainojamu versiju, taču šī iespēja vēl nav apstiprināta.

Avots: opennet.ru

Pievieno komentāru