Windows AppLocker: jak zvýšit zabezpečení OS (část 2.)

Jednou z velmi zajímavých technologií, které jsou obsaženy ve Windows 7 Ultimate, Enterprise a Windows 8 Enterprise je i technologie AppLocker.

 V prvním díle jsme si popsali, co to vlastně AppLocker je, jakým způsobem dokáže aplikace kontrolovat a jaká jsou výchozí pravidla. V tomto pokračování se zaměříme na tvorbu vlastních pravidel včetně konkrétního příkladu.

Anatomie pravidel

Klíčem k vytváření nových pravidel nebo k modifikaci existujících pravidel AppLockeru je znalost základních komponent, které tvoří kompletní pravidlo a jak tyto komponenty spolupracují. Jakmile porozumíte těmto základním komponentám, můžete začít jednoduše upravovat výchozí pravidla, která jste připravili v konzoli v předchozí kapitole. Úpravu pravidel provedete buďto dvojkliknutím na pravidlo anebo kliknutím pravým tlačítkem myši a volbou položky Vlastnosti z nabídky.

Pokud vytvoříte nové pravidlo, je spuštěný průvodce, který vám pomůže pravidlo vytvořit. Na rozdíl od tohoto průvodce znamená pozdější úprava pravidla ruční práci, zde již žádný průvodce není. V obou případech pak upravujete stejné položky a proměnné, které modifikují pravidlo.

Pokud se podíváte na obrázek 8., vidíte okno s vlastnostmi pravidla, které můžete modifikovat. První možností je název pravidla, popis a stav pravidla – zdali je povolené či zakázané. Z mé vlastní zkušenosti je dobré do popisu pravidla zapsat co dané konkrétní pravidlo dělá, značně to zjednoduší život ve chvílích hledání a řešení problémů. Poslední volbou, která je na první záložce je volba skupiny, které se dané pravidlo týká a bude na ni uplatňované.

01.png
Obrázek 8 – základní vlastnosti pravidla.

Další vlastnosti pravidel jsou nastavovány na záložce cesta. Na této záložce definujeme, kterých aplikací se bude dané pravidlo týkat. Na obrázku 9 je vidět stejné pravidlo jako v předchozím případě a cesta je zapsána jako hvězdička (*), což značí, že se pravidlo týká všech aplikací v rámci systému, dalo by se označit jako „jakákoliv cesta“.

02.png
Obrázek 9 – nastavení cesty k aplikacím.

Poslední záložkou, která slouží pro úpravu pravidel je záložka Výjimky. Jak již jméno napovídá, je možné definovat výjimky, na které se pravidlo nebude vztahovat – viz. obrázek 10. Výjimka může být vydavatel aplikace, souborový hash nebo cesta k aplikaci. Jak je uvedeno v předchozím příkladu, které definuje, že skupina Administrators má možnost spouštět jakékoliv aplikace, ale výjimkou může být složka C:\Program Files\Windows Media Player, tak jak je na obrázku 11.

03.png
Obrázek 10 – nastavení výjimek v pravidle
04.png
Obrázek 11 – nastavená výjimka pravidla

Takto připravená výjimka při spuštění souboru způsobí hlášení (viz obrázek 12) a uživateli je odepřeno spustit aplikaci.

05.png
Obrázek 12 – odmítnutí spuštění aplikace podle pravidla

Pokud bychom identickou výjimku nastavili na první výchozí pravidlo, které se týká skupiny Everyone a poslední výchozí pravidlo nechali bez jakékoliv výjimky, pak běžný uživatel nebude mít možnost aplikaci spustit, členové skupiny Administrators aplikaci spustí bez problémů.

Pokud hovoříme o výjimkách, je asi dobré zmínit také fakt, proč je možné vytvořit pravidlo, které mi zakazuje a povoluje aplikace, když jsem dříve zmínil, že technologie AppLocker pracuje na principu „co není povolené, je zakázané“. Principem pravidel, která zakazují je s ohledem na existenci výjimek, která povolí spouštění aplikace. Je tedy možné pravidlo postavit tak, že skupina Everyone bude mít zákaz a výjimkou bude skupina Administrators, která bude mít spouštění povoleno. Příklad může být následující. Skupina everyone bude mít odepřený přístup do adresáře C:\Program Files\Microsoft, výjimka bude skupině administrátorů přístup udělovat (pozor, toto je pouze příklad!!) tedy vyjma administrátorů žádný uživatel nespustí aplikaci z C:\Program Files\Microsoft.

