Naaapektuhan din ng EntrySign ang mga processor ng AMD Zen 5 at nalalagay sa panganib ang pag-verify ng microcode.

Ang EntrySign Vulnerability Logo

Ilang linggo na ang nakalipas ibinahagi namin dito sa blog ang balita ng EntrySign kahinaan na nagbibigay-daan sa pag-iwas sa mekanismo ng pag-verify ng digital signature sa panahon ng pag-update ng microcode sa mga processor ng AMD.

Ano Sa una, tila isang bug na limitado sa Zen 1 hanggang Zen 4 na henerasyon, Ito ay umaabot na ngayon sa mga chips na kasing-kasalukuyan ng Ryzen 9000, EPYC 9005, Ryzen AI 300 at Ryzen 9000HX. Ang kapintasan na ito ay nagbibigay-daan, sa ilalim ng ilang partikular na kundisyon, ang CPU microcode na mabago sa pamamagitan ng pag-bypass sa digital signature verification mechanism, na may malubhang implikasyon para sa seguridad ng mga virtualized system.

Ang ugat ng problema ay nasa hindi naaangkop na paggamit ng algorithm ng CMAC sa panahon ng proseso ng pagpapatunay ng microcode. AMD tradisyonal na gumagamit ng pribadong RSA key upang digital na lagdaan ang nilalaman ng mga update na ito, at isang pampublikong key na kasama sa patch upang i-verify ang pagiging tunay ng microcode sa oras ng paglo-load. Gayunpaman, ang public key hash na dapat gumagarantiya sa integridad na ito ay nabuo gamit ang AES-CMAC, isang cryptographic MAC na, hindi katulad ng isang matatag na hash function, ay hindi nag-aalok ng mga garantiya laban sa mga banggaan.

Ang disenyong ito, idinagdag sa katotohanan na ang AMD ay gumamit ng isang karaniwang susi sa pag-encrypt para sa lahat ng iyong CPU mula noong Zen 1, ay nagpapahintulot sa mga mananaliksik na kunin ang susi mula sa anumang apektadong processor at muling gamitin ito upang manipulahin ang mga microcode patch sa ibang mga computer. Nakapagtataka, ang key na ito ay tumutugma sa isang pampublikong halimbawa ng mga kasanayan sa pag-encrypt ng NIST SP 800-38B, na nagpapakita ng walang ingat na paggamit ng mahusay na mga kasanayan sa cryptographic.

Pekeng microcode, wastong mga lagda

Mula sa kahinaang ito, ang Nagawa ng mga mananaliksik na makabuo ng mga pampublikong key na gumagawa ng parehong hash gaya ng orihinal na key ng AMD., na sila pinahintulutan ang pagtatayo ng mga pekeng patch na may kakayahang lumampas sa mga kontrol sa integridad. Ang mga banggaan na ito ay nakakamit sa pamamagitan ng paglalagay ng mga karagdagang bloke sa dulo ng microcode, na tila random ngunit maingat na kinakalkula, na nagpapahintulot sa digital na lagda na manatiling tila buo. Sa ganitong paraan, ang panloob na pag-uugali ng processor ay maaaring mabago nang hindi nagpapalitaw ng mga mekanismo ng alerto.

Ang prosesong ito ay pinadali ng mga tool sa pagsusuri gaya ng Zentool, isang set ng mga open source utility na nagbibigay-daan sa iyong pag-aralan ang microcode ng AMD at maghanda ng mga binagong patch. Para magkatotoo ang ganitong uri ng pag-atake, ang umaatake ay dapat magkaroon ng mga pribilehiyo ng Ring 0, iyon ay, ang pag-access sa pinakamataas na antas ng operating system, na magagawa sa mga virtualized na kapaligiran kung ang hypervisor ay nakompromiso o sa pamamagitan ng hindi secure na mga configuration ng mga teknolohiya tulad ng VT-x o AMD-V.

Epekto sa AMD SEV at Secure Virtualization

Higit pa sa pagmamanipula ng microcode, ang EntrySign ay nagdudulot ng direktang banta sa AMD SEV (Secure Encrypted Virtualization) at sa extension nito na SEV-SNP (Secure Nested Paging), mga teknolohiyang idinisenyo upang matiyak ang integridad at pagiging kumpidensyal ng mga virtual machine kahit na sa harap ng mga pag-atake mula sa hypervisor o host system. Ginagawang posible ng kahinaang ito na makagambala sa mga protektadong rehistro ng processor, baguhin ang mga nested page table, at baguhin ang gawi ng mga guest system, na ikompromiso ang kanilang seguridad sa isang malalim na antas.

AMD Response and Mitigation Measures

Nakaharap sa sitwasyong ito, Nagsimula na ang AMD sa pamamahagi ng mga update sa microcode na nag-aayos ng bug.o, bagaman sa mga system na gumagamit ng SEV-SNP kinakailangan ding i-update ang SEV module firmware, na nangangailangan ng pag-update ng BIOS. Ang kumpanya ay nagpadala na ng isang bagong pakete sa mga tagagawa tinatawag na ComboAM5PI 1.2.0.3c AGESA, ngunit tinatayang maaaring tumagal ng ilang linggo o kahit buwan bago maging available sa mga end user ang mga huling patch.

Bilang karagdagan dito, ang Ang mga inhinyero ng AMD ay nagmungkahi ng isang patch para sa Linux kernel na humaharang sa microcode mula sa paglo-load. hindi opisyal. Nilalayon ng panukalang ito na pigilan ang pagkalat ng mga nabagong patch ng third-party, gaya ng ginawa ng mga mahilig sa mga na-extract na mga fragment ng BIOS. Samantala, mahigpit na inirerekomenda na maghintay para sa mga opisyal na pag-update ng BIOS at pigilin ang pag-install ng mga hindi na-verify na bersyon.

Sa wakas, kung interesado kang malaman ang tungkol dito, maaari mong suriin ang mga detalye sa sumusunod na link.