Két egyetem kutatói egy eléggé kellemetlen sérülékenységet fedeztek fel, ami lényegében a Spectre jellegű támadásformák ágát gyarapítja, a probléma pedig az, hogy a frissen felfedezett sebezhetőséggel szemben tehetetlenek az eddig kiadott javítások, patchek és minden egyéb olyan kód is, amelyek a korábbi sérülékenységek hatásait próbálták tompítani.
Ebben az esetben az úgynevezett micro-ops cache jelenti a problémát: a Virginia Egyetem és a California San Diego Egyetem kutatói szerint az említett gyorsítótár aktuális felépítése és kezelése miatt legalább háromféle támadásformát lehet alkalmazni a modern processzorokkal szemben, igaz, papíron ezeket igen nehéz kiaknázni, így a veszély egyelőre alacsony.
A micro-ops cache, vagyis a mikro-utasítások gyorsítótára azért szükséges, mert a modern processzorok a komplex utasításokat rendszerint apróbb, könnyebben feldolgozható szeletekre bontják, ezek a mikro-utasítások, amik micro-ops néven futnak. A velük kapcsolatos adatokat a micro-ops cache tárolja a front end részlegen. Ez a megoldás az AMD háza táján 2017 óta, az Intelnél pedig 2011 óta van használatban, vagyis nagyon sok processzor lehet érintett a sebezhetőség kapcsán, és ez ellen sem a hardveres, sem pedig a szoftveres mitigációk nem védenek, legalábbis azok nem, amik eddig elkészültek.
A kutatók szerint háromféle módon lehet kiaknázni a sebezhetőségben rejlő lehetőségeket. Az első esetében ugyanazt a programszálat felhasználva egy domainek közötti támadást hoznak létre, ami a felhasználó-kernel határvonalon keresztül szivárogtathat ki kényes adatokat. A második támadási forma már két szálat érint, amelyek ugyanazon a fizikai processzormagon, de két külön logikai magon futnak: itt a két szál felhasználásával próbálhatnak meg titkos adatokhoz jutni, természetesen a fentebb már említett micro-ops cache közreműködésével.
A harmadik támadási forma segítségével számos hardveres és szoftveres mitigációt tudnak semlegesíteni, akár az Intel LFENCE megoldását is, ehhez pedig egy hibás spekuláció eredményeként létrejövő sávon keresztül próbálják kinyerni a titkokat, spekulatív végrehajtáson keresztül, akár azelőtt, hogy az átmeneti utasítás továbbításra kerülne a végrehajtásra.
Az új sebezhetőséggel kapcsolatban természetesen már mind az AMD, mind pedig az Intel illetékeseit értesítették, ám eddig nem készültek olyan mikrokód-frissítések, amelyek segítenének a támadási forma hatásainak enyhítésében – és operációs rendszereket érintő frissítésekről sem esett még szó. Ez persze nem is olyan nagy csoda, hiszen az elméleti támadási forma elkerüléséhez nagyon mélyen kéne „belenyúlni” a modern processzorok működésébe, ez pedig nemcsak körülményes, hanem még jelentősebb teljesítményvesztést is okozhat, hiszen pont a nagyobb sebességgel kecsegetető front end részleget lőnék lábon vele.
A kutatók szerint többféle lehetséges megoldás is van arra, hogy az új támadásformák hatásait enyhíteni lehessen. Az egyik ilyen, hogy a micro-ops cache-et minden tartomány-átlépésnél üríteni kéne, ám mivel a mikro-utasítás gyorsítótár ürítéséhez az iTLB-t (Instruction Translation Lookaside Buffer) is ki kéne üríteni, ez igen komoly következményekkel járna teljesítmény terén, hiszen a processzor nem tudná folytatni a munkát, míg az iTLB újra meg nem telik.
A másik megoldás a micro-op cache-ek jogosultsági szint szerinti particionálása lenne, ám ez megint csak nem egy túl ütőképes megoldás, hiszen ahogy a védendő tartományok száma növekedne, a particionálás nagyon komolyan rontaná a micro-ops cache kihasználtságát, ezzel pedig elveszíteni a rendszer azokat a teljesítményelőnyöket, amiket a gyorsítótár alap esetben kínálna.
A harmadik lehetséges mitigáció a teljesítményszámláló alapú monitorozás lehetne, amellyel képes lenne a rendszer a különböző rendellenességek észlelésére, ám a folyamatos ellenőrizgetés szintén jelentős negatív hatást gyakorolna a teljesítményre, valamint ez a technika a téves besorolást eredményező hibákra is hajlamos.
Egyelőre az a konszenzus, hogy az új sebezhetőséget extrém nehéz kiaknázni, ugyanis ahhoz, hogy a micro-ops cache mélységébe eljusson egy kód, az összes hardveres és szoftveres védelmet meg kell kerülnie, és ha ez még sikerülne is, nagyon speciális kód lefuttatására lenne szükség az eredményesség érdekében. És még ekkor is kérdéses, milyen gyorsan sikerülne kényes adatokat kinyerni, azaz érdemes-e vesződni ezzel az egésszel, mikor egyéb sebezhetőségeken keresztül is lehet támadásokat indítani. Egyszóval az új sebezhetőségtől egyelőre nem igazán kell tartani, ez inkább a szofisztikáltabb támadók játékszere lehet későbbiekben – ide tartoznak a nemzetállamok által működtetett csapatok.