Automaticky generovaná pravidla

Jak postupně prohlubujete znalosti týkající se AppLockeru a pravidel, která je možné využít, tak je si můžete všimnout, že po pochopení principu není AppLocker zase tak složitou technologií. Samozřejmě můžete využít kompletní manuální cestu a pravidla vytvářet ručně, ale existuje také průvodce, který vám s přípravou nových pravidel pomůže a díky tomu ušetří velkou spoustu času.

Pokud tedy chcete připravit pravidla pro počítače, není nic jednoduššího, nežli kliknout pravým tlačítkem myši na odpovídající skupině pravidel (aplikace, installer, skripty) a zvolit „Automaticky generovat pravidla“ – viz obrázek 13.

06.jpg
Obrázek 13 – průvodce automatickým generováním pravidel

Po kliknutí je spuštěný průvodce, kde odpovíte několik vcelku jednoduchých dotazů, jako je cesta, kde jsou instalovány aplikace atd. Co se cesty k aplikacím týče, dejte pozor, jakou bitovou verzi operačního systému používáte x86 či x64. Byť je cesta k programovým souborům reprezentována identicky %PROGRAMFILES%, tak některé soubory nemusí být dostupné v obou adresářích apod. Jakmile projdete průvodcem a rozhodnete se, jaká pravidla generovat, průvodce analyzuje počítač a připraví pravidla pro vás. Výstup průvodce je pak na obrázku 14.

07.jpg
Obrázek 14 – Dokončení průvodce automatického generování pravidel

Ještě před vlastním vytvořením pravidel si můžete prohléhnout, jaké soubory byly analyzovány a jaká pravidla s jakými parametry budou vytvořeny.

Při práci s průvodcem doporučuji pracovat na koncové stanici, která je nainstalována pomocí tzv. standardní image, tedy instalace, kterou koncoví uživatelé používají. Nedoporučuji spouštět průvodce na serveru nebo administrátorské stanici, mnohé aplikace nemusí být nainstalovány a naopak jsou instalovány některé aplikace navíc. Výsledek by tedy nemusel odpovídat realitě a použití koncovým uživatelem. Vytvořená pravidla pomocí průvodce jsou na obrázku 15.

08.jpg
Obrázek 15 – výchozí pravidla a pravidla vytvořená pomocí průvodce

Po vytvoření pravidel můžete samozřejmě tato pravidla libovolně modifikovat a rozšiřovat dle potřeby.

AppLocker prakticky proti aktuálním hrozbám

Útočníci hledají nové cesty jak znemožnit uživatelům jejich život, jak získat nějaké jmění. V poslední době se internetem šíří hrozba pod názvem CryptoLocker. Výsledkem jeho činnosti jsou zašifrované soubory na lokálních / výměnných / síťových discích. Pokud nezaplatíte požadovanou částku, je smazán klíč použitý pro šifrování. Nepomůže změna data v BIOSu,… Projevem “infekce” je nemožnost otevřít běžně využívané soubory doc, .docx, .xls, .xlsx, .ppt, .pst, .dwg, .rtf, .dbf, .psd, .raw, .pdf a další. Přijít k tomuto viru je možné v současné době několika možnými způsoby:

09.png
  1. otevřením přílohy v mailu a spuštěním obsahu přílohy.
  2. přístupem na nakaženou webovou stránku.
  3. v poslední době stažením a instalací nakaženého kodeku / video ovladače.

Tedy jak vidno, ono se o infekci nebo virus v pravém slova smyslu nejedná, stejně tak nejsou využívání žádné známé bezpečnostní chyby v operačním systému, vše je s “laskavým svolením” uživatele. V současné době neexistuje cesta jak navrátit zašifrované soubory do své nezašifrované podoby. Ochranou je prevence:

  1. chodit tam a otevírat pouze to co vím, že je bezpečné
  2. provádět offline zálohy
  3. aktuální antivirové řešení

