A grazi műszaki egyetem kutatói információkat tettek közzé egy új, oldalsó csatornákon végzett támadásról (), amely lehetővé teszi bizalmas információk kiszedését más folyamatokból, operációs rendszerekből, virtuális gépekből és védett környezetekből (TEE, Trusted Execution Environment). A probléma csak az Intel processzorokat érinti. Az ehhez kapcsolódó alkatrészek a tegnapi .
A probléma az MDS (Microarchitectural Data Sampling) osztályába tartozik, és a ZombieLoad támadás modernizált változata. A ZombieLoad 2.0, mint más MDS osztályú támadások, az oldalsó csatornákra történő elemzési módszerek alkalmazásán alapul a mikroarchitektúrai struktúrák adataihoz (például a kitöltő bufferekben (Line Fill Buffer) és a tárolási bufferekben (Store Buffer), ahol ideiglenesen adatokat tartanak, amelyek az Load és Store műveletek végrehajtása során használtak).
Az új ZombieLoad támadás változata hogy olyan szivárgást okoz, amely a műveletek aszinkron megszakításának mechanizmusán (TAA, TSX Asynchronous Abort) keresztül keletkezik, amelyet a TSX (Transactional Synchronization Extensions) kiterjesztés valósít meg, mutatva az eszközöket a tranzakciós memóriával való munkához, lehetővé téve a több szálú alkalmazások teljesítményének növelését a felesleges szinkronizációs műveletek dinamikus kivételével (támogatott atomikus tranzakciók, amelyeket vagy elfogadnak, vagy megszakítanak). Megszakítás esetén a tranzakciós memóriarészben végrehajtott műveletek visszaállnak.
A tranzakció megszakítása aszinkron módon történik, és ezalatt más szálak hozzáférhetnek egy cache-hez, amely szintén használva van a visszaesett tranzakciós memória területen. A tranzakciós megszakítás kezdetétől a tényleges befejezéséig nem zárható ki olyan helyzetek fellépése, amikor a processzor spekulatív végrehajtási művelet közben olvashat adatokat a belső mikroarchitektúrás bufferekből, és átadhatja őket egy spekulatívan végrehajtott műveletnek. Ezt követően a konfliktus felderül, és a spekulatív művelet elvetésre kerül, de az adatok a cache-ben maradnak, és kinyerhetők oldalsó csatornákra épülő cache visszaállítási módszerekkel.
A támadás lényege, hogy TSX tranzakciókat indítanak és feltételeket teremtenek azok aszinkron megszakításához, melynek során feltételek alakulnak ki a belső pufferekből származó tartalmak kiszivárgására, amelyek spekulatívan megtelnek a CPU azon magján végrehajtott memóriaolvasási műveletekből származó adatokkal. A kiszivárgás korlátozott az aktuális fizikai CPU magra (amin a támadó kódja fut), de mivel a mikroarchitektúrák pufferei megosztva használatosak a Hyper-Threading üzemmódban, előfordulhat memóriaolvasási műveletek kiszivárgása, amelyek más CPU szálakban futnak.
Támadás több nyolcadik, kilencedik és tizedik generációs Intel Core processzor, valamint Intel Pentium Gold, Intel Celeron 5000, Intel Xeon E, Intel Xeon W és a második generációs Intel Xeon Scalable modellek is érintettek. Ide tartoznak az újonnan bemutatott Intel processzorok is, amelyek az áprilisi Cascade Lake mikroarchitektúrára épülnek, amely eredetileg nem volt kitéve az RIDL és Fallout támadásoknak. A Zombieload 2.0 mellett a kutatók azt is felfedezték, hogy lehetséges a korábban javasolt MDS-támadások ellen védelmet nyújtó módszerek megkerülése, amelyek a mikroarchitektúrák puffereinek törlésére szolgáló VERW utasítás használatán alapultak, amikor a kernelből a felhasználói térbe visszatérnek, vagy amikor átadják a vezérlést egy vendég rendszernek.
Az Intel jelentése szerint a heterogén terhelésű rendszerek esetében a támadások végrehajtása nehézkes, mivel a mikroarchitektúrából származó kiszivárgás az egész rendszer aktivitását lefedi, és a támadó nem tudja befolyásolni az előhúzott adatok forrását, azaz csak felhalmozhatja a kiszivárgás eredményeként megjelenő információkat, és próbálhat az adatok között hasznos információkat keresni, anélkül, hogy célzottan érzékelné a konkrét memória címekhez kapcsolódó adatokat. Ennek ellenére a kutatók közzétettek , amely Linux és Windows rendszeren működik, és bemutatták a támadás lehetőségét a root felhasználó jelszavának hash értékének meghatározására.
támadást végrehajtani egy vendég rendszerről az olyan adatok felhalmozására, amelyek más vendég rendszerek, a host környezet, a hipernyűg és az Intel SGX enclave-ok műveleteiben szerepelnek.

Javításokat adtak ki a sebezhetőség blokkolására a Linux kernel kódalapjába, és ezek bekerültek a következő kiadásokba . Frissítések a kernellel és mikrokóddal szintén már ki lettek adva a főbb disztribúciókhoz (, , , , , ). A probléma áprilisban vált nyilvánvalóvá, és a javítást az Intel az operációs rendszerek fejlesztőivel együttműködve koordinálta.
A Zombieload 2.0 blokkolásának legegyszerűbb módja az TSX támogatás letiltása a CPU-ban. A Linux kernelhez javasolt javítás több védelmi opciót tartalmaz. Az első lehetőség a 'tsx=on/off/auto' paraméter, amely lehetővé teszi a TSX bővítmény CPU-ba történő engedélyezésének kezelését (az auto érték csak a sebezhető CPU-k esetén kapcsolja ki a TSX-et). A második védelmi lehetőség a 'tsx_async_abort=off/full/full,nosmt' paraméterrel aktiválható, és a mikroarchitekturális puffer tisztításán alapul, a kontextusváltás során (a nosmt zászló továbbiakban letiltja az SMT/Hyper-Threadinget). A rendszer sebezhetőségének ellenőrzésére a sysfs-ben a '/sys/devices/system/cpu/vulnerabilities/tsx_async_abort' paraméter áll rendelkezésre.
Ezen kívül, a mikrokód még egy () az Intel processzorokban, amely szintén blokkolva van a legújabb Linux kernelt. A sebezhetőség lehetővé teszi, hogy egy nem privilegizált támadó szolgáltatásmegtagadást okozzon, ami a rendszert 'Machine Check Error' állapotba hozza. A támadás akár
a vendég rendszeren keresztül is végrehajtható. 🥇Új Zombieload támadási variáns észlelve Intel processzorokon | ProHoster
Forrás: opennet.ru
