Identificirana je nova varijanta Zombieload napada na Intelove procesore

Istraživači s Tehničkog sveučilišta u Grazu (Austrija) otkrivena informacije o novoj metodi napada putem kanala trećih strana Zombie Load 2.0 (CVE-2019-11135), koji vam omogućuje izdvajanje povjerljivih informacija iz drugih procesa, operativnog sustava, virtualnih strojeva i zaštićenih enklava (TEE, Trusted Execution Environment). Problem utječe samo na Intel procesore. Komponente za blokiranje problema zaprosio u jučer ažuriranje mikrokoda.

Problem pripada klasi MDS (Microarchitectural Data Sampling) i modernizirana je verzija javno objavljeno u svibnju ZombieLoad napada. ZombieLoad 2.0, kao i drugi MDS napadi, oslanja se na primjenu tehnika analize bočnih kanala na podatke u mikroarhitektonskim strukturama (na primjer, Line Fill Buffer i Store Buffer), koji privremeno pohranjuju podatke koji se koriste u procesu. izvođenje operacija učitavanja i pohranjivanja) .

Nova varijanta Zombieload napada na temelju o curenju do kojeg dolazi tijekom rada mehanizma za asinkroni prekid operacija (TAA, TSX Asynchronous Abort), implementiranog u TSX (Transactional Synchronization Extensions) ekstenziji, koja pruža alate za rad s transakcijskom memorijom, što omogućuje povećanje performansi aplikacije s više niti dinamičkim uklanjanjem nepotrebnih operacija sinkronizacije (podržane atomske transakcije koje se mogu prihvatiti ili prekinuti). Ako se prekine, operacije izvršene na području transakcijske memorije vraćaju se unatrag.

Prekid transakcije događa se asinkrono, a za to vrijeme druge niti mogu pristupiti predmemoriji, koja se također koristi u odbačenoj regiji transakcijske memorije. Tijekom vremena od početka do stvarnog završetka prekida asinkrone transakcije, moguće je da se pojave situacije u kojima procesor, tijekom spekulativnog izvođenja operacije, može pročitati podatke iz internih mikroarhitektonskih međuspremnika i prenijeti ih u spekulativnu operaciju. Sukob će tada biti otkriven i spekulativna operacija odbačena, ali podaci će ostati u predmemorij i mogu se dohvatiti pomoću tehnika oporavka predmemorije bočnog kanala.

Napad se svodi na otvaranje TSX transakcija i stvaranje uvjeta za njihov asinkroni prekid, pri čemu nastaju uvjeti za curenje sadržaja internih međuspremnika spekulativno ispunjenih podacima iz operacija čitanja memorije izvedenih na istoj CPU jezgri. Curenje je ograničeno na trenutnu fizičku jezgru CPU-a (na kojoj se izvodi napadačev kod), ali budući da se mikroarhitektonski međuspremnici dijele između različitih niti u Hyper-Threading modu, moguće je curenje memorijskih operacija koje se izvode u drugim CPU nitima.

Napad podložan neki modeli osme, devete i desete generacije Intel Core procesora, te Intel Pentium Gold, Intel Celeron 5000, Intel Xeon E, Intel Xeon W i Intel Xeon Scalable druge generacije. Novi Intelovi procesori temeljeni na mikroarhitekturi Cascade Lake predstavljeni u travnju, koji u početku nisu bili osjetljivi na RIDL i Fallout napade, također su osjetljivi na napade. Uz Zombieload 2.0, istraživači su identificirali i mogućnost zaobilaženja prethodno predloženih metoda zaštite od MDS napada, temeljenih na korištenju VERW instrukcija za brisanje sadržaja mikroarhitektonskih međuspremnika pri povratku iz kernela u korisnički prostor ili pri prijenosu kontrole na sustav za goste.

Intelovo izvješće navodi da je u sustavima s heterogenim opterećenjem mogućnost izvođenja napada otežana, budući da curenje iz mikroarhitektonskih struktura pokriva sve aktivnosti u sustavu i napadač ne može utjecati na izvor ekstrahiranih podataka, tj. može samo akumulirati informacije koje se pojavljuju kao rezultat curenja i pokušati identificirati korisne informacije među tim podacima, bez mogućnosti namjernog presretanja podataka povezanih s određenim memorijskim adresama. Međutim, istraživači su objavili iskoristiti prototip, koji radi na Linuxu i Windowsima, i demonstrirao je mogućnost korištenja napada za određivanje hash lozinke root korisnika.
Možda izvođenje napada iz gostujućeg sustava radi prikupljanja podataka koji se pojavljuju u operacijama drugih gostujućih sustava, host okruženja, hipervizora i Intel SGX enklava.

Popravci za blokiranje ranjivosti uključeno u bazu koda Linux kernela i uključena u izdanja 5.3.11, 4.19.84, 4.14.154, 4.9.201 i 4.4.201. Ažuriranja kernela i mikrokoda također su već objavljena za glavne distribucije (Debian, SUSE/openSUSE, Ubuntu, RHEL, Fedora, FreeBSD). Problem je identificiran u travnju, a popravak je koordiniran između Intela i programera operativnog sustava.

Najjednostavnija metoda blokiranja Zombieloada 2.0 je onemogućavanje TSX podrške u CPU-u. Predloženi popravak za Linux kernel uključuje nekoliko opcija zaštite. Prva opcija nudi parametar "tsx=on/off/auto" za kontrolu je li proširenje TSX omogućeno na CPU-u (automatska vrijednost onemogućuje TSX samo za ranjive CPU-e). Druga opcija zaštite omogućena je parametrom “tsx_async_abort=off/full/full,nosmt” i temelji se na brisanju mikroarhitektonskih međuspremnika tijekom prebacivanja konteksta (oznaka nosmt dodatno onemogućuje SMT/Hyper-Threads). Za provjeru je li sustav osjetljiv na ranjivosti, sysfs pruža parametar “/sys/devices/system/cpu/vulnerabilities/tsx_async_abort”.

Također u obnova mikrokod eliminiran još jedan ranjivost (CVE-2018-12207) u Intel procesorima, što je također blokirano u najnovijim obnova Linux kerneli. Ranjivost to omogućuje neprivilegirani napadač da pokrene uskraćivanje usluge, uzrokujući da sustav visi u stanju "Machine Check Error".
Napad uključujući može biti počinjen iz sustava za goste.

Izvor: opennet.ru

Dodajte komentar