Egy nem privilegizált Linux program úgy tudja időzíteni a hardveres megszakítást, hogy az pont akkor érkezzen, amikor a processzor már megtisztította az elágazásbecslőjét, de a kernel még nem használta azt. Így a védelem lefutása után újra meg tudja fertőzni az elágazásbecslőt.
Az MIT CSAIL kutatói, Daniël Trujillo és Mengjia Yan INTERRUPT INJECTION néven írták le a technikát. Egy AMD Zen 2 gépen, Linux 6.14 alatt, minden alapértelmezett Spectre v2 mérsékléssel bekapcsolva, a kihasználásuk tetszőleges kernel memóriát tudott kiszivárogtatni másodpercenként 5,47 bájt sebességgel, 91,97%-os pontossággal. Ez elég volt ahhoz, hogy tízből öt próbálkozásnál megtalálják és kiolvassák az /etc/shadow fájlt, amely a rendszer jelszó-hash-eit tárolja.
Nincs szükség hozzá külön jogosultságokra, csak helyben futó kódra, ezért a kockázat főleg azokon az osztott rendszereken jelentkezik, ahol érintett processzort használnak.
A kutatók február 5-én jelentették a problémát az AMD-nek és az Intelnek. Az AMD azt közölte velük, hogy kernel javítócsomagot tervez; az MIT szerint azóta ezt kiadták, és a szokásos operációs rendszer frissítés részeként érkezik.
Az AMD augusztus 6-án tette közzé az AMD-SB-7061 jelű biztonsági közleményt „Safe RET Interrupt Vulnerability” címmel, amely szerint a Zen 1-től Zen 4-ig terjedő processzorok érintettek. Összefoglalója szerint a támadó, aki kódot futtat egy érintett rendszeren, „precízen időzített megszakítást tud befecskendezni, hogy megzavarja a Safe RET működését”, ami „gyengítheti ezt a védelmet, és információszivárgáshoz vezethet”. Az AMD hozzáteszi, hogy a probléma „láthatóan a Safe RET Linux megvalósításához kapcsolódik”.
A közlemény Trujillót nevezi meg, mint bejelentőt, és azt írja, hogy a viselkedést Zen 1-en és Zen 2-n demonstrálták, Zen 3 és Zen 4 esetében pedig csak feltételezik, de nem mutatták be. A tanulmány szerint az AMD csak Zen 2-n és Zen 4-en tesztelt. Az „Affected Products and Mitigation” szakasz csak a processzorokat sorolja fel, mást nem: nincs javítócsomag-verzió, nincs kernel commit, és nincs CVE sem.
A tanulmány szerint, amelyet a kutatók megosztottak a The Hacker News-szal, az Intel nem tart szükségesnek külön mérséklést.
A közlemény nem segít egyértelműen a védekezőknek. Verziószám, commit vagy CVE nélkül egy rendszergazda ma sem tudja egyszerűen ellenőrizni, hogy egy adott gépen már ott van-e az MIT szerint kiadott javítás, vagy a javítás még úton van.
A kernel az SRSO állapotát a /sys/devices/system/cpu/vulnerabilities/spec_rstack_overflow útvonalon jelenti, és a fájl értékeit leíró dokumentáció augusztus 6-án, amikor a The Hacker News ellenőrizte, még nem említette a megszakításokat.
A The Hacker News megkereste az AMD-t, az Intelt és az Armot is kommentárért, és a válaszok beérkezése után frissíti a cikket.
Ezek a védelmek mind megtisztítják vagy elszigetelik az elágazásbecslő állapotát, hogy a támadó korábbi betanítása ne tudjon egy kernel elágazást eltéríteni. Az Intel ezt kernel belépéskor végzi el, eIBRS-szel (eIBRS), és processzortól függően vagy egy branch history buffer tisztító ciklussal, vagy a BHI_DIS_S vezérlőbittel. Az AMD közvetlenül minden egyes kernel visszatérés előtt teszi ezt meg, a saferet segítségével.
Mindegyik arra épít, hogy közben nem fut ellenséges kód. Trujillo és Yan ezt az osztályt TONTOU-nak nevezte el, a Time-of-Neutralization to Time-of-Use rövidítéseként, a szoftveres TOCTOU versenyhelyzetek mintájára. A megszakítások ezt a feltételezést döntik meg, mert szinte bárhol bekövetkezhetnek, és a Linux bármely felhasználónak lehetővé teszi, hogy nanoszekundumos pontossággal időzítse őket.
Ha a megszakításkezelés a semlegesítés és a használat közé ékelődhet, akkor a megszakításból való visszatérés útvonala is a Spectre v2 védelem részévé válik, még akkor is, ha az eredeti mérséklés kernel belépésre vagy visszatérésre épült.
Zen 2-n ez az időablak két utasítás, hat bájt. A kutatók úgy növelték az esélyeiket, hogy ezeket a bájtokat kiszorították az L1 és L2 cache-ből egy testvér hyperthread segítségével, így lelassították a végrehajtásukat, és a write rendszerhívást választották, amely két regisztert is a kezükben hagyott.
A megszakítások az esetek 5–12%-ában pont ebbe az ablakba estek, és körülbelül 2%-ban úgy, hogy a támadó irányította ezeket a regisztereket. Ha ez sikerült, maga a megszakításkezelő vált betanító eszközzé, az Inception (CVE-2023-20569) segítségével, amellyel a támadó által választott célcímmel tudták feltölteni a return stack buffert. Az Inception az a 2023-as AMD hiba, amelynek kezelésére a saferet megszületett.
Három, a négy tesztelt gép közül kernel kódban is megjelentek a félrejóslások: Zen 2-n 0,75%-os, Intel Arrow Lake-en 0,22%-os, Cascade Lake Refresh-en 0,037%-os sikerességi aránnyal. Zen 4-nél ebben a tesztben egy sem fordult elő, és Intelen nem mutattak be végponttól végpontig tartó adatkiolvasást sem, mert ott a támadónak már eleve egy használható kiolvasó eszközre is szüksége lenne a kernel-ban.
A kutatók ezt nem tekintik akadálynak. A félrejóslások „szükséges, de nem elégséges feltételei egy Spectre támadásnak” – mondták a The Hacker News-nak, és mivel korábbi munkák már kimutatták, hogy a kernelekben léteznek ilyen kiolvasó eszközök, „úgy gondoljuk, hogy Intelen is lehetséges egy végponttól végpontig tartó támadás, ha az Interrupt Injection primitívünket kombináljuk ezekkel az eredményekkel”.
Az Intel fizetett ugyan egy diszkrecionális bug bounty bónuszt, de a tanulmány szerint „nem tartja szükségesnek a védekezést”, mert a kihasználhatóság „sok tényezőtől függ”, és a technikát a meglévő útmutatás hatálya alá sorolja. A The Hacker News átnézte ezt az útmutatót, az INTEL-SA-00598-öt, amelynek aktuális változatát 2025 májusában frissítették utoljára, és egyetlen helyen sem talált benne említést a megszakításokról.
A kutatók azt javasolják, hogy a megszakításból való visszatéréskor legyen egy második semlegesítés: az iret előtt töltsék fel a return stack buffert, vagy az újabb Intel CPU-kon ott adják ki az IBHF utasítást. A megszakítások tiltása a teljes ablakidőre teljesítménycsökkenéssel járna, ennek mértékét azonban a tanulmány nem számszerűsíti.
A két kutató ma mutatta be a munkáját a Black Hat USA konferencián, a tanulmányt pedig jövő héten publikálják a baltimore-i USENIX Security rendezvényen. Augusztus 6-án a cikkben megadott artifact tároló még nem volt nyilvános.

