Výzkumní pracovníci na Graz University of Technology (Rakousko) odhalily informace o nové metodě zaútočit skrz Zombie zatížení 2.0 (CVE-2019-11135), který umožňuje extrakci důvěrných informací z jiných procesů, operační systém, virtuální stroje a zabezpečené enklávy (TEE, Trusted Execution Environment). Problém ovlivňuje to pouze procesory Intel. Součásti k blokování problému byly navrženy ve včerejší aktualizaci mikrokódu.
Problém patří do třídy MDS (Microarchitectural Data Sampling) a jedná se o modernizovanou verzi útoku ZombieLoad zahájeného v květnu. Zombie Load 2.0, stejně jako další útoky třídy MDS, jsou založeny na aplikaci analytických metod třetích stran na data v mikroarchitekturních strukturách (například v vyrovnávacích pamětí Line Fill Buffer a Store, ve kterých jsou dočasně ukládána data použitá v procesu k provádění operací načítání a ukládání).
Tato nová varianta podle Zombieload spoléhá na únik, ke kterému dochází při implementaci mechanismu TSA Asynchronní přerušení (TSA) v rozšíření TSX (Transactional Synchronization Extensions), který poskytuje prostředky pro práci s transakční pamětí, což umožňuje zvýšit výkon vícevláknových aplikací kvůli dynamickému vyloučení zbytečných synchronizačních operací (podporovány jsou atomové transakce, které lze přijmout nebo přerušit).
V případě výpadku se operace provedené s transakční oblastí paměti vrátí zpět. Zrušení transakce se provádí asynchronně, kdy mohou do mezipaměti přistupovat další vlákna, která se také používají v oblasti paměti vyřazených transakcí.
Od začátku do skutečného dokončení přerušení asynchronní transakce aMohou nastat situace, kdy procesor, během spekulativního provádění operace, umí číst data z interních mikroarchitekturních vyrovnávacích pamětí a přenášet je ke spekulativně provedené operaci.
Poté bude zjištěn konflikt a spekulativní operace bude zahozena, ale data zůstanou v mezipaměti a lze je extrahovat pomocí metod obnovení mezipaměti prostřednictvím kanálů třetích stran.
Útok se scvrkává na otevírání transakcí TSX a vytváření podmínek pro jejich asynchronní přerušení, během kterých byly podmínky úniku obsahu vnitřních vyrovnávacích pamětí spekulativně plné dat z operací čtení paměti prováděny v samotném jádru CPU.
Únik je omezen na aktuální fyzické jádro CPU (na kterém běží kód útočníka), ale protože jsou mikroarchitekturní vyrovnávací paměti sdíleny různými vlákny v režimu Hyper-Threading, může dojít k úniku provedených paměťových operací na jiných vláknech CPU.
Byly vydány některé modely Intel, na kterých jste testovali útok na ně je osmé, deváté a desáté generace procesorů Intel Core a Pentium, Intel Celeron 5000, Intel Xeon E, Intel Xeon W. a druhá generace škálovatelných procesorů Intel Xeon.
Včetně nových procesorů Intel je také založeno na mikroarchitektuře Cascade Lake podané v dubnu, které zpočátku nebylo náchylné k útokům RIDL a Fallout.
Kromě Zombieload 2.0 vědci také zjistili, že by bylo možné obejít dříve navržené metody ochrany proti útokům MDS na základě použití instrukce VERW k vymazání obsahu vyrovnávacích pamětí mikroarchitektury, když se vracejí z jádra do uživatelského prostoru nebo když je kontrola přenesena do hostujícího systému.
Řešení blokující tuto chybu zabezpečení jsou součástí kódová základna linuxové jádro a jsou zahrnuty v verze 5.3.11, 4.19.84, 4.14.154, 4.9.201 a 4.4.201. také byly vydány aktualizace jádra a mikrokód pro hlavní distribuce (Debian, SUSE / openSUSE, Ubuntu, RHEL, Fedora, FreeBSD). Problém byl identifikován v dubnu a řešení bylo koordinováno společností Intel s vývojáři operačních systémů.
Nejjednodušší metodou blokování Zombieload 2.0 je deaktivace podpory TSX na CPU. Řešení jádra Linux obsahuje několik možností zabezpečení.