Google odhalil neopravenou bezpečnostní chybu ve Windows 8.1

Ikona času čtení 3 min. číst


Čtenáři pomáhají podporovat MSpoweruser. Pokud nakoupíte prostřednictvím našich odkazů, můžeme získat provizi. Ikona popisku

Přečtěte si naši informační stránku a zjistěte, jak můžete pomoci MSPoweruser udržet redakční tým Dozvědět se více

Windows 8.1 Nabídka Start Nová

Výzkumník společnosti Google odhalil neopravenou bezpečnostní chybu ve Windows 8.1. Výzkumník společnosti Google zveřejnil tuto chybu na stránce Výzkum zabezpečení Google a vztahuje se na ni 90denní lhůta pro zveřejnění. Pokud uplyne 90 dní bez široce dostupné opravy, hlášení o chybě se automaticky zviditelní veřejnosti. Neexistují žádné informace o tom, zda Microsoft chybu uznal nebo zda na ní pracuje. Ale cítím, že je nezodpovědný krok od společnosti Google zveřejnit zranitelnost na produktech, jako je Windows 8, kterou každý den používají miliony lidí.

O chybě byly zveřejněny následující informace,

V aktualizaci Windows 8.1 systémové volání NtApphelpCacheControl (kód je ve skutečnosti v ahcache.sys) umožňuje ukládání dat o kompatibilitě aplikací do mezipaměti pro rychlé opětovné použití při vytváření nových procesů. Normální uživatel se může dotazovat na mezipaměť, ale nemůže přidávat nové položky uložené v mezipaměti, protože operace je omezena na administrátory. To se kontroluje ve funkci AhcVerifyAdminContext.

Tato funkce má chybu zabezpečení, kdy správně nekontroluje token zosobnění volajícího, aby zjistil, zda je uživatel správcem. Přečte token zosobnění volajícího pomocí PsReferenceImpersonationToken a poté provede porovnání mezi SID uživatele v tokenu s SID LocalSystem. Nekontroluje úroveň zosobnění tokenu, takže je možné získat identifikační token pro vaše vlákno z místního systémového procesu a tuto kontrolu obejít. Za tímto účelem PoC zneužívá službu BITS a COM k získání tokenu zosobnění, ale pravděpodobně existují jiné způsoby.

Teprve potom je třeba najít způsob, jak tuto zranitelnost zneužít. V PoC se vytvoří záznam do mezipaměti pro spustitelný soubor UAC s automatickým povýšením (řekněme ComputerDefaults.exe) a nastaví mezipaměť tak, aby ukazovala na položku compat aplikace pro regsvr32, což přinutí podložku RedirectExe znovu načíst regsvr32.exe. Jakkoli by bylo možné použít jakýkoli spustitelný soubor, trik by spočíval v nalezení vhodné konfigurace kompatu aplikace, kterou by bylo možné zneužít.

Není jasné, zda je Windows 7 zranitelný, protože cesta kódu pro aktualizaci má kontrolu oprávnění TCB (ačkoli to vypadá, že v závislosti na příznacích to může být obejít). Nebylo vynaloženo žádné úsilí na ověření v systému Windows 7. POZNÁMKA: Toto není chyba v UAC, ale pouze pro demonstrační účely používá automatickou elevaci UAC.

PoC byl testován na aktualizaci Windows 8.1, 32bitové i 64bitové verze. Pro jistotu bych doporučil běžet na 32bit. Pro ověření proveďte následující kroky:

1) Vložte AppCompatCache.exe a Testdll.dll na disk
2) Ujistěte se, že je povoleno UAC, aktuální uživatel je správcem rozdělených tokenů a nastavení UAC je výchozí (žádná výzva pro konkrétní spustitelné soubory).
3) Spusťte AppCompatCache z příkazového řádku pomocí příkazového řádku „AppCompatCache.exe c:windowssystem32ComputerDefaults.exe testdll.dll“.
4) V případě úspěchu by se měla kalkulačka objevit jako správce. Pokud to napoprvé nefunguje (a získáte program ComputerDefaults), spusťte znovu exploit z 3, zdá se, že někdy při prvním spuštění došlo k problému s mezipamětí/časováním.

Zdroj: Google přes: Neowin

Více o tématech: download, microsoft, zabezpečení, aktualizovat, okna, Windows 8.1