Bola odhalená zraniteľnosť (CVE-2021-33164) vo firmvéroch UEFI, ktorá umožňuje vykonať kód na úrovni SMM (System Management Mode), ktorý má vyššiu prioritu ako hypervizor a nulový ochraný ring, a poskytuje neobmedzený prístup k celej systémovej pamäti. Zraniteľnosť, ktorá dostala kódové meno RingHopper, súvisí s možnosťou uskutočniť časový útok pomocou DMA (Direct Memory Access) na poškodenie pamäte v kóde vykonávanom na úrovni SMM. Existencia zraniteľnosti bola potvrdená vo firmvéroch Intel, Dell a Insyde Software (tvrdí sa, že problém sa týka 8 výrobcov, ale ostatných 5 zatiaľ nebolo zverejnených). Firmvér AMD, Phoenix a Toshiba nie je zraniteľný.
Zneužitie zraniteľností môže byť vykonané z operačného systému, pričom sa využijú zraniteľné SMI obsluhovače (System Management Interrupt), na ktoré sú potrebné práva administrátora. Útok môže byť taktiež vykonaný pri fyzickom prístupe na začiatku spúšťania, pred inicializáciou operačného systému. Pre ochranu pred problémom sa odporúča používateľom Linuxu aktualizovať firmvér pomocou služby LVFS (Linux Vendor Firmware Service) a využiť nástroj fwupdmgr (fwupdmgr get-updates; fwupdmgr update) z balíka fwupd.
Potrebnosť mať práva administrátora na vykonanie útoku obmedzuje nebezpečenstvo problému, ale nebráni jeho využitiu ako zraniteľnosti druhého stupňa na udržanie si prítomnosti po zneužití iných zraniteľností v systéme alebo pri použití metód sociálneho inžinierstva. Prístup k SMM (Ring -2) umožňuje vykonanie kódu na úrovni, ktorá nie je pod kontrolou operačného systému, čo môže byť využité na úpravu firmvéru a vloženie skrytého škodlivého kódu alebo rootkitov do SPI Flash, ktoré nie sú detegovateľné z operačného systému, ako aj na vypnutie overovania pri spúšťaní (UEFI Secure Boot, Intel BootGuard) a útoky na hypervizory na obídenie mechanizmov kontroly integrity virtuálnych prostredí.
Problém je spôsobený stavom pretekania v spracovateľovi SMI (System Management Interrupt), ktorý sa vyskytuje v okamihu medzi overením prístupu a prístupom k SMRAM. Na určenie správneho okamihu medzi overením stavu a použitím výsledku overenia môže byť použitá analýza cez externé kanály s pomocou DMA. V dôsledku asynchrónneho charakteru prístupu k SMRAM cez DMA môže útočník určiť správny okamih a prepísať obsah SMRAM pomocou DMA obchádzajúc API spracovateľa SMI. Procesory s podporou mechanizmov Intel-VT a Intel VT-d obsahujú ochranu proti DMA útokom, založenú na aplikácii IOMMU (Input-Output Memory Management Unit), avšak táto ochrana je efektívna len na blokovanie hardvérových DMA útokov vykonaných prostredníctvom pripravených zariadení útočníka a nechrání pred útokmi cez spracovateľov SMI.
Zdroj: opennet.ru