Nicméně je ještě jedna cesta, jak se tomuto napadení, resp. zašifrování souborů bránit - k dispozici již od Windows XP - Software Restriction Policies / AppLocker. Vycházejme z předpokladu, že škodlivý kód je spouštěn z EXE souboru, který dorazí emailem,… (co se situace týká, kdy škodlivý kód je “přibalen” k běžnému SW, pak toto řešení nepomůže, resp. pomůže, ale ovladač,.. nebude spuštěn jako celek). Je možné nadefinovat pravidla pro SRP / AppLocker následovně:

%localAppData%\*.exe - blokuje spouštění z C:\Users\%username%\AppData\Local
%localAppData%\*\*.exe - blokuje spouštění z C:\Users\%username%\AppData\Local\*
%Temp%\Rar*\*.exe - blokuje spouštění v TEMP, souborů otevíraných pomocí WinRAR
%Temp%\7z*\*.exe - blokuje spouštění v TEMP, souborů otevíraných pomocí 7zip
%Temp%\wz*\*.exe - blokuje spouštění v TEMP, souborů otevíraných pomocí WinZip
%Temp%\*.zip\*.exe - blokuje spouštění v TEMP, souborů otevíraných pomocí Windows Explorer
%localAppData%\Microsoft\Windows\INetCache\*.exe - blokuje spouštění souborů v IE temp
%localAppData%\Google\Chrome\User Data\Default\Cache\*.exe - blokuje spouštění souborů v Chrome temp (pozn. cache je v binární formě, je nepravděpodobné, že by se vyskytl přímo exe soubor)
%localAppData%\Mozilla\Firefox\Profiles\*.exe - blokuje spouštění souborů v FF temp (pozn. cache je v binární formě, je nepravděpodobné, že by se vyskytl přímo exe soubor)

Výsledek pak může vypadat např. takto:

10.png

Výhodou řešení je, že je snadno nasaditelné pomocí skupinových politik i v rámci organizací. Pokud bychom chtěli být ochráněni ještě lépe, je vhodné nasadit tzv. Application Whitelisting, tedy nastavit SRP/Applocker tak, aby umožňoval spouštět pouze vyjmenovaný software. Ostatně toto je preferovaná metoda NSA - více v dokumentu http://www.nsa.gov/ia/_files/os/win2k/Application_Whitelisting_Using_SRP.pdf

Na závěr

Na začátku článku jsme se zabývali původní technologií na blokování aplikací – software Restriction Policy a postupně jste se seznámili s technologií Windows – AppLocker. Na závěr lze říci jen to, že AppLocker je neobyčejně velkým vylepšením oproti SRP, které splní nejedny požadavky i ve velké organizaci. Nicméně i v této oblasti existují produkty, které nabídkou funkcí AppLocker převyšují, nicméně se jedná o další, placené produkty. Proč tedy nevyužít funkce, které nabízí operační systém a svou funkcionalitou odpovídají požadavkům organizace.

Z mých osobních zkušeností lze AppLocker také označit jako dobrého sluhu a zlého pána, přemýšlejte před nasazením pravidel a provádějte řádné testování.

Počínaje Windows 7 obsahují další velice užitečnou funkci, která se skrývá pod názvem UAC (User Account Controll – Řízení uživatelských účtů). Při vhodném nastavení a nasazení UAC, AppLocker a standardních uživatelů se můžeme dostat do stavu, kdy nemusí být zapotřebí souborový antivirus (hovořím hypoteticky). UAC mi nedovolí zápis souborů do systémových částí, potažmo uživatelského profilu (Internet Explorer se zapnutým UAC má nižší oprávnění nežli standardní uživatel), naproti tomu AppLocker zajistí to, že i v případě uložení aplikace nebude tato aplikace spuštěna. AppLocker je velice silnou technologií, která napomůže především v podnikovém prostředí ke standardizaci IT prostředí.

Informace týkající se správy AppLocker pro Windows 7 je uvedena na Technet zde http://technet.microsoft.com/library/ee791916(WS.10).aspx a pro Windows 8 na Technet zde http://technet.microsoft.com/cs-cz/library/hh994629.aspx

Autor: Ondřej Výšek, MVP

Články ze série Microsoft TechNet nevytváří redakce Živě.cz, ale partneři programu Microsoft TechNet. Jsou publikovány v rámci mediálního partnerství Živě.cz a společnosti Microsoft.

Diskuze (1) Další článek: Cloudový fenomén Salesforce.com chystá expanzi v Česku

Témata článku: , , , , , , , , , , , , , , , , , , , , , , , , ,