2008/27 – 5. 8. 2008
MOŽNOSTI MODERNÍHO SÍŤOVÉHO ZABEZPEČENÍ ZASTARALÉ VÝPOČETNÍ TECHNIKY Ing. Michal Polívka Ústav telekomunikací, Purkyňova 118, 612 00 Brno Email:
[email protected] Existují specifické aplikace výpočetní techniky – zdravotnické vyšetřovací přístroje, měřicí technika, staré osobní počítače, řídící počítače atp., které jsou vybaveny standardními, či nestandardními operačními systémy a připojeny do sítě, mnohdy dále připojené do internetu. Na těchto počítačích někdy nelze řešit zabezpečení obvyklými prostředky. Řešením je využití existujících alternativ k běžně používaným metodám. Mezi ty patří specifické způsoby nasazení systémů detekce a prevence počítačového útoku, terminálových služeb, apod. Těmito možnostmi se zabývá článek.
aktualizovaný systém, či firewall použít, některé doklady tohoto tvrzení plynou z kap. 2.1.2.
1. ÚVOD Vývoj výpočetní techniky a zákony trhu nutí výrobce omezovat a ukončovat podporu starších systémů. Současně nedochází a ani docházet nemůže ke kompletní obměně starých zařízení za nová. Počítače, které jsou vybaveny výrobcem již nepodporovanými operačními systémy, jsou velkou, ohroženou skupinou. Další ohroženou skupinou jsou zabudované (embedded) počítačové systémy, které jsou součástí různých zařízení od tramvají, přes měřicí techniku po zdravotnické přístroje. Ty jsou, pokud jsou připojeny do sítě, snadným cílem útoku. Rychlost aplikace bezpečnostních oprav je klíčovým prvkem zajištění přiměřené míry bezpečnosti. Počty počítačů ohrožených neexistencí nebo neaplikovatelností bezpečnostních oprav stále rostou. Mnoho výrobců specializovaných zařízení aplikaci bezpečnostních oprav nejen nedoporučuje, ale dokonce zakazuje.
1.2. HROZÍCÍ RIZIKA Ohrožení různých typů počítačů, vyplývající ze zastaralosti použitých operačních systémů a dalšího softwaru je pouze eskalací obvyklých bezpečnostních hrozeb. Ohroženy jsou všechny počítače jakoukoli cestou přístupné útočníkovi. Nemožnost provést bezpečnostní opravy přímo na problémovém softwaru snižuje požadavky na sofistikovanost útoku.; Zranitelnost počítačových systémů je dána množstvím bezpečnostních chyb v jejich softwaru. Chyby jsou postupně objevovány a obvykle v různém čase od objevení výrobcem odstraněny. Bez průběžných oprav množství známých chyb v systému roste. Z bezpečnostního hlediska je kritická doba mezi nalezením zranitelnosti (chyby) v softwaru a existencí útoku využívající této zranitelnosti. V ideálním případě by bezpečnostní oprava měla být naprogramována, otestována a nasazena právě do okamžiku, kdy bude existovat útok, danou zranitelnost využívající, dále viz kapitola 2.2.2. V případě modelového PC k tomuto nedojde.
Chování výrobců a prodejců je v tomto smyslu pochopitelné. Mnohokrát se v minulosti stalo, že s nasazením určité opravy došlo k omezení nebo změně funkčnosti některých vlastností operačního systému. Ve zdravotnictví a dalších oblastech jsou mnohá zařízení u daného provozovatele zastoupena pouze jedním unikátním kusem a není tedy možné bezpečné otestování každé opravy.
Útoky na počítačové systémy můžeme rozdělit několika způsoby. Pro potřeby řešení zvolené problematiky budeme rozlišovat útoky (viz obr. 1):
Přitom může být ohrožené zařízení připojeno do počítačové sítě a ta je pak připojena do internetu. V době, kdy mezi nalezením zranitelnosti a existencí kódu, který ji zneužívá, uplynou hodiny, je třeba problém řešit komplexně a systémově.
Vnější – zařadíme sem všechny typy útoků přicházející z vnějšku na síťové rozhraní počítače. Přitom bude lhostejno, zda se bude jednat o útoky virem či útoky typu DoS (Denial of Service) apod.
Vnitřní – přicházejí všemi kanály, kromě síťového rozhraní (USB disky, diskety, DVD, klávesnice, atp.).
Cílené – útoky jsou řízeny vůlí útočníka. Útok je cílen na konkrétní systém, konkrétními prostředky s konkrétním záměrem.
Plošné – cílem není konkrétní systém. Reprezentantem jsou počítačové viry. Ačkoli je šíření virové infekce podmíněno mnoha vnějšími faktory (časové pásmo, propustnost linek, výkonnost cílových stanic, koncentrace zranitelných systémů na daném segmentu sítě) lze na šíření virů pohlížet jako na náhodný děj. (viry, červy, atp.).
1.1. MODELOVÉ PC Modelovým PC budeme v následujícím textu rozumět zařízení připojené do sítě, řízené zastaralým operačním systémem, bez možnosti aktualizací. S žádnou nebo omezenou možností řízení přístupových práv do systému. Po hardwarové stránce se bude jednat o zastaralý nevýkonný stroj, neschopný obhospodařit požadavky moderních bezpečnostních programů. V případě modelového PC nelze obvyklé obranné mechanismy, jako je např. antivirový software,
27-1
2008/27 – 5. 8. 2008 Rozdělení není obecně nijak pevně dáno. Mnoho zařízení lze kategorizovat obtížně. Pokud využijeme ISO OSI1 modelu, můžeme kontrolovat:
aplikační vrstvu – v tomto případě musíme znát kontrolované protokoly v nich pak rozpoznávat známé útoky.
síťovou/transportní vrstvu – vystačíme s jednoduchou znalostí zdrojové a cílové IP adresy, v případě komunikačních protokolu TCP a UDP pak ještě se znalostí schopnosti přečíst zdrojový a cílový TCP a UDP port.
Obr. 1 – rozdělení počítačových útoků
2.1.1. D RUHY FIREWALLŮ
Třídění, útoků je užitečné pro pozdější analýzu. Proti jednotlivým útokům existují sofistikované metody obran, které nejsou v podmínkách specifikovaných v kap. 1.1 použitelné. Většina následujícího textu se bude zabývat útoky vnějšími, bez rozlišení, zda půjde o cílený či plošný útok.
Jak bylo zmíněno v kap. 2.1, firewally lze rozdělit na softwarové a hardwarové. Označení „hardwarové“ je obvyklé, i když nepřesné. I hardwarové firewally jsou řízeny softwarem. Hardwarové řešení má řadu výhod. Především to je zřetelné oddělení od dalších zařízení. Mají předpoklad mít větší propustnosti než čistě softwarová – univerzální řešení. Mohou být odolnější vůči útokům, protože jejich software bývá zpravidla připraven pro jedno konkrétní zařízení a měl by tedy obsahovat méně zranitelností. K akceleraci zpracování procházejícího datového toku lze s úspěchem využít některé typy neuronových sítí. Tyto firewally obvykle využívají sofistikovaných metod paralelního zpracování kontrolovaného datového toku. Na pomezí hardwarových a softwarových firewallů můžeme narazit na specializovaná hardwarová zařízení, která jsou ale obvykle založená na platformě PC a využívající různé operační systémy. Může se jednat o modifikace Linuxu – obvykle na malých firewallech určených pro domácí použití a malé kanceláře2, nebo také o proprietární operační systémy, jako je IOS či PixOS od firmy CISCO. Mezi tato řešení patří například momentálně prodávaný IBM System x3650 s operačním systémem IPSO od firmy Check Point – v tomto konkrétním případě se ale už nejedná přímo o firewall, ale o systém prevence útoků, který bude rozebrán v kap. 2.2. Další variantou jsou čistě softwarové firewally. Ty mohou být nasazeny na osobních počítačích, jako běžný program spolu s antivirovým programem a dalšími, jako součást běžného bezpečnostního vybavení.
Je zřejmé, že vždy je třeba postavit mezi útočníka a zranitelný systém bariéru. Obrana proti vnitřním útokům je ve srovnání s vnějšími relativně jednodušší a lze ji poměrně efektivně řešit i technicko-organizačně.
2. PROSTŘEDKY ZVYŠUJÍCÍ BEZPEČNOST Bezpečnostní situace definovaná v kap. 1.1 je řešitelná běžně používanými bezpečnostními zařízeními. Jejich nasazení ale má určitá specifika. Základním bezpečnostním prvkem je dnes nepochybně firewall, doplněný o detektor zhoubného kódu – antivirový software, antispyware software atp. Mezi nejmodernější zařízení patří systémy detekce útoku.
2.1. FIREWALL Firewall je považován za jeden ze základních prvků zabezpečení počítačové sítě, ale i jednotlivé pracovní stanice. Je jednou z bariér oddělujících útočníka od chráněného systému. Můžeme rozlišit několik typů firewallů. Nejzákladnější dělení je na softwarové a hardwarové. Dále lze firewally dělit podle principu, funkce atp. Další možné dělení je na osobní a páteřní síťové. Můžeme je dělit také na jednosměrné a obousměrné.
Softwarové firewally jsou v některé své podobě součástí zřejmě všech současných serverových i desktopových operačních systémů. Existuje také řada dalších firewallů, které je možno do operačních systémů doinstalovat. Pro serverová MS Windows existuje několik firewallů různých výrobců a určení. Příkladem může být Kerio WinRoute Firewall, který však již obsahuje řadu pokročilých funkcí, ale také ISA3 server (dnes zaštítěn
Dělení na firewally jednosměrné a obousměrné není přesné. Nejčasněji se s ním můžeme setkat u osobních firewallů. Jednosměrností je obvykle myšleno, že takový firewall povoluje veškerou odchozí komunikaci a filtruje pouze komunikaci příchozí. Důsledkem takového postupu je v případě osobních firewallů obvykle spokojený uživatel, který není zatížen problémy s nastavováním, ale také nemožnost kontrolovat odchozí provoz.
1
Open Systems Interconnection – referenční vrstvový komunikační model 2 Tento segment je známý také jako SOHO (Small Office, Home Office – SOHO). 3 Internet Security and Acceleration (ISA) Server, v češtině je produkt výrobcem označován jako: „integrovaná brána zabezpečení na hranici sítě [8]“ 27-2
2008/27 – 5. 8. 2008 produktem Forefront) od Microsoftu. V případě Linuxu je situace odlišná. Jádro Linuxu obsahuje řadu vestavěných funkcí, které mu umožňují pracovat jako účinný firewall. Implementace síťových služeb obsahuje funkce, které umožňují konfigurovat filtrování paketů a zajišťují mechanismy, jež umožní přesně nastavit, pravidla filtrace. Jádra novější než 2.3.15 podporují 4. generaci firewallů – netfilter. Používá se zde nástroj iptables.
procesoru, spotřeba propustnosti sítě.
operační
paměti
a
snížení
V rámci ověřovacího testu, v souvislosti s podmínkami danými v kap. 1.1, byl nainstalován softwarový firewall ZoneAlarm (verze 7.0.462.000) na starý počítač – Pentium II, 64 MB RAM, síťová karta 10/100 Mb, operační systém MS Windows 2000. Bez nainstalovaného ZoneAlarmu počítač umožňoval bezproblémovou kancelářskou práci – MS Word 2003, MS Outlook Express 6 a Internet Explorer 6 pracovaly bez výrazných problémů. Procesor byl v klidovém stavu zatížen na cca 1÷2%. Po instalaci spotřebovaly procesy ZoneAlarmu cca 35 MB operační paměti (vsmon.exe cca 25 MB, zlclient.exe cca 10 MB), a zátěž procesoru stoupla v klidovém stavu na přibližně 11 %. Počítač se stal prakticky nepoužitelným. Kvůli zaplnění operační paměti byl nepříjemně často odkládán její obsah do odkládacího souboru na disk (swap). Došlo ke snížení propustnosti sítě. Toto snížení propustnosti má souvislost s neschopností procesoru zpracovat testy průchozího datového toku. Podobně se zachoval systém po odstranění ZoneAlarmu a instalaci Sunbelt Personal Firewall 4.5.916. Je zřejmé, že použitá sestava je extrémně zastaralá, ale pokus názorně demonstroval obavu mnoha administrátorů (zdravotnictví, školství, …), kde jsou podobné nebo nepatrně novější systémy využívány. Na moderním vybavení jsou výsledky zatížení obdobné, ale s menšími následky.
Klasické serverové softwarové firewally bývají instalovány na serveru s jednou nebo více síťovými kartami někdy na takovém zařízení bývají provozovány ještě další služby, což je z bezpečnostního hlediska riskantní. Slabinou těchto, ale i všech dalších podobných systémů, je jejich závislost na bezpečnosti platformy, na které jsou instalovány. Pokud se tedy v systému, na kterém jsou provozovány, vyskytne zranitelnost na úrovni, na které není firewall schopen ji potlačit, bývá toto zařízení snadno útočníkem překonáno. Softwarové osobní firewally jsou důležitou součástí bezpečnostního řetězce. Mají řadu výhod, ale i několik nevýhod, které jsou mnohdy považovány za klíčové a mohou se stát dokonce rozhodujícími pro nenasazení tohoto bezpečnostního prvku na konkrétním systému. Současné softwarové firewally jsou obvykle vybaveny několikaúrovňovou filtrací komunikace, která může být nasazena pouze přímo na chráněném systému a ne jinde. Osobní firewally obvykle mohou pracovat ve dvou režimech, které se mohou doplňovat. Jsou to režim manuální konfigurace, kdy uživatel definuje manuálně povolené porty a komunikační protokoly. Dále pak režim automatické konfigurace, kdy je zpravidla při prvním dotazu uživatel žádán o svolení či zakázání přístupu konkrétního programu k síti. V tomto režimu přitom většinou nemůže ovlivnit, které porty budou otevřeny a v jakém směru, případně s jakými IP adresami bude komunikace povolena. Připomeňme, že tímto způsobem lze kontrolovat nejen komunikaci na konkrétních portech, ale také aplikaci, která daný port využívá.
V souvislosti se softwarovými firewally lze připomenout druhou, obvykle zmiňovanou nevýhodou – napadnutelnost samotného firewallu. Je to racionální připomínka. Lze připomenout např. chybu v ZoneAlarmu verze z roku 2006, která umožňovala díky chybě ve službě TrueVector získat vyšší práva v systému [1]. Nebo chyba v bezplatné verzi z roku 2005 umožňující obejít kontrolu aplikací přistupujících na síť [2]. Každý software instalovaný do počítače může být cílem útoků. Pokud se škodlivý kód do chráněného počítače dostane, může se pokusit instalovaný firewall vyřadit z činnosti.
Personální firewally většinou nabízí další služby spojené s bezpečností (kontrola změn v aplikacích – heuristická analýza) a většinou i prohlížením www stránek (blokování vyskakovacích – pop-up oken apod.). Pro UNIXy v podstatě obdoba osobních firewallů neexistuje. Většinou jsou využívána robustní řešení postavena na profesionálních firewallech – netfilter, iptables.
Softwarový firewall ZoneAlarm byl zvolen pro jeho celosvětovou rozšířenost a existenci bezplatné verze. V žádném případě se nejedná o snahu tento kvalitní software zdiskreditovat. Testovací systém byl výkonnostně hluboko pod výrobce doporučeným minimem. Chybami je zatížen veškerý software. ZoneAlarm je pouze vzorkem. ZoneAlarm je produktem firmy Check Point, která dlouhodobě patří k významným producentům bezpečnostních řešení. Dříve tento firewall vyvíjela společnost Zone Labs. Osobní softwarové firewally mají přes zmíněné nevýhody řadu výhod, viz kap. 2.1.1 které nelze podcenit.
2.1.2. N EDOSTATKY FIREWALLŮ Mezi největší nevýhody můžeme zařadit – zpomalení chráněného systému, napadnutelnost samotného firewallu. Osobní firewally mohou samy vytvořit vstupní bránu do systému. Zpomalení chráněného systému bývá mnohdy považováno za klíčovou nevýhodu. V některých případech je tato námitka reálně opodstatněná. Mnoho osobních softwarových firewallů má relativně vysoké hardwarové nároky na provoz, to je dáno jejich architekturou a filtračními algoritmy. Uživateli subjektivně vnímané zpomalení má několik úrovní – zátěž
Klasické síťové firewally ve své standardní podobě nemají schopnost analyzovat obsah přenášené informace (obvykle pracují na 3. a 4. vrstvě OSI modelu). Pro přijatelnou úroveň zabezpečení diskutovaného PC je třeba firewall navázat na spolupracující systém detekce útoků. Standardní síťový firewall není schopen zabránit ve funkci takovým programům, jako je Skype. Ten 27-3
2008/27 – 5. 8. 2008 zahození paketu označeného systémem za škodlivý. Systémy detekce a prevence útoku jsou schopny reagovat na útoky virovým kódem, ale také na některé útoky DoS, některá řešení dokáží detekovat nevyžádanou poštu apod.
nepotřebuje ke svému provozu otevřený žádný port v příchozím směru a ve směru odchozím dokáže využít prakticky jakéhokoli otevřeného portu. Přesto lze s jeho pomocí snadno odesílat libovolná množství dat komukoli. Přitom jeho použití je tak snadné, že drtivá většina uživatelů jej využije ke sdílení dat mnohem raději než relativně obtížné instalace ftp serveru.
Obvykle jsou rozlišovány systémy detekce útoku (Intrusion Detection System – IDS), systémy prevence útoku (Intrusion Prevention System – IPS), někdy se navíc zavádí zastřešující pojem systémy detekce a prevence útoku (Intrusion Detection and Prevention System – IDP).
Firewall nedokáže zabránit průchodu škodlivého kódu, jako jsou viry a další malware1. Nedokáže blokovat ani detekovat síťové útoky jako je DoS útok – odepření služby a další. Přitom v současné době přichází čím dál více útoků na aplikační (sedmé) vrstvě OSI modelu. Využívá se bezpečnostních nedostatků aplikací. Tyto útoky jsou na síťové vrstvě nedetekovatelné.
Systémy detekce útoku a systémy prevence útoku se většinou liší i způsobem zapojení do počítačové sítě. Systémy IDS se obvykle zapojují k zrcadlu síťového provozu. Může jít o síťový tap nebo o zrcadlený (mirror) port na síťovém přepínači. Naopak systémy IPS bývají zapojeny v průchozím režimu, tzn., mají vstupní a výstupní port a veškerý provoz jimi prochází.
Dalším nedostatkem je, že řada aplikací navazuje spojení na jiném TCP/UDP portu než přenáší data (například FTP). Některé aplikace pak kombinují více protokolů. Např. VoIP, kdy jsou signalizační protokoly (např. SIP) odděleny od samotného přenosu hlasu (RTP). Pokud firewall takové aplikaci nerozumí, musí mít otevřeny veškeré možné porty, na kterých může komunikovat. To představuje bezpečnostní riziko.
Ze způsobu zapojení vychází podstata výhod a nevýhod jednotlivých řešení. Systémy IDS nezpomalují provoz na chráněné síti. Jejich nevýhodou ale je, že paket, který je součástí útoku projde na cílový systém (IDS pracuje s jeho kopií), obrana je až dalším krokem – obvykle je vyvolán TCP reset ve spolupráci s firewallem. Některé útoky mohou však být pouze jednopaketové a v tomto případě je IDS neúčinnou obranou. Jsou známy také útoky přímo na IDS, při nichž je IDS obvykle zahlcen provozem, přičemž nereaguje v přijatelném čase na útok na chráněnou síť. Naopak systémy IPS pracují v průchozím režimu. Příchozí paket je nejprve otestován a až poté předán do chráněného segmentu sítě. Problém tohoto řešení je rychlost zpracování datového toku. IPS se může snadno stát cílem DoS útoku a tak znefunkčnit provoz na celé chráněné síti.
Většina současných firewallů je hybridních – dokáží sledovat navazování spojení u tohoto typu aplikací a dynamicky otevřít pouze porty pro konkrétní spojení. Jedná se však stále o stavovou inspekci, je pouze sledován jeho průběh od navázání až po ukončení – ALG (Application Level Gateway)[3]. Platí, že ani ALG nemůže v principu vědět nic o bezpečnostních chybách konkrétní aplikace. Pokud příliš dlouhé URL způsobí přetečení zásobníku nebo umožní přístup k systémovým adresářům, je to z pohledu firewallu legální HTTP provoz.
Všechny systémy IDP pracují se sadou pravidel, která jsou průběžně aktualizována a přidávána nová výrobcem, dodavatelem či komunitou vytvořenou okolo daného řešení. Pravidla mohou být samozřejmě přidávána či upravována přímo správcem konkrétního IDP systému. Můžeme rozlišit tři typy metod detekce útoku [4]:
Je zřejmé, že pro zajištění bezpečnosti prostý firewall nestačí – je nutné pracovat s vrstvami OSI modelu, jejichž obsah firewally neumí kontrolovat.
2.2. SYSTÉMY DETEKCE A PREVENCE ÚTOKU Systémy detekce a prevence útoku nejsou náhradou firewallů, jsou dalším bezpečnostním prvkem. Systémy detekce útoků doplňují klasické firewally. Pracují na vrstvách ISO OSI modelu, které firewally nemohou kontrolovat. Systémy detekce útoku mohou s klasickými firewally kooperovat. Obvykle pracují na 6. a 7. vrstvě. Mnohdy bývají integrovány spolu s firewallem do jednoho balíku či řešení, při snaze poskytovat co nejkomplexnější služby. V literatuře [4] je systém detekce útoků definován jako „soubor nástrojů, metod a zdrojů, které nám pomáhají identifikovat, zpřístupnit a hlásit neautorizované a neschválené síťové aktivity.“ Prakticky se jedná o softwarové nebo hardwarové zařízení, schopné kontrolovat obsah přenášených dat. Obvykle tato zařízení využívají podobných principů jako antivirové programy. Obvyklou reakcí těchto systémů na detekovaný útok je 1
Slovo malware je složením anglických slov malicious software, tedy česky zákeřný, zlomyslný program 27-4
Srovnávání signatur – princip činnosti je podobný práci antivirového programu. Systém vyhledává určité bitové sekvence (shodu se signaturou, vzorkem) v datovém toku. Nevýhodou je generování poměrně velkého množství falešných poplachů. Čím je vzorek útoku kratší, tím je pravděpodobnost, že se vyskytne v normální komunikaci větší. Proto byla tato technika navíc obohacena o tzv. detekci stavu. Nevyhledávají se pouze znakové sekvence, ale také se zjišťuje, zda se tato sekvence nachází ve správné části datového toku. Proto je nutné udržovat v systémech tohoto typu databázi signatur jednotlivých útoků [4].
Srovnávání pravidel – kombinuje metodu srovnávání signatur s dalšími pravidly. Důvodem je minimalizace falešně pozitivních reakcí. Příkladem mohou být typy komunikace, kdy je sice vzorek útoku zjištěn, ale míří na místo, kde útokem být nemusí. Jednoduchým příkladem mohou být internetové
2008/27 – 5. 8. 2008 útok. V případě IPS je podle návrhu zablokován provoz v celé chráněné síti. V případě IDS je velmi pravděpodobně systém nefunkční a síť není nějak chráněna. Přitom dnešní softwarová řešení mohou mít potíže již se zpracováním datového toku cca 400 Mb/s.
stránky obsahující popisy zranitelností nebo vzorků útoků. V tomto případě může být také přenesen paket, který by jednoduchý IDP mohl vyhodnotit jako útok. Úkolem pravidel je odlišit tento vzorek od vzorku útočného. Je tak v jednoduchých případech činěno např. na základě portu, na který je vzorek odesílán, dále pak na základě znalosti IP adresy serveru, kterému by daný útok ve vnitřní síti mohl uškodit. Zvláště u útoků typu „přetečení zásobníku“ může být útokem až n+1 paket z řady, který přetečení způsobí a je zbytečné či dokonce nežádoucí blokovat předchozích „n“ paketů. Dalším využitím je sledování podezřelé aktivity na aplikační úrovni, kdy např. jeden neúspěšný pokus o přihlášení na ftp server neznamená žádné ohrožení, ale pokud je takových pokusů v určitém čase určité množství, může se jednat o snahu prolomit přístupové heslo slovníkovým útokem. Další využití může být odhalování skenování portů, DoS útok a další [4].
K předejití těmto problémům je třeba využít dostatečně robustní systém. Pokud bude systém IDP provozován na serveru, resp. osobním počítači a realizován pouze softwarově, vždy půjde o sériové zpracování dat – procesor počítače pracuje sériově. Počet možných spojení je navíc omezen. V případě použití výpočetního clusteru přejdeme k paralelnímu zpracování dat. Nevýhodou ale bude snížená propustnost vlivem nutnosti třídění a distribuce dat v clusteru. Jako účinnější řešení se jeví použití specializovaných hardwarových řešení s architekturou navrženou speciálně pro potřeby IDP systémů. S použitím speciálních procesorů, a paralelním zpracováním – filtrací [5].
Srovnávání profilů – metoda je založena na statistických pravidlech neustálého sledování provozu v síti, tvorbě nových a upravování existujících profilů. V ideálním případě má každý uživatel, resp. každý počítač ve vnitřní síti vytvořen profil obvyklého chování. Při odchylkách od toho stavu je chování považováno za nepřátelské. Systémy založené na tomto principu jsou vhodné k umístění do vnitřní sítě a odhalování vnitřních útoků, tedy útoků od vlastních systémů či zaměstnanců. Příkladem činnosti může být např. zaměstnanec zapínající svůj pracovní počítač v 8:00 hodin ráno, končící práci v 17:00 odpoledne a pracující převážně s interním databázovým serverem. Pokud je zjištěna činnost takového zaměstnance ve 23:00 v noci a jeho činností je provoz ftp serveru, je jeho počínání vyhodnoceno jako potenciálně nepřátelské. Nevýhodou těchto systémů je, že dlouhodobým učením se dají přizpůsobit k tolerování i jinak nepřátelských aktivit, případně naopak bránit v legitimní práci, v našem případě zmíněného zaměstnance, např. snaze pomoci kolegovi v zahraničí zpřístupnit data, která potřebuje k práci [4].
2.2.1. V YUŽITÍ V MODELOVÉM PŘÍKLADU Systémy IDP mohou tvořit jádro síťové bezpečnosti modelového počítače (kap. 1.1). IDP systém může filtrovat veškerý příchozí i odchozí provoz chráněné stanice. Jsou možné dvě varianty – může být nasazena softwarová varianta přímo na chráněný systém, případně hardwarová verze na síti před ochraňovaným systémem. Ve druhém případě může být zvolena taková konfigurace IDP, která se z hlediska chráněné stanice chová jako konzistentní, nepřerušená fyzická vrstva. Činnost IDP v této konfiguraci lze detekovat pouze tak, že se na fyzické přenosové trase ztrácí pakety podle filtračního klíče. Systém IDP může být nakonfigurován dvěma způsoby. Pokud bude provoz na chráněném počítači či síti, heterogenní – bude přenášen předem neurčený obsah, je možné využít klasické konfigurace, kdy IDP systém detekuje anomálie (metoda srovnávání pravidel) provozu, resp. vyhledává maligní řetězce. Druhou možnou konfiguraci systému IDP je možné nasadit v síti se striktně definovaným provozem. V tomto případě bude systém IDP propouštět pouze pakety s předem známým obsahem. Toto nasazení je možné např. u řídicích protokolů výrobních linek atp. (přísně nastavená a neupravitelně natrénovaná metoda srovnávání profilů.)
Podobně, jako v případě firewallů, lze i u IDP systémů rozlišit systémy realizované hardwarově a systémy softwarové. Dále můžeme rozlišit systémy pracující paralelně a sériově. V případě systémů IDP je třeba klást mimořádný důraz na průchodnost systému a s tím související schopnost udržet určitou množinu současně probíhajících spojení. Na první pohled se může zdát, že systém, který je schopen současně sledovat cca 6 000 spojení je dostatečný. Pokud budeme však předpokládat, že minimální velikost paketu je 64 B, tedy 512 b. Můžeme uvažovat, že pro zatížení systémů 6 000 spojení budeme potřebovat cca 3 Mb/s rychlou linku pro připojení (6 000 spojení · 64 minimální velikost paketu · 8 přepočet na bity = 3 Mb/s). Příklad byl převzat z [5]. Rychlost 3 Mb/s přitom v dnešní době neznamená zvláštní problém. Prakticky stačí 3 útočníci s 1Mb/s linkou. Pokud datový tok překročí právě maximální hranici, je proveden DoS
Model lze na různých protokolových vrstvách kombinovat. Je tedy možné např. na nižší vrstvě nasadit filtraci „striktního obsahu“ a na vyšší pak klasickou. Příkladem může být přenos snímku z ultrazvukového vyšetřovacího přístroje, kdy je třeba, posoudit, zda přenášená bitmapa není ve skutečnosti maligním kódem. Model lze kombinovat také umístěním. Je možné použít filtraci „striktního obsahu“ na chráněném počítači a klasickou pak na perimetru sítě, případně na perimetru klasickou a na chráněném počítači na různých vrstvách klasickou a striktní, nejlépe s využitím řešení od různých výrobců. 27-5
2008/27 – 5. 8. 2008 Zvláště v oblasti detekce virového počítačového kódu začínají někteří výrobci nabízet řešení kombinující detekční systémy různých výrobců. Ukázkou je například Microsoft Forefront [6]. Obvyklou nevýhodou řešení tohoto typu je nízká rychlost testování. V případě IPS systémů se jedná obvykle pouze o experimenty.
2.2.2. I NICIATIVA NULOVÉHO DNE INITIATIVE )
je na bezpečnost terminálových serverů třeba dávat výjimečný důraz. Doplňkovou metodou zabezpečení může být implementace IPS mezi terminálový server a klienta. Další využití terminálového serveru, lze nalézt v případě, že klientská stanice neposkytuje dostatek výkonu, ale jako tenký klient postačuje. Zmíněná problematika ale přesahuje rámec tohoto článku.
(Z ERO DAY
Iniciativa nulového dne (Zero day initiative) [7] je odpovědí na bezpečnostní problémy některých programů. Část těchto chyb se týká síťové bezpečnosti a touto částí se iniciativa zabývá. Ačkoli jsou obvykle kritické chyby opravovány relativně rychle, mnohdy tvůrci s vydáním oprav váhají. Za „Iniciativou nulového dne“ stojí firma 3Com, divize TippingPoint.
2.3.1. V IRTUALIZACE Serverem poskytujícím konektivitu do nebezpečné sítě nemusí být vždy nutně server, v podobě, ve které je obvykle chápán, tedy jako drahý hardware se serverovým operačním systémem např. MS Windows Server 2008 s Terminal Serverem nebo Sun Global desktop, Citrix, atd. Přebytek výkonu současných kancelářských počítačů umožňuje jejich využití i jako nosné (hostitelské) platformy pro virtuální stroje bez toho, aby to negativně ovlivňovalo pracovní výkon uživatele hostitelské platformy. Virtualizaci je možno použít k zabezpečení modelového počítače (viz. kap 1.1) obdobně, jako v případě zabezpečení metodou komunikace pouze s jedním systémem. Řešení je z pohledu klienta funkčně shodné s používáním Terminálového serveru.
Pro nasazení bezpečnostní opravy do systému je kritická doba mezi nalezením chyby (zranitelnosti) a existencí útoku využívající této zranitelnosti. Útokem „Nulového dne“ je obvykle myšlen útok realizovaný před vznikem opravy. Pod záštitou „Iniciativy nulového dne“ spolupracují firmy, výzkumné instituce i jednotlivci. Jejich snahou je co nejrychleji analyzovat a publikovat vzorky a mechanizmy útoků, pro filtry IPS, zastavující případné útoky na chráněné systémy, ještě před vydáním oficiálních oprav výrobcem daného systému.
Prakticky byla ověřena následující konfigurace. Na straně „serveru“ bylo klasické moderní kancelářské PC – dvoujádrový procesor Intel Core 2 Duo – 2,67 GHz, 2GB RAM, cca 300 GB disk. Nosný operační systém – MS Windows Vista Business (32b verze). Virtualizační nástroj MS Virtual PC 2007. Virtualizovaný OS MS Windows XP SP2 (standardně obsahuje terminálový server, umožňující práci jednomu uživateli v jednom okamžiku.) Zmíněný software byl vybrán jako vzorek možných, lze zvolit i jiné konfigurace – např. nosný systém Fedora Linux 8, virtualizační systém VMware server, s klientským systémem SUN Solaris 10 atd. Zvolená konfigurace ale přesvědčivě demonstruje „desktopovost“ celého řešení.
Iniciativa nulového dne do samotných testovacích mechanizmů nepřináší nic nového. Využívá stejné testovací postupy, jako v případě obvyklých síťových útoků. Její unikum spočívá ve specifickém zaměření. Jde o analýzu problému a rychlé rozšiřování databáze útoků. Pro problematiku z kap. 1.1 a 1.2 je klíčové, že databáze útoků může zahrnovat i útoky na webové prohlížeče, poštovní klienty atd. Obsahuje tedy vzorky útoků nejen na typické serverové chyby, jako bylo např. přetečení zásobníku při šíření viru CodeRed, ale postihuje i klientské aplikace.
Nosný systém byl nastaven tak, aby po zapnutí počítače nabootoval do uživatelského účtu, určeného pro běh virtuálního stroje – běžný účet uživatele se standardními uživatelskými právy. V přihlašovacím skriptu navíc nastaveno, aby „po spuštění“ byl inicializován virtualizační nástroj „Virtual PC,“ který má zase přidán parametr pro nabootování vybraného virtuálního PC. Ještě před tím ale dojde k automatickému „uzamčení“ pracovní stanice. Uživateli pracujícímu na hostitelském PC lokálně, stačí v tomto okamžiku stisknout tlačítko „přepnout uživatele,“ standardně se přihlásit a bez omezení pracovat.
2.3. TERMINÁLOVÝ SERVER Terminálové servery jsou efektivní a efektní metodou ochrany modelového PC. Terminálové řešení je zvláště účinné v případech, kdy musí být chráněný počítač připojen do nebezpečné počítačové sítě (např. k internetu). Při tomto typu nasazení je terminálový server branou do nebezpečné sítě. Na chráněném počítači bude povolena pouze komunikace s terminálovým serverem (v případě řešení Microsoftu je klientem pro terminálové relace „Remote desktop client,“ resp. „Připojení ke vzdálené ploše,“ v případě řešení dodávaného Sun Microsystems, je jedním z možných klientů Java aplikace „Secure Global Desktop Client.“
Celá spouštěcí procedura má následující posloupnost: 1. zapnutí hostitelského PC
Slabinou „terminálového“ řešení, je problém důvěry v bezpečnost terminálového serveru. Terminálový server je jediným, počítačem z nebezpečné sítě, se kterým chráněný systém komunikuje, může se stát také největší hrozbou, v případě, že je terminálový server napaden. Obdobná tvrzení platí i pro terminálového klienta. Proto
2. automatické přihlášení k účtu určenému pro běh virtuálního PC.
27-6
2008/27 – 5. 8. 2008 3. proběhne přihlašovací skript, jenž obsahuje příkaz pro spuštění „Virtual PC“ a uzamčení stanice
3. ZÁVĚR Navrhovaná řešení bezpečnosti mohou být užitečná obecně, ne pouze na zmíněných neaktualizovaných systémech. Je třeba vědět, že přes navrhované řešení bude bezpečnost chráněného systému oslabena a takto chráněný systém bude vždy zranitelnější než ostatní systémy chráněné všemi obvykle doporučovanými postupy.
4. na pozadí bootuje virtuální stroj Spuštění obou počítačů – hostitelského a hostovaného trvá cca 1,5 minuty. Od cca 40. sekundy je však možné přihlášení lokálního uživatele. Přihlášení vzdáleného uživatele k Windows XP je umožněno až po zmíněné cca 1,5 minutě. Získané časy jsou pouze orientační, jsou závislé na použitém hardwaru a aktuální softwarové konfiguraci hostovaného i hostitelského PC.
U většiny navržených řešení je jejich nepostradatelnou součástí „Systém detekce a prevence útoku.“ Protože se jedná moderní a obvykle komplexní bezpečnostní prvek, je mu třeba věnovat při implementaci zvýšenou pozornost. Článek shrnul nejzajímavější možnosti, jak ochránit počítačové systémy, proti části softwarových útoků.
V testované konfiguraci měl každý z počítačů – hostitelský i hostovaný vlastní IP adresu přidělenou DHCP serverem, lze zvolit i řešení zahrnující překlad adres. Popisované řešení obsahuje několik slabin organizačních i bezpečnostních. Z bezpečnostních připomeňme okamžik, mezi automatickým přihlášením a uzamčením hostitelské stanice. Ačkoli je tato doba minimální, lze ji využít k útoku na hostitelský počítač. Příkladem takového útoku může být, pokud útočník zastaví vykonávání přihlašovacího skriptu, poté zabrání automatickému uzamčení a následně např. zkopíruje soubory s daty virtuálního počítače ap.
CITOVANÁ LITERATURA [1] Centre for the Protection of National Infrastructure. Statement Regarding Reported Local Escalation of Privileges Vulnerability for ZoneAlarm. [Online] Centre for the Protection of National Infrastructure, 12 březen 2006. [Cited: 10 červen 2008.] http://www.cpni.gov.uk/Products/alerts/2169.aspx. [2] Security Focus. Zone Labs ZoneAlarm Pro DDE-IPC Advanced Program Control Bypass Weakness (Vulnerabilities). Security Focus. [Online] 28 září 2005. [Cited: 20 červen 2008.] http://www.securityfocus.com/bid/14966.
Z organizačních nevýhod může jít např. o vypnutí hostitelského PC lokálně pracujícím uživatelem. To lze na softwarové úrovni eliminovat, ale hardwarovému vypnutí se dá bránit těžko.
[3] Lasek, Petr. Systém prevence průniků. VUMS DataCom. 2006.
Klientem „terminálového“ serveru může být již zmíněný klient – „Připojení ke vzdálené ploše“ viz kap. 2.3, nebo např. Rdesktop1.
[4] Endorf, Carol, Schultz, Eugene a Mellander, Jim. Detekce a prevence počítačového útoku. Praha : Grada publishing, a.s., 2005. ISBN: 80-247-1035-8.
Popsané řešní je levnou a snadno implementovatelnou možností, jak zpřístupnit např. připojení k internetu na modelovém PC popsaném v kap. 1.1.
[5] Knapovský, Miroslav. Přednáška „IPS v praxi“. 3Com, pobočka Praha. Praha : 3Com, 2007.
2.4. DALŠÍ MOŽNÁ ŘEŠENÍ Kromě IPS a vizualizačních nástrojů existuje řada dalších alternativ, jak modelové PC ochránit. Jako zajímavá se jeví možnost najít inspiraci v proxy serveru – povolit komunikaci pouze s jedním důvěryhodným počítačem – serverem v síti, který pak bude sloužit jako prostředník v předávání dat. Tento způsob ochrany je ale vhodné kombinovat např. s IPS. Variací této možnosti je předávání dat přes prostředníka tak, že např. obrazová data jsou ukládána do databáze na server a ostatní stanice pak data ze serveru přejímají.
[6] Microsoft Corporation. Představení řešení Microsoft Forefront. Microsoft Forefront: Úplná řada produktů zabezpečení. [Online] Microsoft Corporation. [Citace: 21. červen 2008.] http://www.microsoft.com/cze/windowsserversystem/f orefront/default.mspx/. [7] Zero Day Initiative. Zero Day Initiative. [Online] 30. 5 2008. [Citace: 30. 5 2008.] http://www.zerodayinitiative.com/.
Další doplňkovou možností, kterou lze realizovat na vyšších vrstvách je jednosměrná komunikace atp. Dále pak bezpečnostní politika celkově, která je často zmiňovanou i opomíjenou možností, jak ochránit počítač proti útokům.
[8] Microsoft Corporation. Přehled produktu (ISA Server). Microsoft ISA Server 2006: Informace o produktu. [Online] Microsoft Corporation, 5. září 2005. [Citace: 11. červen 2008.] http://www.microsoft.com/cze/windowsserversystem/i saserver/prodinfo/default.mspx.
1
Program Rdesktop je výsledkem Open Source iniciativy o vytvoření UNIXové alternativy klientu „Připojení ke vzdálené ploše,“ pro UNIXové operační systémy. 27-7