Porce bezpečnostních bugů na červen: CPU Intel trpí na SGAxe a CrossTalk
Pro začátek si můžeme vytvořit tu správnou náladu stručnou rekapitulací bugů za poslední tři kvartály…
- srpen: Intel trápí nová bezpečnostní díra SWAPGS, zalepení stojí 1-5 % výkonu
- září: Procesory Intel Xeon trápí bezpečnostní díra NetCAT
- listopad: Cascade Lake od Intelu má vlastní díru Zombieload v2 alias TAA
- prosinec: Podvoltování otevírá bezpečnostní díru v procesorech Intel
- leden: CacheOut umí obejít hardwarové zabezpečení procesorů Intel SGX
- únor: Intel vydal záplaty na díry MDS (RIDL, ZombieLoad, Fallout…) pro Windows 10
- březen: Neodstranitelná bezpečnostní slabina trápí čipy Intelu
- březen: Záplata na reverzní Meltdown zpomaluje procesory Intelu až 2-19×
- květen: Dírou v Thunderboltu lze do 5 minut překonat zabezpečení OS
Nyní rovnou k věci.
CrossTalk
Také značený jako CVE-2020-0543, je Intel-specifická slabina, která umožňuje, aby aplikace běžící na jednom kernelu extrahovala informace z aplikace běžící na jiném kernelu. Funguje i na virtuálech, takže ohrožuje i (respektive zejména) servery. Dosavadní slabiny jako Meltdown, Spectre a jejich deriváty pracovaly vždy v rámci jednoho jádra, takže s CrossTalk se Intel vrhl do nových vod. Nová rizika vyplývají z toho, že na řadě serverů v rámci jednoho procesoru běží na jednotlivých jádrech kód různých osob či firem a jeden subjekt by tak mohl přistupovat k datům jiného subjektu.
Postiženy jsou procesory od Broadwellu (tedy první 14nm generace) výše, poslední testovaný (rovněž postižený) je Coffee Lake-refresh. Podobně jako u jiných bugů došlo k objevení před určitým čase a běželo nějaké NDA, během kterého hledal Intel řešení. Výzkumníci z Amsterodamu, kteří na slabinu přišli, tak testovali hardware před vydáním nové generace Comet Lake, takže není jasné, zda je také postižena. Ze 14nm generací je „čistý“ serverový Cascade Lake.
Intel bude slabinu řešit záplatou, která zpozdí přístup ostatních jader k bufferu, když jiné jádro sáhne po instrukcích RDRAND, RDSEED nebo EGETKEY, při jejich použití mohlo dojít k bezpečnostnímu průniku. V případě, že tyto instrukce bude vykonávat více jader najednou, budou po aplikaci patche probíhat sériově namísto (jako dosud) paralelně. Tím bude na úkor výkonu zajištěno, že má k bufferu vždy přístup maximálně jedno jádro.
SGAxe
Jde o rozšíření bezpečnostní slabiny CacheOut. S použitím principů CacheOut může útočník získat klíče z SGX, s jejichž pomocí může vytvořit důvěryhodně se tvářící enklávu, která projde atestačním mechanizmem Intelu, čímž jsou ztraceny všechny bezpečnostní záruky. Podle autorů vydal Intel řadu záplat na díry související s SGX, ale ty se ukázaly být neefektivní proti SGAxe. Intel na druhou stranu tvrdí, že současná (červnová) vlna záplat opravující CVE-2020-0549 (L1D Eviction Sampling) je i funkční ochranou proti SGAxe. Buďto je tedy informace objevitelů bugu již neaktuální, nebo má Intel na míru zazáplatování jiný názor než výzkumníci.
Budeme-li pokládat obě díry v brzké době za potenciálně zalepené, řadových uživatelů se asi příliš nedotknou a v serverech, kde doje na aplikaci záplat, se nejspíš projeví jen kosmetický propad výkonu, neboť instrukce RDRAND, RDSEED a EGETKEY nejsou zrovna to, co by procesor vytěžovalo po 99 % výpočetního času.