EntrySign ietekmē arī AMD Zen 5 procesorus un apdraud mikrokoda verifikāciju.

EntrySign ievainojamības logotips

Pirms dažām nedēļām mēs šeit emuārā dalījāmies ar ziņām par EntrySign ievainojamība kas ļauj izvairīties no ciparparaksta pārbaudes mehānisma mikrokoda atjaunināšanas laikā AMD procesoros.

Ko Sākotnēji šķita, ka tā ir kļūda tikai Zen 1 līdz Zen 4 paaudzēs, Tagad tas attiecas uz mikroshēmām, kas ir tikpat aktuālas kā Ryzen 9000, EPYC 9005, Ryzen AI 300 un Ryzen 9000HX. Šis trūkums noteiktos apstākļos ļauj modificēt CPU mikrokodu, apejot ciparparaksta pārbaudes mehānismu, kas nopietni ietekmē virtualizēto sistēmu drošību.

Problēmas sakne tas atrodas neatbilstoša CMAC algoritma izmantošana mikrokoda apstiprināšanas procesa laikā. AMD tradicionāli izmanto privāto RSA atslēgu lai digitāli parakstītu šo atjauninājumu saturuun publisko atslēgu, kas iekļauta ielāpu, lai pārbaudītu mikrokoda autentiskumu iekraušanas brīdī. Tomēr publiskās atslēgas jaucējkods, kam būtu jāgarantē šī integritāte, tiek ģenerēts, izmantojot AES-CMAC — kriptogrāfisku MAC, kas atšķirībā no spēcīgas jaucējfunkcijas nesniedz nekādas garantijas pret sadursmēm.

Šis dizains, pievienots fakts, ka AMD ir izmantojis kopīgu šifrēšanas atslēgu visiem jūsu CPU kopš Zen 1, ir ļāvusi pētniekiem iegūt atslēgu no jebkura ietekmētā procesora un atkārtoti izmantojiet to, lai manipulētu ar mikrokoda ielāpiem citos datoros. Pārsteidzoši, šī atslēga atbilst publiskam NIST SP 800-38B šifrēšanas prakses paraugam, demonstrējot labas kriptogrāfijas prakses neuzmanīgu izmantošanu.

Viltus mikrokods, derīgi paraksti

No šī vājuma, Pētniekiem izdevās ģenerēt publiskās atslēgas, kas rada tādu pašu jaucējfunkciju kā AMD sākotnējā atslēga., ko viņi ļāva izveidot viltotus ielāpus, kas spēj apiet integritātes kontroli. Šīs sadursmes tiek panāktas, ievietojot papildu blokus mikrokoda beigās, šķietami nejauši, bet rūpīgi aprēķināti, ļaujot digitālajam parakstam palikt šķietami neskartam. Tādā veidā procesora iekšējo uzvedību var mainīt, neiedarbinot brīdinājuma mehānismus.

Šo procesu ir atvieglojuši analīzes rīki piemēram, Zentool, atvērtā pirmkoda utilītu komplekts, kas ļauj izpētīt AMD mikrokodu un sagatavot modificētus ielāpus. Lai īstenotos šāda veida uzbrukums, uzbrucējam ir jābūt 0 zvana privilēģijām, tas ir, piekļuvei operētājsistēmas augstākajam līmenim, kas ir iespējams virtualizētā vidē, ja hipervizors ir apdraudēts vai izmantojot nedrošas tehnoloģiju konfigurācijas, piemēram, VT-x vai AMD-V.

Ietekme uz AMD SEV un drošu virtualizāciju

Papildus manipulācijām ar mikrokodiem EntrySign rada tiešus draudus AMD SEV (Secure Encrypted Virtualization) un tā paplašinājumam SEV-SNP (Secure Nested Peidžeru), kas ir izstrādātas, lai nodrošinātu virtuālo mašīnu integritāti un konfidencialitāti pat tad, ja tiek uzbrukts no hipervizora vai resursdatora sistēmas. Šī ievainojamība ļauj traucēt aizsargātajiem procesoru reģistriem, modificēt ligzdotās lapu tabulas un mainīt viesu sistēmu uzvedību, būtiski apdraudot to drošību.

AMD reaģēšanas un mazināšanas pasākumi

Saskaroties ar šo situāciju, AMD ir sākusi izplatīt mikrokoda atjauninājumus, kas novērš kļūdu.vai, lai gan sistēmās, kas izmanto SEV-SNP, ir jāatjaunina arī SEV moduļa programmaparatūra, kam nepieciešams BIOS atjauninājums. Uzņēmums ražotājiem jau nosūtījis jaunu paku ar nosaukumu ComboAM5PI 1.2.0.3c AGESA, taču tiek lēsts, ka galīgie ielāpi var ilgt nedēļas vai pat mēnešus, lai tie būtu pieejami galalietotājiem.

Papildus tam, AMD inženieri ir ierosinājuši Linux kodola ielāpu, kas bloķē mikrokoda ielādi. neoficiāls. Šī pasākuma mērķis ir novērst trešo pušu modificētu ielāpu izplatību, piemēram, tos, ko entuziasti izveidojuši no izvilktiem BIOS fragmentiem. Tikmēr ļoti ieteicams gaidīt oficiālos BIOS atjauninājumus un atturēties no nepārbaudītu versiju instalēšanas.

Visbeidzot, ja jūs interesē uzzināt vairāk par to, sīkāku informāciju varat pārbaudīt šī saite.