Vyjádření AEC k Meltdown a Spectre zranitelnostem.
12. 1. 2018
Vyjádření AEC k Meltdown a Spectre zranitelnostem.

Poslední týdny plní titulky internetových zpráv a novin bezpečnostní chyby Meltdown a Spectre. Jedná o hardwarové zranitelnosti, které po delší době zasahují širokou veřejnost, a to po celém světě.

Čeho se problém týká?

Jádrem problému jsou mikroprocesory, které dnes tvoří součást běžného života každého člověka či domácnosti. Hlavními jmény, o kterých se ve spojení s těmito zranitelnostmi mluví, jsou Intel, AMD či ARM. Problém se však týká i firem, jejichž produkty jsou postaveny na podobných technologiích, jako například grafické procesory nVidia, A-čipy v mobilních zařízeních firmy Apple či procesory Snapdragon od společnosti Qualcomm. Teoreticky se tak tento problém týká majoritní části počítačů, mobilních telefonů a datových center po celém světě.

 

Detailnější pohled?

Zranitelnosti jsou svým principem odlišné, obě však ve zkratce umožňují přístup do části paměti procesoru, ke které nemá proces za normálního stavu příslušná oprávnění.

Meltdown (Rogue Data Cache Load, CVE-2017-5754) je postaven na faktu, kdy škodlivý proces může získat přístup do paměti operačního systému, procesů či virtuálních strojů, nacházejících se ve stejném cloudu. Hlavními cíli jsou některé čipy rodiny ARM, především ale velká část x86 mikroprocesorů značky Intel, které obsahují jednotnou paměť jak pro procesy, tak pro jádro systému. Útočník je tedy schopen přistoupit do paměti jádra operačního systému, a to i s procesem, spuštěným pouze pod neprivilegovaným uživatelským účtem. Procesory sice obsahují bezpečnostní mechanismy kontrolující přístup do chráněné oblasti paměti, ale dříve než přijdou tyto instrukce na řadu, je již obsah jádra načten do cache paměti, kde je při správném načasování volně přístupný.

Spectre (CVE-2017-5753, CVE-2017-5715) je poněkud globálnější problém, zasahující i procesory AMD a další jmenované hráče. Zranitelnost vyplývá z tzv. technologie predikce větvení kódu, kterou procesory zajišťují svůj co nejefektivnější běh. Spectre se pak dělí na několik variant, kterými se útočící proces dokáže dostat do zakázané části cache. Oproti Meltdown je zde cílem pouze paměť ostatních procesů, nikoliv jádro systému.

Kdo je viníkem?

Přestože bychom mohli vinit především samotné výrobce procesorů, není odpověď na tuto otázku tak jednoduchá. Frekvence procesorů dříve jednoznačně určovaly jejich výkon. Fyzikální a technologické limity však stály za tím, že výrobci mikroprocesorů začali vyvíjet různé techniky optimalizující běh jader procesoru, zpracování instrukčních řetězců a výpočtů, a to vše ve jménu navyšování výkonu mikroprocesorů. Takovými technikami jsou například „out-of-order execution“, umožňující provádět výpočty mimo pořadí, či metody spekulativních výpočtů a predikcí větvení kódu, které se snaží předpovídat správnou posloupnost instrukcí uvnitř vlákna při přítomnosti podmínek. Především tyto technologie stojí za výrazným zvýšením výkonu procesorů v posledních letech, tento pozitivní efekt je však vykoupen bezpečnostními nedostatky v jejich architekturách, které naplno vyplynuly až na podzim loňského roku.

Jsou má zařízení zranitelná?

Do této chvíle nejsou známé žádné útoky, které by zmíněné zranitelnosti zneužívaly. Aby to tak zůstalo i nadále, nejsou zatím kromě publikovaných článků k oběma bezpečnostním chybám známy konkrétní technické podrobnosti.

Jestli je váš počítač chráněn proti Meltdown či Spectre si můžete sami otestovat. Přítomnost první z těchto zranitelností lze zjistit buď pomocí skriptu, který před několika dny vydal Microsoft, nebo bezplatnou aplikací Spectre Meltdown CPU Checker, vydanou softwarovou firmou Ashampoo. Je-li například Váš internetový prohlížeč chráněný proti Spectre ověřuje stránka čínského bezpečnostního týmu Tencent's Xuanwu Lab.

https://www.powershellgallery.com/packages/SpeculationControl/1.0.3
https://www.ashampoo.com/en/usd/pin/1304/security-software/spectre-meltdown-cpu-checker
http://xlab.tencent.com/special/spectre/spectre_check.html

   

 Jak se chránit?

Jelikož se jedná se o chybu v hardware, je její náprava velmi složitá. Ohroženy jsou všechny operační systémy - od desktopových MS Windows, Linux či Mac OS až po mobilní iOS, Android či Windows Mobile. Ať již jsou produkty dříve jmenovaných výrobců tímto problémem zasaženy méně či více, všichni výrobci mikroprocesorů a operačních systému postupně v těchto dnech vydávají bezpečnostní záplaty, které by měly softwarově zabránit zneužití zranitelností Spectre a Meltdown v budoucnu.

Důsledky?

Uživatelé by kromě nucených aktualizací a odstávek serverů a cloudových služeb neměli nijak výrazně tyto problémy pocítit. Velkou neznámou stále představují bezpečnostní záplaty pro procesory Intel, jejichž architektura sdílené paměti vyžaduje komplexnější nápravu na straně operačního systému. V současné chvíli se tento fakt projevuje snížením výkonu při některých operacích na systémech Microsoft Windows 7 a 8.1 i na některých linuxových distribucích, a to především u starších procesorů. Tento stav však není konečný, neboť vývojáři usilovně pracují na optimalizacích svých záplat. Je tedy možné, že se za několik týdnů situace stabilizuje a vše se dostane do starých kolejí. Alespoň do té doby, než odborníci objeví nové kritické zranitelnosti, které opět ovlivní svět informačních technologií.