Společnost Intel Informace o dvou nových zranitelnostech v procesorech Intel, způsobených únikem dat z cache L1D (, L1DES — L1D Eviction Sampling) a vektorovými registry (, VRS — Vector Register Sampling). Zranitelnosti patří do kategorie (Microarchitectural Data Sampling) a vycházejí z použití metod analýzy kanály pro získání dat v mikroarchitektonických strukturách. Procesory AMD, ARM a další problémy nemají.
Největší nebezpečí představuje zranitelnost L1DES, která usazení bloků pro_cached data (cache line), vyřazených z první úrovně cache (L1D), do vyplňovacího bufferu (Fill Buffer), který by měl být v tomto okamžiku prázdný. K určení usazených dat v vyplňovacím bufferu se používají metody analýzy kanály, dříve navržené v útocích (Microarchitectural Data Sampling) a (Transactional Asynchronous Abort). Podstata dříve realizované ochrany před
MDS a TAA spočívá v čištění mikroarchitektonických bufferů před přepínáním kontextu, ale jak se ukázalo, za určitých podmínek jsou data spekulativně vymazána do bufferů po operaci čištění, takže metody MDS a TAA zůstávají použitelné.

Výsledkem je, že útočník může zjistit vyřazená data z první úrovně cache, která byla změněna během provádění aplikace, která v té době využívala aktuální jádro CPU, nebo aplikací, které běží současně v jiných logických vláknech (hyperthread) na stejném jádru CPU (vypnutí HyperThreadingu snižuje účinnost útoku). Na rozdíl od útoku , L1DES neumožňuje vybírat konkrétní fyzické adresy k ověření, ale poskytuje možnost pasivně sledovat aktivitu v jiných logických vláknech související s načítáním nebo ukládáním hodnot do paměti.
Na základě L1DES různé týmy výzkumníků vyvinuli několik variant útoků, které potenciálně umožňují extrahovat citlivé informace z jiných procesů, operačního systému, virtuálních strojů a chráněných enclave SGX.
- Tým VUSec metodiku útoku RIDL pro zranitelnost L1DES. Dostupné , který mimo jiné obchází navrhovanou metodu ochrany Intel proti MDS, která využívá instrukci VERW k vyčištění obsahu mikroarchitektonických mezipamětí během návratu z jádra do uživatelského prostoru nebo při předání řízení hostitelskému systému (vzhledem k tomu, že výzkumníci původně trvali na tom, že VERW (čištění mikroarchitektonických mezipamětí) na ochranu nestačí a je potřebné úplné vymazání L1 cache při každém kontextovém přepnutí).
- Tým aktualizovala svou s ohledem na zranitelnost L1DES.
- Výzkumníci z Michiganské univerzity vyvinuli vlastní metodu útoku (), která umožňuje extrakci důvěrných informací z jádra operačního systému, virtuálních strojů a chráněných enkláv SGX. Metoda je založena na s mechanismem asynchronního přerušení operací (TAA, TSX Asynchronous Abort) pro určení obsahu vyplňovacího bufferu po úniku dat z L1D cache.
Druhá zranitelnost VRS (Vector Register Sampling) s únikem do uloženého bufferu (Store Buffer) výsledků operací čtení z vektorových registrů, které byly změněny při provádění vektorových instrukcí (SSE, AVX, AVX-512) na stejném jádru CPU. Únik se vyskytuje za dostatečně vzácné okolnosti a je způsoben tím, že spekulativně vykonávaná operace, která vede k odrazu stavu vektorových registrů v uloženém bufferu, zpožďuje a končí až po vyčištění bufferu, a ne před ním. Podobně jako u zranitelnosti L1DES může být obsah uloženého bufferu následně určen pomocí metod útoků MDS a TAA.
Výzkumníci z týmu VUSec , který umožňuje určování hodnot vektorových registrů získaných v důsledku výpočtů v jiném logickém vlákně téhož jádra CPU. Společnost Intel zranitelnost VRS jako příliš složitou pro provádění reálných útoků a přidělila minimální stupeň nebezpečí (2.8 CVSS).
Informace o problémech byly předány společnosti Intel v květnu 2019 týmem Zombieload z Grazzské technické univerzity (Rakousko) a skupinou VUSec z Amsterdamské svobodné univerzity. Později, po analýze dalších vektorů využití útoku MDS, byly zranitelnosti potvrzeny několika dalšími výzkumníky. V první zprávě o MDS nebyly informace o problémech L1DES a VRS zahrnuty kvůli nedostatku opravy. Oprava není k dispozici ani nyní, ale doba utajení vypršela.
Jako obraná opatření se doporučuje deaktivovat HyperThreading. Pro zablokování zranitelnosti na straně jádra se navrhuje vymazat L1 cache při každém přepnutí kontextu (MSR bit MSR_IA32_FLUSH_CMD) a vypnout rozšíření TSX (MSR bity MSR_IA32_TSX_CTRL a MSR_TSX_FORCE_ABORT).
Intel vydat aktualizaci mikrocode s implementací mechanismů k zablokování problémů v nejbližší době. Intel také zdůrazňuje, že použití navrhovaných opatření na ochranu před útoky z roku 2018 (L1 Terminal Fault) umožňuje blokovat využití zranitelnosti L1DES z virtuálních prostředí. Útok procesory Intel Core, počínaje šestou generací (Sky, Kaby, Coffee, Whiskey, Amber Lake atd.), jakož i některé modely Intel Xeon a Xeon Scalable.
Dále lze poznamenat , které umožňuje použít metody útoku ke stanovení obsahu hašovaného hesla root z /etc/shadow při periodických pokusech o autentizaci. Pokud původně navržený exploit určoval haš hesla za , a po aplikaci úniku při práci mechanismu asynchronního přerušení operací (TAA, TSX Asynchronous Abort) vykonával podobnou operaci za , nový variant provádí útok za 4 sekundy.

Zdroj: opennet.ru
