ASLR je vinou chyby ve Windows 8/10 méně funkční než ve starším Windows 7

Byl objeven nepříjemný problém, jenž narušuje funkčnost ASLR a vás nechává myslet si, že je ochranná metoda plně funkční.

1
Ilustrační foto
Ilustrační foto

Když Microsoft doporučuje, abychom přešli na novější vydání Windows, k nejběžnějším argumentům patří lepší zabezpečení. Jak se ale ukázalo, kvůli chybě je aktuálně aspoň v jedné disciplíně Windows 7 zatím lepší než jeho nástupci, tj. Windows 8 a Windows 10. Problém se týká implementace metody ASLR, která zjednodušeně řečeno umisťuje kód do nahodile zvolených částí operační paměti.

Díky nepředvídatelnosti umístění kódu lze předejít některý typům útoků. ASLR se objevilo poprvé ve Windows Vista, byť z důvodu kompatibility bylo aktivováno jen pro některé důležité procesy a knihovny. Bezpečnostní výzkumník Will Dormann popsal chybu, kdy stroje s Windows 8 a novější s nástroji Windows Defender Exploit Guard či EMET nezapínají všechny funkce, přestože se v uživatelském prostředí tváří jako zapnuté.

Polofunkční ochrana

To tedy znamená, že vy se domníváte, že je ochrana aktivní, ve skutečnosti ale nedopatřením není kompletně aktivní. Aplikace, které nevyužívají funkci DYNAMICBASE, totiž nejsou umisťovány do paměti náhodně, ale na předvídatelné místo, přestože by to tak být nemělo. Lze předpokládat, že Microsoft objevený problém vyřeší.

Prvním běžným operačním systémem, který začal metodu ASLR používat, byl OpenBSD v roce 2003.

Do té doby lze kompletní aktivaci ASLR vyřešit ruční naimportováním následujícího klíče do registru:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel] „MitigationOptions“=hex:00,01,01,00,00,00,00,00,00,00,00,00,00,00,00,00

Tento text např. můžete vložit do nového textového souboru, který uložte. Příponu souboru pak změňte na REG, importovat ho lze poklepáním. Funkce Dynamicbase zajišťuje, že se aplikace dobrovolně přihlásí k tomu, že podporuje ASLR. Je pak tedy za standardních podmínek umisťována do náhodného místa paměti.

Tip: Google obviňuje Microsoft z laxního přístupu k záplatování starších řad Windows. Kde leží pravda?

Dvojice výše uvedených nástrojů však umožňuje vynutit režim, kdy jsou náhodně umisťovány také všechny ostatní aplikace. Tento režim ale v Osmičkách a Desítkách nebyl plně funkční. Z vyjádření Microsoftu vyplývá, že toto pro všechny aplikace vynucené ASLR sám příliš nepodporuje kvůli možné nekompatibilitě.

Uznal tak, že předvolba ve Windows Defender Exploit Guard nefunguje, použití tohoto režimu však nedoporučuje. Jedná se o ústupek kompatibilitě a použití režimu musí být pečlivě zváženo. Nástroje EMET a WDEG dále umožňují aktivovat kompletní metodu ASLR pro jednotlivé aplikace, což je tedy druhé alternativní řešení, které ovšem nepostihuje celý systém. Můžeme jej brát jako kompromis mezi zabezpečením a kompatibilitou.

1 komentář