Kwesbaarheid in AMD SEV wat toelaat dat enkripsiesleutels bepaal word

Ontwikkelaars van die Google Wolk-span geopenbaar kwesbaarheid (CVE-2019-9836) in die implementering van AMD SEV (Secure Encrypted Virtualization)-tegnologie, wat toelaat dat data wat met hierdie tegnologie beskerm word, in die gedrang kom. AMD SEV op hardewarevlak bied deursigtige enkripsie van virtuele masjiengeheue, waarin slegs die huidige gasstelsel toegang het tot gedekripteerde data, en ander virtuele masjiene en die hipervisor ontvang 'n geënkripteerde stel data wanneer hulle probeer om toegang tot hierdie geheue te verkry.

Die geïdentifiseerde probleem maak dit moontlik om die inhoud van die private PDH-sleutel, wat verwerk word op die vlak van 'n aparte beskermde PSP-verwerker (AMD Security Processor), wat ontoeganklik is vir die hoofbedryfstelsel, heeltemal te herstel.
Met die PDH-sleutel kan die aanvaller dan die sessiesleutel en geheime volgorde herstel wat gespesifiseer is tydens die skep van die virtuele masjien en toegang tot die geënkripteerde data verkry.

Die kwesbaarheid word veroorsaak deur gebreke in die implementering van elliptiese kromme-enkripsie (ECC), wat dit moontlik maak aanval om die krommeparameters te herstel. Tydens die uitvoering van 'n beskermde virtuele masjien-opstartopdrag, kan 'n aanvaller krommeparameters stuur wat nie voldoen aan NIST-aanbevole parameters nie, wat lei tot die gebruik van lae orde puntwaardes in vermenigvuldigingsoperasies met privaat sleuteldata.

Sekuriteit van die ECDH-protokol direk hang af van orde die gegenereerde beginpunt van die kromme, waarvan die diskrete logaritme 'n baie moeilike taak is. Tydens een van die inisialiseringstappe van die AMD SEV-omgewing, gebruik private sleutelberekeninge parameters wat van die gebruiker ontvang is. In wese vermenigvuldig die bewerking twee punte, waarvan een ooreenstem met die private sleutel. As die tweede punt na lae-orde priemgetalle verwys, dan kan die aanvaller die parameters van die eerste punt (bissies van die modulus wat in die modulo-operasie gebruik word) bepaal deur deur alle moontlike waardes te soek. Om die private sleutel te bepaal, kan die geselekteerde priemgetalfragmente dan saamgevoeg word deur gebruik te maak van Chinese resstelling.

Die probleem raak AMD EPYC-bedienerplatforms wat SEV-firmware tot weergawe 0.17 bou 11 gebruik. AMD het reeds gepubliseer Firmware-opdatering wat blokkering van punte byvoeg wat nie aan die NIST-kromme voldoen nie. Terselfdertyd bly voorheen gegenereerde sertifikate vir PDH-sleutels geldig, wat 'n aanvaller toelaat om 'n aanval uit te voer om virtuele masjiene te migreer van omgewings wat beskerm word teen die kwesbaarheid na omgewings wat vatbaar is vir die probleem. Die moontlikheid om 'n aanval uit te voer om die firmwareweergawe terug te rol na 'n ou kwesbare vrystelling word ook genoem, maar hierdie moontlikheid is nog nie bevestig nie.

Bron: opennet.ru

Voeg 'n opmerking