EntrySign afectează și procesoarele AMD Zen 5 și pune în pericol verificarea microcodului.

Logo-ul de vulnerabilitate EntrySign

Acum câteva săptămâni am împărtășit aici pe blog știrile despre Vulnerabilitatea EntrySign care permite eludarea mecanismului de verificare a semnăturii digitale în timpul actualizărilor de microcod în procesoarele AMD.

indiferent de Inițial părea un bug limitat la generațiile Zen 1 până la Zen 4, Acum se extinde la cipuri la fel de actuale precum Ryzen 9000, EPYC 9005, Ryzen AI 300 și Ryzen 9000HX. Acest defect permite, în anumite condiții, modificarea microcodului CPU prin ocolirea mecanismului de verificare a semnăturii digitale, cu implicații grave pentru securitatea sistemelor virtualizate.

Rădăcina problemei se află în utilizarea necorespunzătoare a algoritmului CMAC în timpul procesului de validare a microcodului. AMD folosește în mod tradițional o cheie RSA privată pentru a semna digital conținutul acestor actualizări, și o cheie publică inclusă în patch pentru a verifica autenticitatea microcodului la momentul încărcării. Cu toate acestea, hash-ul cheii publice care ar trebui să garanteze această integritate este generat folosind AES-CMAC, un MAC criptografic care, spre deosebire de o funcție hash robustă, nu oferă nicio garanție împotriva coliziunilor.

Acest design, adăugat la faptul că AMD a folosit o cheie comună de criptare pentru toate procesoarele tale de la Zen 1, a permis cercetătorilor să extragă cheia din orice procesor afectat și reutilizați-l pentru a manipula patch-uri de microcod pe alte computere. În mod surprinzător, această cheie se potrivește cu un exemplu public de practici de criptare NIST SP 800-38B, demonstrând utilizarea neglijentă a bunelor practici criptografice.

Microcod fals, semnături valide

Din această slăbiciune, Cercetătorii au reușit să genereze chei publice care produc același hash ca și cheia originală AMD., pe care ei a permis construirea de patch-uri false capabile să ocolească controalele de integritate. Aceste coliziuni se realizează prin inserarea de blocuri suplimentare la sfârșitul microcodului, aparent aleatoare, dar atent calculate, permițând semnăturii digitale să rămână aparent intactă. În acest fel, comportamentul intern al procesorului poate fi modificat fără a declanșa mecanisme de alertă.

Acest proces a fost facilitat de instrumente de analiză precum Zentool, un set de utilitare open source care vă permite să studiați microcodul AMD și să pregătiți patch-uri modificate. Pentru ca acest tip de atac să se materializeze, atacatorul trebuie să aibă privilegii Ring 0, adică acces la cel mai înalt nivel al sistemului de operare, ceea ce este fezabil în medii virtualizate dacă hypervisorul este compromis sau prin configurații nesigure ale tehnologiilor precum VT-x sau AMD-V.

Impact asupra AMD SEV și a virtualizării securizate

Dincolo de manipularea microcodului, EntrySign reprezintă o amenințare directă pentru AMD SEV (Secure Encrypted Virtualization) și extensia sa SEV-SNP (Secure Nested Paging), tehnologii menite să asigure integritatea și confidențialitatea mașinilor virtuale chiar și în fața atacurilor de la hipervizor sau sistemul gazdă. Această vulnerabilitate face posibilă interferarea cu registrele procesoarelor protejate, modificarea tabelelor de pagini imbricate și modificarea comportamentului sistemelor invitate, compromițând securitatea acestora la un nivel profund.

Răspuns AMD și măsuri de atenuare

În această situație, AMD a început să distribuie actualizări de microcoduri care remediază eroarea.sau, deși pe sistemele care utilizează SEV-SNP este necesară și actualizarea firmware-ului modulului SEV, care necesită o actualizare BIOS. Compania a trimis deja un nou pachet producătorilor numit ComboAM5PI 1.2.0.3c AGESA, dar se estimează că patch-urile finale ar putea dura săptămâni sau chiar luni pentru a fi disponibile pentru utilizatorii finali.

Pe lângă aceasta, Inginerii AMD au propus un patch pentru nucleul Linux care blochează încărcarea microcodului. neoficial. Această măsură are ca scop prevenirea răspândirii patch-urilor modificate de la terți, cum ar fi cele create de entuziaști din fragmentele BIOS extrase. Între timp, se recomandă insistent să așteptați actualizările oficiale ale BIOS-ului și să vă abțineți de la instalarea versiunilor neverificate.

În cele din urmă, dacă sunteți interesat să aflați mai multe despre asta, puteți verifica detaliile în următorul link.