Interrupt Injection otvara novi put oko Spectre v2 zaštita

Istraživači Daniël Trujillo i Mengjia Yan iz MIT CSAIL-a predstavili su tehniku Interrupt Injection, koja može da zaobiđe pojedine zaštite od Spectre v2 napada na Intel i AMD procesorima. Na AMD Zen 2 sistemu sa Linuxom 6.14 i podrazumevano uključenim Spectre v2 mitigacijama, demonstracija je čitala proizvoljnu memoriju kernela brzinom od 5,47 bajtova u sekundi uz tačnost od 91,97 odsto.
Za napad nisu potrebne administratorske privilegije, već lokalno izvršavanje koda. Istraživači su u pet od deset pokušaja uspeli da pronađu i pročitaju datoteku /etc/shadow, u kojoj Linux čuva heševe lozinki. Rizik je zato posebno relevantan za deljene sisteme sa pogođenim procesorima.
Prekid u malom vremenskom prozoru
Odbrane od Spectre v2 čiste ili izoluju stanje prediktora grananja kako ranije obučeni podaci napadača ne bi uticali na izvršavanje kernela. Intel to radi pri ulasku u kernel uz eIBRS i, zavisno od procesora, čišćenje branch history buffera ili BHI_DIS_S. AMD koristi saferet neposredno pre povratka iz kernela.
Problem koji su autori nazvali TONTOU, odnosno Time-of-Neutralization to Time-of-Use, nastaje ako se hardverski prekid ubaci između neutralizacije prediktora i njegove upotrebe. Na Zen 2 taj prozor ima samo dve instrukcije, odnosno šest bajtova. Linux korisničkom programu omogućava planiranje prekida sa nanosekundskom preciznošću, pa se prekid može pokušati ubaciti upravo u taj interval.
Istraživači su verovatnoću povećavali izbacivanjem tih instrukcija iz L1 i L2 keša preko susedne niti istog procesora i izborom sistemskog poziva write. Prekidi su u prozor dospevali u 5 do 12 odsto pokušaja, dok je u približno 2 odsto slučajeva napadač zadržavao kontrolu nad dva registra.
AMD zakrpa, Intel bez nove mitigacije
AMD je 6. avgusta objavio bilten AMD-SB-7061, „Safe RET Interrupt Vulnerability“, koji navodi Zen 1 do Zen 4 kao pogođene porodice. U biltenu se kaže da precizno ubrizgan prekid može oslabiti Safe RET zaštitu i dovesti do otkrivanja informacija. Demonstracija ponašanja izvedena je na Zen 1 i Zen 2, dok su Zen 3 i Zen 4 navedeni kao potencijalno pogođeni; rad opisuje testove na Zen 2 i Zen 4.
MIT navodi da je AMD zakrpa već isporučena kroz redovno ažuriranje operativnog sistema, ali bilten ne navodi verziju zakrpe, commit jezgra niti CVE oznaku. Status SRSO mitigacije Linux prikazuje u datoteci /sys/devices/system/cpu/vulnerabilities/spec_rstack_overflow, a dokumentacija proverena 6. avgusta nije pominjala prekide.
Na Intel platformama zabeležene su pogrešne predikcije na Arrow Lake i Cascade Lake Refresh, ali nije demonstrirano potpuno curenje podataka. Intel, prema radu istraživača, ne smatra da je potrebna nova mitigacija. Predloženo rešenje je dodatna neutralizacija pri izlasku iz rukovaoca prekida, poput popunjavanja return stack buffera pre iret ili korišćenja IBHF na novijim Intel procesorima.
Šta proveriti u poslovnom okruženju
Administratori deljenih Linux sistema treba da popišu AMD Zen platforme, prate redovna ažuriranja kernela i proveravaju prijavljeni SRSO status. Širi pregled lokalnih pretnji i Linux rizika daje širi pregled lokalnih pretnji i Linux rizika, što pomaže da se provera procesorskih mitigacija uklopi u postojeći proces upravljanja ranjivostima. Dok AMD ne objavi jasne verzije ispravke, razumno je ograničiti nepotrebno lokalno izvršavanje koda i održavati operativni sistem ažurnim.

