Co dalšího by měl mít správce pod kontrolou
V předchozím článku o Endpoint security (PC WORLD červenec/srpen 2006) jsme naznačili, co se skrývá pod pojmem endpoint (koncový bod) a popsali jedno z možných nebezpečí, které na nás číhá. Diskutovali jsme o možnosti připojení a následném použití libovolného zařízení.
Mimochodem, nedávno se opět objevily informace o zneužití rozhraní FireWire pro získání informací z připojeného počítače. Tentokrát s možností získat i hesla.
Bohužel jediným způsobem, jak počítač zabezpečit, je port plně zakázat nebo odpojit. Naštěstí ale není FireWire až tak běžnou součástí standardních počítačů jako USB rozhraní a většina uživatelů jej nevyužívá. Pokud jej přesto pro svou práci potřebujete, nezbývá než mít k dispozici nástroj, který umožňuje auditovat připojená zařízení a důsledně sledovat a kontrolovat, jak se s rozhraním pracuje. Některé z takových nástrojů byly představeny v minulém článku.
Co by mělo být dalším krokem pro zvýšení bezpečnosti? Kontrola přístupu k aplikacím, respektive omezení činností uživatele před nevhodným použitím. Proč? Každého určitě napadne, že nechtěným softwarem jsou především viry. A řešením jsou antiviry, které každý rozumný uživatel na svém počítači má, ti zkušení je také aktualizují. Dalším krokem je správné nastavení přístupových práv a omezení systémových nástrojů pro změnu nastavení, přístup k registrům, systémovým adresářům atd. Ale je tato ochrana stoprocentní? Co nutnost práv správce pro některé aplikace? Nechtěli bychom omezit přístup i k dalším aplikacím? Popřípadě sledovat chování uživatelů? Jaké možnosti nám v tomto případě poskytuje operační systém Windows? Podobně jako u ochrany připojení zařízení toho moc není. Ale i tak se dá, alespoň ve verzi XP a 2003, základní podpora najít, a to v oblasti systémových politik, ať již lokálních nebo skupinových.
Obecně se politiky, pod nimiž budeme ochranu vytvářet, jmenují "Software Restriction Policy" česky "zásady omezení softwaru". Dají se najít v konzole pro správu politik v sekci pro počítač, v doméně i pro uživatele.
Prvním krokem, který je nutné v případě použití udělat, je založit nové zásady, jež nejsou na začátku nijak definovány. Důvodem je nutnost zvolit ze dvou typů filozofie přístupu k aplikacím. 1. Uživatel má vše povoleno a jen se mu zakazuje to, co nesmí (Blacklist). Tento přístup je velmi jednoduše aplikovatelný a použitelný. Na druhou stranu ale znamená nutnost průběžného sledování chování uživatele a zákaz nových aplikací. V politikách se tento přístup nazývá "Bez omezení" (výchozí nastavení).
2. Uživatel má vše zakázáno a jen se mu povoluje to, co může (Whitelist). Opačný přístup, kdy to, co není povoleno, je zakázáno. Změny je nutné provádět jen v případě, že nefunguje něco, co fungovat má. Tento přístup je bezpečnější, ale pro aplikaci a prvotní nastavení náročnější. V politikách se nazývá "Nepovoleno".
Jakýmsi mezistupněm může být kombinace obou přístupů, kdy se uživatelům ponechá přístup ke všemu, ale v rámci "všeho" se určí skupiny, které uživatel nespustí. Například se zakáží skripty VBS a pokud uživatel některý potřebuje spustit, vytvoří se v rámci této skupiny Blacklist.
Pro domácí použití a malé sítě je ve většině případů vhodnější první popsaný přístup. Přece jen není možné věnovat tolik času nastavení a externí správa může znamenat menší flexibilitu změny nastavení. Pro větší organizace, jež si chtějí zajistit nejen větší bezpečnost, ale také zvýšit efektivitu práce uživatelů (spustí jen to, co je pro jejich práci nutné), se zase více hodí ten druhý. Prvotní vyšší úsilí věnované nasazení se velmi rychle vrátí formou snížení nutnosti kontroly počítačů u uživatelů, kterým se "samo" na počítači neustále něco děje. Vhodným místem pro využití druhého přístupu jsou také různé kiosky a počítače vystavené veřejnosti. Správným počátečním nastavením a konfigurací lze dokonce snížit nebo úplně eliminovat potřebu antivirových a dalších programů, protože co není povoleno, nelze provést. Také nás nemusí trápit aktualizace a to, co bude za několik let, protože pokud přijde něco nového, tak to bude stejně nepovolené a do doby povolení nepoužitelné.
Při přístupu typ whitelist si je třeba uvědomit, že i operační systém představuje spustitelné soubory a aplikace, které je třeba také povolit. Prvním krokem musí být vždy nastavení operačního systému. Teprve v dalších krocích se lze bavit o aplikacích a spustitelných souborech.
Jaké kontroly nám tedy nabízejí Windows a jakým způsobem můžeme ověřit, že to, co uživatel spouští, je povoleno? Celkem máme k dispozici čtyři různá pravidla:
Hash otisk obsahu souboru, kterým je soubor jednoznačně identifikován. Využitelné především pro EXE a DLL soubory, bez ohledu na jejich umístění a název. Při spuštění se nejprve provede kontrola otisku a podle nastavení se spuštění povolí nebo zakáže.
Cesta ke spustitelnému souboru umístění souboru v počítači, které je při spouštění prověřováno. Použít lze systémové proměnné, hodnotu klíče v registrech (cesta k aplikaci uložená v registrech) a zástupné znaky "*" a "?". Nevýhodou je, že pokud přesuneme aplikaci do jiného místa, lze ji spustit. Povolením cesty do běžně nepřístupného adresáře rovněž otevíráme možnost zápisu pro uživatele s vyššími právy (Power user).
Certifikát jednoznačný důvěryhodný podpis aplikace. Pomocí certifikátů podepíšeme povolené aplikace a v pravidlech specifikujeme, které certifikáty jsou důvěryhodné. Aplikace, jež není podepsaná důvěryhodným certifikátem, se nespustí. Na rozdíl od varianty Hash se tedy nekontroluje konzistence obsahu, ale skutečnost, od koho aplikace pochází. Výhodou je opět nezávislost na místě spuštění.
Bezpečnostní zóny Internet Exploreru centrální nastavení zón, z nichž mohou uživatelé stahovat aplikace. Toto pravidlo se bohužel omezuje jen na aplikace typu MSI. Vše ostatní lze bez problémů stáhnout.
Pravidla se vytvářejí v politice v části "Další pravidla". Pravým tlačítkem se vybere typ pravidla a následující průvodce vytvoří omezovací pravidlo. Pravidel přitom můžeme vytvářet neomezené množství. V případě, že aplikace nebo program spadá do více pravidel, vyhrává to, které nejvíc odpovídá specifikaci souboru v pořadí Hash « Certifikát « Cesta k souboru « zóna internetu « defaultní pravidlo (vše povoleno/zakázáno). Povolená aplikace je spuštěna, pro nepovolenou se objeví chybová hláška o omezení spuštění systémovou politikou.
Stejně jako v případě omezování zařízení jsou odpovídající informace o omezení aplikací po aplikaci politik zapisovány do registrů.
V případě, že nejsme schopni se systémem pracovat (chybná pravidla nebo instalace nové verze) a potřebujeme se do něj dostat, máme dvě možnosti:
V případě, že je nastavení prováděno centrálně přes skupinové politiky, můžeme zrušit nastavené omezení a znovu aplikovat politiky.
V případě nepřístupnosti centrálního serveru politik nebo lokálního nastavení lze omezení zrušit modifikací hodnot registrů v nouzovém režimu.
Podrobněji se můžete o problematice nastavení omezení softwaru poučit v materiálech společnosti Microsoft, například na adrese www.microsoft.com/technet nebo zadáním klíčových slov "Software Restriction Policy" do vyhledávačů na internetu.
Tímto bychom mohli tuto problematiku uzavřít. Ale vraťme se ještě na začátek, kde jsme si řekli, že řešení nabízené systémy Windows není optimální. Měli bychom si říci, proč není optimální, co mu schází a co poskytují navíc nástroje třetích stran, které se touto problematikou zabývají.
V první řadě je předmětem diskuse centrální správa pomocí group policy, která může být i nevýhodou. Proč? Každý správce group policy může provést libovolnou změnu a chybí jakákoliv informace o tom, kdo jakou úpravu provedl. Dále je tu možnost jednoduše zrušit nebo modifikovat nastavení uložené v registrech, bez možnosti zpětného dohledání. Rovněž nemožnost okamžité aktualizace a změny nastavení bez nutnosti čekat na aplikaci politik nebo provedení restartu počítače není úplně ideální. Co se nám nemusí líbit dále? V případě konfigurace Whitelist chybí jakákoliv vazba na aktualizaci softwaru, především toho systémového, například automatizace aktualizace pravidel v kombinaci s nástroji typu WSUS. Představa, že první opravný patch znemožní uživatelům normální práci, je naprosto šokující. Dalším v praxi často opomíjeným problémem je auditování a způsob nastavování. Výše popsané nastavení práv lze řešit přes politiky a přiřazování různých politik pro různé objekty, ale nebylo by lepší mít jednoduchou konzolu, kde bychom si mohli vše jednoduše a přehledně nastavit a zobrazit? A to včetně informací o tom, kdo co zrovna spustil nebo se pokusil spustit? Ve Windows sice lze nastavit základní logování a auditování, ale jen do lokálního souboru a spíše pro účely ladění nastavení. A mohli bychom podobně určitě pokračovat dále, až k takovým detailům, jako je možnost definovat vlastní uživatelské zprávy z důvodu neuskutečnění určité akce.
Toto všechno a množství dalších funkcí nabízejí právě nástroje třetích stran. Včetně integrace do embedded řešení v kioscích a jiných systémů, vystavených nebezpečí zneužití. Ideální je pak modulární systém, který umožní jednoduše spojit a integrovat více typů ochrany do jednotné a přehledné správy. Takovým řešením může být nástroj společnosti SecureWave (www.securewave.cz), o kterém již byla zmínka minule v souvislosti s ochranou připojování zařízení k počítači. Výhodou podobných alternativ může být použitelnost a možnost nasazení na serverech, v terminálových a citrixových prostředích, jež jsou často vystavena většímu nebezpečí a jejich zneužití představuje větší hrozbu než samotné počítače uvnitř firmy. Důvodem je outsourcing nebo povolení externích služeb a přístupů do firmy.