Hlavní navigace

PŘEHLEDNĚ: Meltdown a Spectre změní procesory , jak ale útoky fungují?

9. 1. 2018

Sdílet

 Autor: Fotolia © lkeskinen
Bezpečnostní hrozba týkající se velké části v současnosti užívaných procesorů už pár dní hýbe technologickými médii. Týká se nejen stolních počítačů, ale také laptopů, chytrých telefonů, tabletů a dalších zařízení. Zranitelnosti se dělí na dva typy – Spectre a Meltdown.

Oba typy přibližuje společnost Red Hat a její ARM vývojář Jon Masters, který na odhalení a opravě zranitelností osobně pracoval.

Spectre i Meltdown fungují na principu zneužívání tzv. spekulativního vykonávání, standardního jevu u fungování procesorů. Připodobněme si jej k lépe uchopitelné situaci z reálného světa.

Zákazník pravidelně navštěvuje oblíbenou kavárnu a objednává si stále tu samou kávu; obsluha si postupem času „zvykne“ na toto pravidelné chování a začne mu kávu připravovat předem. Jednoho dne však zákazník svou objednávku změní a obsluha musí uvařit kávu jinou a novou.

Teď si k tomu přidejme prvek, že na zákazníkově kelímku, do kterého mu obsluha kávu připravuje, je napsáno jeho jméno. Když mu spekulativně připravují jeho kávu, ale zákazník si tentokrát objedná něco jiného, musí popsaný kelímek s kávou vyhodit; v tu chvíli je však informace na kelímku viditelná pro kohokoliv, kdo by jej potenciálně sledoval.

Jde o příklad spekulativního vykonávání: obsluha neví jistě, zda si zákazník objedná to, co obvykle, ale soudě podle předchozích zkušeností učiní kvalifikovaný odhad. Podobně spekulace se během našeho dne dějí běžně, protože jsou efektivní a často pravdivé. Téměř stejně fungují i naše počítače: spekulativní vykonávání umožňuje uskutečnit některé operace a procesy ještě předtím, než je zcela jasně známo, že budou potřeba. Jde o časovou úsporu.

Moderní procesory spekulativní vykonávání využívají často a jejich algoritmy se neustále zdokonalují; často dosahují až 99% přesnosti ve svých odhadech.

Potenciální zrychlení využitím spekulativního vykonávání je značné: čipy dokáží poměrně spolehlivě předpovídat, zda nastane možnost A, nebo zda budou muset vykonat jinou činnost a tím zvyšují rychlost procesů. Jde o jednu z klíčových optimalizací posledních několika dekád.

A tím se dostáváme ke zdroji zranitelností Spectre a Meltdown: pokusy o další optimalizaci spekulativního vykonávání způsobily problémy, protože vývojáři předpokládali, že celý proces je „černá skříňka“, neviditelná pro třetí stranu, a tedy i útočníky.

To se však ukázalo jako nepravda a útočníci mohou do „spekulativního okna“ proniknout a systémem následně do jisté míry manipulovat. Masters z Red Hat očekává, spolu s dalšími odborníky, že objevené zranitelnosti snadno mohou zapříčinit proměnu procesu výroby čipů do budoucna.

Meltdown je zranitelnost, při které útočník zneužívá spekulativního okna tak, aby mohl na data, která jím prošla, nahlédnout. Útok spoléhá na běžně užívané principy, standardní pro celý průmysl. Problémem je paralelní kontrola povolení k přístupu a načítání dat z mezipaměti, která není nijak řešena, neboť, jak je psáno výše, nikdo neočekával, že by na proces spekulativního vykonávání mohl někdo „nahlížet“.

Meltdown jde výrazně omezit už nyní, problém je ovšem z toho plynoucí zpomalení systému.

příloha_ovladnete_sva_data

Spectre je o něco složitější druh zranitelnosti, princip jeho zneužití je však obdobný: útočník může z cache čerpat citlivá data. Velice náročnou záležitostí bude Spectre omezit natolik, aby již pro uživatele nemohl být hrozbou; dopad na výkon zařízení je totiž ještě výraznější; Red Hat mluví o zpomalení, které „není nevýznamné“.

Masters zdůrazňuje, že jde o zcela nové kategorie systémových zranitelností: není jasné, jak se v následujících měsících situace vyvine. 

Byl pro vás článek přínosný?