CPU AMD mikroprotsessori käivitamise nõrkus, mis võimaldab SEV-SNP isolatsiooni ületada

Google'i turva-uuringute spetsialistid avaldasid teavet kahjustuse (CVE-2024-56161) kohta AMD protsessorites, mis mõjutab mikrokoodilaadijat ja võimaldab teenindusprotsessorite digitaalsete allkirjade kontrollimise mehhanismi ületada mikrokoodi uuendamisel. Modifitseeritud mikrokoodi laadimine võimaldab ohustada AMD SEV (Secure Encrypted Virtualization) mehhanismi, mis on kasutusel virtualiseerimissüsteemides virtuaalmasinate kaitsmiseks hüperviisori või host-süsteemi administraatori sekkumise eest.

Kahjustus tuleneb turvamata räsimisfunktsiooni kasutamisest koodis, mis kontrollib digitaalsete allkirjade kehtivust pärast mikrokoodi laadimist CPU-sse. Rünnaku läbiviimiseks on vajalik kohaliku süsteemi administraatori õiguste olemasolu (võimekust käitada koodi nulli kaitseringi (ring0) tasemel, mitte virtuaalmasinas).

Rünnaku käigus on võimalik sekkuda külalisüsteemide tööle, mis on kaitstud AMD SEV (Secure Encrypted Virtualization) ja SEV-SNP (Secure Nested Paging) laiendustega, mis pakuvad mälu terviklikkuse garantii. virtuaalmasinate, isoleerides protsessori registrid ja tagades ohutu töö sisemiste lehe tabelitega. AMD SEV mehhanism loodi selleks, et andmekeskuste ja pilveteenuste pakkujate personal ei saaks muuta ega analüüsida kaitstud külalisüsteemide mälu sisu ega moonutada arvutusi.

Uuringute meeskond on ette valmistanud prototüübi eksploiti, mis võimaldab laadida suvalise mikrokoodi CPU-sse, millel ei ole digitaalset allkirja. Ohtlikkuse demonstreerimiseks on pakutud mikrokoodi uuendust, mis muudab RDRAND käskluse tööloogikat, mida kasutatakse ühte allikana entropia genereerimisel pseudojuhuslike numbrite generaatorites, mida kasutatakse võtmete loomisel, krüptograafiliste operatsioonide täitmisel ja juhuslike identifikaatorite genereerimisel.

Muudatus toob kaasa selle, et RDRAND-i juhend tagastab ainult numbri 4, mitte juhusliku järjekorra. Et vältida päris rünnakute tegemist konfidentsiaalsete arvutuste süsteemides, nullib muudetud mikrokood CF (carry flag) lipu, st märgib antud väärtuse vigaseks. Täiendavad üksikasjad ja tööriistad muudetud mikrokoodi genereerimiseks plaanitakse avaldada 5. märtsil, et anda kasutajatele aega paranduse installimiseks oma süsteemides. Edukas rünnaku näide on demonstreeritud serverid AMD EPYC 7B13 (Milan) ja AMD Ryzen 9 7940HS (Phoenix) protsessoritega.

AMD aruandes märgitakse, et haavatavus ilmneb AMD protsessorites, mis põhinevad 1-4 põlvkonna Zen mikroarhitektuuril. Haavatavuse kõrvaldamiseks mõeldud mikrokoodi uuendus anti välja 13. detsembril 2024 AMD EPYC 7001, 7002 ja 7003 (Naples, Rome, Milan ja Milan-X) protsessorite jaoks, 16. detsembril aga AMD EPYC 9004 (Genoa, Genoa-X ja Bergamo/Siena) protsessorite jaoks. Haavatavuse kõrvaldamiseks SEV-SNP atesteeringuga süsteemides on lisaks vajalik AMD SEV tarkvara uuendamine (mis tuleb koos BIOS uuendustega seadme tootjatelt).

Lisaks teatakse veel ühest AMD protsessorites esinevast haavatavusest, mis võimaldab rünnakut külgkanalitest, et väljanneerida teavet arvutuste kohta kaitstud külgguest süsteemides, kus kasutatakse AMD SEV mehhanismi. Probleem mõjutab 1-4 põlvkonna AMD EPYC protsessoreid ja on seotud võimega välja tõmmata protsessori vahemälu andmeid, mis settivad kaitstud külgguest süsteemide töö ajal. Vahemälu sisu analüüsimiseks võib kasutada Prime+Probe meetodit, mis hõlmab vahemälu täitmist viidete kogumiga ja muudatuste määramist juurdepääsuaja mõõtmise kaudu, kui seda uuesti täidetakse. Märgitakse, et rünnaku blokeerimiseks sobivad meetodid, mis on varem ette nähtud kaitseks Spectre tüüpi rünnakute vastu.

Allikas: opennet.ru

Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster