Kërkuesit e sigurisë nga kompania Google publikuan informacion mbi një dobësi (CVE-2024-56161) në procesorët AMD, që preku shfletuesin e mikro-kodit dhe lejon anashkalimin e mekanizmit të verifikimit të nënshkrimit dixhital gjatë azhurnimeve të mikro-kodit. Ngarkimi i mikro-kodit të modifikuar lejon komprometimin e mekanizmit AMD SEV (Virtualizimi i Kriptuar të Sigurt), i përdorur në sistemet e virtualizimit për të mbrojtur makinat virtuale nga ndërhyrja e hipervizorit ose administratorit të host-it.
Dobësia shkaktohet nga përdorimi i një funksioni hash të pasigurt në kodin që kryen verifikimin e nënshkrimit dixhital pas ngarkimit të mikro-kodit në CPU. Për të realizuar sulmin, kërkohet të ketë të drejtat e administratorit në sistemin lokal (mundësia për të ekzekutuar kod në nivelin e rrethit të parë të mbrojtjes (ring0), duke mos qenë në makinën virtuale).
Gjatë sulmit, mund të ndërhyhet në funksionimin e sistemeve nikoqire, të mbrojtura nga zgjerimet AMD SEV (Virtualizimi i Kriptuar të Sigurt) dhe SEV-SNP (Përfaqësimi i Sigurt i Ngujshmërisë), që ofrojnë garanci për integritetin e memories. makinave virtuale, të izoluara regjistrat e procesorëve dhe garanton një funksionim të sigurt me tabelat e brendshme të faqeve të memories. Mekanizmi AMD SEV është krijuar për të siguruar që stafi i qendrave të të dhënave dhe ofruesve të shërbimeve në re të mos mund të ndryshojë ose analizojë përmbajtjen e memories së sistemeve të mbrojtura, ashtu si edhe për të distortuar llogaritjet.
Hulumtuesit kanë përgatitur një prototip të një eksploituesi që lejon ngarkimin e mikrokodit të rastit në CPU, pa nënshkrimin digjital. Për të demonstruar rrezikun e dobësisë, është propozuar një përditësim i mikrokodit që ndryshon logjikën e funksionit RDRAND, i cili përdoret si një nga burimet e entropisë në gjeneratoret e numrave të rastësishëm, të cilët përdoren gjatë formimit të çelësave, gjatë operacioneve kriptografike dhe për gjenerimin e identifikuesve të rastësishëm.
Ndryshimi çon në kthimin e numrit 4 nga instrukcioni RDRAND, në vend të një sekuencë të rastësishme. Për të parandaluar kryerjen e sulmeve reale në sistemet e llogaritjeve konfidenciale, mikrokodi i ndryshuar zero flag CF (carry flag), duke e shënuar vlerën e dhënë si të gabuar. Detaje të tjera dhe mjete për gjenerimin e mikrokodit të ndryshuar priten të publikohen më 5 mars, për të lejuar përdoruesit të kenë kohë për të instaluar rregullimin në sistemet e tyre. Një shembull i suksesshëm i sulmit është demonstruar për serverëve me procesorët AMD EPYC 7B13 (Milan) dhe AMD Ryzen 9 7940HS (Phoenix).
Në raportin e kompanisë AMD përmendet se vulnerabiliteti shfaqet në procesorët AMD të bazuar në mikroarkitekturën Zen të gjeneratave 1-4. Përditësimi i mikrokodit për eliminimin e vulnerabilitetit u publikua më 13 dhjetor 2024 për procesorët e serive AMD EPYC 7001, 7002 dhe 7003 (Naples, Rome, Milan dhe Milan-X), ndërsa më 16 dhjetor për procesorët e serisë AMD EPYC 9004 (Genoa, Genoa-X dhe Bergamo/Siena). Për të eliminuar vulnerabilitetin në sistemet që përdorin atestimin SEV-SNP, nevojitet gjithashtu përditësimi i firmware-it AMD SEV (i ofruar së bashku me përditësimet e BIOS nga prodhuesit e pajisjeve).
Raportohet gjithashtu për një ndërhyrje tjetër në procesorët AMD, e cila lejon kryerjen e sulmeve përmes kanaleve anësore për të nxjerrë informacion mbi llogaritë në sistemet mysafire, të mbrojtura me mekanizmin AMD SEV. Problemi prek procesorët AMD EPYC të brezit 1-4 dhe është i lidhur me mundësinë e nxjerrjes nga cache-i i procesorit të të dhënave që mbeten gjatë funksionimit të sistemeve mysafire të mbrojtura. Për analizimin e përmbajtjes së cache-it mund të përdoret metoda Prime+Probe, e cila përfshin mbushjen e cache-it me një set referencash dhe përcaktimin e ndryshimeve duke matur kohën e qasjes gjatë ribushjes. Theksohet se për bllokimin e sulmit janë të përshtatshme metodat e propozuara më parë për mbrojtjen nga sulmet e klasës Spectre.
Burimi: opennet.ru
