Odkrit je nova različica napada Zombieload na procesorje Intel

Raziskovalci z Tehnične univerze na Dunaju (Avstrija) so razkrili so pridobili informacije o novi metodi napada preko stranskih kanalov ZombieLoad 2.0 (CVE-2019-11135), ki omogoča pridobitev zaupnih informacij iz drugih procesov, operacijskega sistema, virtualnih strojev in zaščitenih okolij (TEE, Trusted Execution Environment). Težava zadeva le procesorje Intel. Komponente za blokiranje težave predloženi včerajšnjem posodobitvi mikroprograma.

Težava spada v razred MDS (Microarchitectural Data Sampling) in je optimizirana različica objavljene v maju napada ZombieLoad. ZombieLoad 2.0, tako kot druge napade razreda MDS, temelji na uporabi metod analize preko stranskih kanalov na podatkih v mikroarkitekturnih strukturah (na primer v napolnilnih (Line Fill Buffer) in shrambnih (Store Buffer) predpomnilnikih, kjer se začasno shranjujejo podatki, uporabljeni v postopku izvajanja operacij Load in Store).

Nova različica napada Zombieload temelji na puščanju, ki nastane pri delu mehanizma asinhronih prekinitev operacij (TAA, TSX Asynchronous Abort), ki je izveden v razširitvi TSX (Transactional Synchronization Extensions), ki omogoča delo s transakcijskim pomnilnikom, kar izboljšuje zmogljivost večnitnih aplikacij z dinamičnim izločanjem odvečnih operacij sinhronizacije (podpirajo se atomske transakcije, ki so lahko bodisi sprejete bodisi prekinjene). V primeru prekinitve se operacije, opravljene s transakcijskim pomnilnikom, vrnejo nazaj.

Prekinitev transakcije se izvaja asinhrono in v tem času lahko drugi tokovi dostopajo do predpomnilnika, ki se prav tako uporablja v zavrženem transakcijskem pomnilniku. V trenutku od začetka do dejanskega zaključka asinhrone prekinitve transakcije ni izključeno, da lahko procesor med spekulativnim izvajanjem operacije prebere podatke iz notranjih mikroarkitekturnih predpomnilnikov in jih prenese v spekulativno izvajano operacijo. Nato bo konflikt razkrit, spekulativna operacija pa bo zavržena, vendar podatki ostanejo v predpomnilniku in se lahko pridobijo z uporabo metod obnovitve predpomnilnika preko stranskih kanalov.

Napad se zniža na otvaranje TSX transakcij in ustvarjanje pogojev za njihov asinhroni prekinitev, med katero nastanejo pogoji za uhajanje vsebine notranjih pomnilnikov, spekulativno napolnjenih s podatki iz operacij branja pomnilnika, ki se izvajajo na istem CPU jedru. Uhajanje je omejeno na trenutno fizično CPU jedro (na katerem se izvaja koda napadalca), vendar saj se mikroarhitekturni pomnilniki skupno uporabljajo z različnimi nitmi v načinu Hyper-Threading, lahko pride do uhajanja operacij z pomnilnikom, izvedenih v drugih CPU nitih.

Napadu so podvrženi nekatere modele osmega, devetega in desetega generacije procesorjev Intel Core, kot tudi Intel Pentium Gold, Intel Celeron 5000, Intel Xeon E, Intel Xeon W in drugo generacijo Intel Xeon Scalable. Vključno z napadi so podvrženi tudi novi procesorji Intel, ki temeljijo na aprilski mikroarhitekturi Cascade Lake, ki od začetka ni bila podvržena napadom RIDL in Fallout. Poleg Zombieload 2.0 so raziskovalci tudi ugotovili možnost obhoda prej predlaganih metod zaščite pred MDS-napadi, ki temeljijo na uporabi ukaza VERW za čiščenje vsebine mikroarhitekturnih pomnilnikov ob vrnitvi iz jedra v uporabniški prostor ali ob prenosu nadzora gosti system.

V poročilu Intel trdi, da je v sistemih z raznoliko obremenitvijo možnost izvedbe napada otežena, saj uhajanje iz mikroarhitekturnih struktur zajema vso aktivnost v sistemu in napadalec ne more vplivati na vir izvlečenih podatkov, to pomeni, da lahko le kopiči informacije, ki se pojavijo v rezultatu uhajanja, in poskuša med temi podatki odkriti koristne informacije, brez možnosti, da bi ciljno prestregel podatke, povezane s specifičnimi naslovi pomnilnika. Kljub temu so raziskovalci objavili prototip exploita, ki deluje v Linuxu in Windowsu, poleg tega pa je bila prikazana možnost uporabe napada za določitev hasha gesla uporabnika root.
Mogoče izvesti napad iz gostinskega sistema za zbiranje podatkov, ki se pojavljajo v operacijah drugih gostinskih sistemov, okolju gostitelja, hipervizorju in Intel SGX enclave.

Predvajaj video

Popravki za blokiranje ranljivosti vključeni so bili vključeni v kodo jedra Linux in so del izdaj 5.3.11, 4.19.84, 4.14.154, 4.9.201 in 4.4.201. Posodobitve z jedrom in mikroprogramsko opremo so že bile izdane za glavne distribucije (Debian, SUSE/openSUSE, Ubuntu, RHEL, Fedora, FreeBSD). Težava je bila odkrita aprila in popravilo je bilo usklajeno z Intelom ter razvijalci operacijskih sistemov.

Najenostavnejša metoda blokiranja Zombieload 2.0 je izklop podpora TSX v CPU. Predlagano popravilo za jedro Linux vključuje več možnosti zaščite. Prva možnost ponuja parameter „tsx=on/off/auto“, ki omogoča upravljanje aktivacije razširitve TSX v CPU (vrednost auto izklopi TSX le za ranljive CPU). Druga možnost zaščite se aktivira s parametrom „tsx_async_abort=off/full/full,nosmt“ in temelji na čiščenju mikroarhitekturnih predpomnilnikov med preklapanjem konteksta (znamka nosmt dodatno izklopi SMT/Hyper-Threads). Za preverjanje ranljivosti sistema obstaja v sysfs parameter „/sys/devices/system/cpu/vulnerabilities/tsx_async_abort“.

Poleg tega v posodobitvi mikroprogramski ispravljena je še ena ranljivost (CVE-2018-12207) v Intelovih procesorjih, ki je prav tako blokirana v svežem posodobitvi jedru Linux. Ranljivost omogućava neprivilegiranemu napadalcu omogoča iniciacijo napada na voljo, ki vodi do zamrznitve sistema v stanju „Machine Check Error“.
Napad lahko poleg tega izvede iz gostujočega sistema.

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster