IOActive'i teadlased tuvastasid AMD protsessorites haavatavuse (CVE-2023-31315), mis privileegitud kohaliku juurdepääsu korral võimaldab muuta SMM (System Management Mode, Ring -2) konfiguratsiooni, isegi kui SMM lukustamise mehhanism (SMM Lock) on sisse lülitatud, ning võib potentsiaalselt võimaldada koodi täitmist SMM tasemel. SMM tase, mis on kõrgema prioriteediga kui hüperviisori režiim ja nullkaitse ring, annab piiramatu juurdepääsu kogu süsteemi mälu ning võib kasutada operatsioonisüsteemi kontrollimiseks.
Haavatavus, mille koodnimi on Sinkclose, tuleneb mudelispetsiifiliste registrite (MSR, Model Specific Register) vale kontrollimisest. SMM-iga on seotud füüsiliste mälulehtede ala, millele juurdepääs mälukontrolleri tasemel on blokeeritud. Tuvastatud haavatavus võimaldab selle blokeeringu ümber minna, manipuleerides teatud MSR registreid, millele juurdepääs ei olnud keelatud vaatamata SMM Lock režiimi seadistusele.
Haavatavuse ärakasutamine võib toimuda nullkaitse ringist, milles operatsioonisüsteemi tuuma töötab, ning seda saab kasutada näiteks, et säilitada oma kohalolek pärast teiste süsteemi haavatavuste ärakasutamist või sotsiaalsete manipulatsioonimeetodite rakendamist. Operatsioonisüsteem ei suuda jälgida ega kontrollida SMM tasemel koodi täitmist, mis võib olla kasutatud firmaväliste püsivara modifitseerimiseks ning peidetud pahavara või rootkitide paigaldamiseks, mida operatsioonisüsteem ei tuvastaks, samuti käivituse kinnitamise tõkestamiseks ja hüperviisorite rünnakuteks, et mööduda virtuaalsete keskkondade terviklikkuse kontrollimise mehhanismidest.
Haavatavus ilmneb praktiliselt kõigis AMD kiipides, mis on toodetud alates 2006. aastast, sealhulgas AMD EPYC (1-4 põlvkond), Ryzen (R1000, R2000, 3000-8000, V1000, V2000, V3000), Athlon 3000 ja Threadripper PRO protsessorisarjades. Mikrokoode värskendused haavatavuse blokeerimiseks on juba välja antud EPYC ja Ryzen mobiilsete ja lauaprotsessorite seeriate jaoks. Integreeritud mudelite protsessorite värskendust plaanitakse välja anda oktoobris. Ainus viis SMM rünnaku kaudu sisestatud pahavara koodi eemaldamiseks on mälu puhastamine füüsiliselt ühendatud SPI Flash programmeerijaga.
Allikas: opennet.ru
