Teze k diplomové práci na téma: Bezpečnost webových stránek Vypracoval: Jan Kratina, PEF, INFO, 5.ročník Vedoucí projektu: RNDr. Dagmar Brechlerová Jan Kratina 2005
Téma diplomové práce Bezpečnost webových stránek jsem si vybral proto, že se dnes internetové technologie ubírají závratným tempem kupředu a v podstatě každá společnost, která se chce na trhu nejen udržet, ale také se rozvíjet musí využívat moderních prostředků pro vlastní prezentaci, komunikaci i obchodování. Proto se webové aplikace stávají mocným nástrojem poskytování služeb zákazníkům. Cílem první teoretické části je charakterizovat a vysvětlit základní pojmy a pohledy na problematiku bezpečnosti na internetu v obecné rovině. V této teoretické části se snažím vymezit a objasnit které pojmy a především technologie se podílejí na bezpečnosti internetové komunikace. Soustředil jsem se na důležité bezpečnostní otázky při vývoji aplikace. Cílem druhé (praktické) části mé práce bylo nashromáždit podrobnější informace o zvolených serverových řešeních a tyto mezi sebou porovnat a zvolit to řešení, které je pro implementaci a provoz webových prezentací malých a středních firem optimální. S neustálým růstem složitosti sítí je zajištění jejich bezpečnosti stále komplikovanějším úkolem. Jediná bezpečnostní chyba vede ke kompromitaci celé soukromé sítě. Tato diplomová práce je zaměřena na to, jak proti hackerským útokům co nejlépe zabezpečit webové aplikace, které mohou být cílem útoku samy o sobě nebo které se mohou stát prostředkem průniku do vnitřní sítě. Webová aplikace je systém několika kooperujících částí. Jedná se především o webový server, interpreter jazyka aplikace a databázový server. Proti útokům je proto nutné ošetřit nejen zdrojové kódy, ale i webový a databázový server, případně vhodně konfigurovat interpreter jazyka. Útočníci na internet mají tendenci zaměřovat se na shromažďování údajů o službě, na kterou hodlají zaútočit. Zkoumají konkrétní implementace a využívají libovolných známých zranitelností k útoku na takovou službu. Firewally blokují účinky některých těchto činů a zabraňují možnosti útoku na služby, pro které je firewall konfigurován. Systémy detekce průniku (IDS) 1
upozorňují síťové správce na konkrétní útoky proti službám, které firewally propouští skrz hranice sítě a mohou potenciálně varovat firewally tak, aby tyto útoky v budoucnu blokovaly. Tento dvousložkový přístup ochrany služeb je schopen zachytit velké množství útoků proti systémům, ale má omezení v tom, čeho může dosáhnout. Hlavním problémem tohoto tradičního systému všeobecné ochrany je, že se jedná o reaktivní strategii pro ochranu sítí a vždy bude zaostávat za čelem vývoje bezpečnosti. Tradiční firewally filtrující pakety jsou schopny blokovat pakety na základě speciálních charakteristik paketu, jako jsou například příznaky TCP, zdrojová adresa IP, cílová adresa IP nebo TCP a UDP porty. Jsou schopny zastavit pakety, které nesplňují určitá konfigurovatelná kritéria. I novější stavově založené firewally stále zkoumají pouze informace o paketech, které jsou obsaženy v záhlavích IP, TCP nebo UDP. Mají tendenci nedívat se na konkrétní údaje obsažené v těchto paketech za záhlavími a mají sklony nerozlišovat cokoliv, co se vztahuje ke konkrétnímu protokolu. Další nevýhodou firewallů je to, že jsou-li používány k ochraně veřejných služeb, musí jím být umožněn široký přístup k internetu. Stávající IDS široce rozšířené v komerčním použití jsou založeny na signaturách. To znamená, že IDS umí vyhledávat pouze ty útoky, k jejichž zachycení byl naprogramován. Všechny nové útoky mají "možnost uspět" v čase mezi vyvinutím útoků a termínem vydání oprav, mezi vytvořením útokových signatur dodavateli IDS a odesláním signatur síťovým správcům. Základním kamenem webových prezentací jsou samozřejmě tzv. webové servery, nebo zkráceně webservery. V praktické části mé diplomové práce jsem se zabýval především bezpečností webserverů, které jsou dnes nejrozšířenější a jejich dalšími vlastnosti, jako je jejich konfigurace, spolehlivost atp. Internetové technologie jsou značně široký obor a jejich bezpečnost je pouze část této komplexní problematiky. Pro využití webových stránek jako 2
interaktivního rozhraní pro komunikaci společnosti s klienty je však jejich bezpečnost a odolnost vůči nepovolanému průniku naprostou nutností. Webové aplikace jsou často velice zranitelné proto, že se neklade dostatečný důraz na bezpečnost již při návrhu aplikace a tím se pak otevírají před hackery netušené možnosti průniku jako jsou útoky využívající selhání při kontrole vstupu, kryptografické útoky, útoky na relace atp. Veškeré tyto útoky jsou vedeny přímo proti dané aplikaci jsou tedy nezávislé na tom, na jaké serverové platformě jsou provozovány. Nejdůležitější oblasti webové aplikace, na jejichž bezpečnost je bezpodmínečně nutné se zaměřit při jejím vývoji, lze obecně rozdělit takto: Autentizace Správa relací Interakce s databázemi Kontrola vstupů aplikace Abychom do značné míry zabránili nežádoucím útokům na naši webovou aplikaci či dokonce webserver je vhodné držet se několika jednoduchých zásad: Aplikujte včas záplaty vydané výrobcem softwaru serveru Držte se doporučených konfigurací serveru Kontrolujte veškerý vstup od uživatelů Provádějte pravidelný audit vašich webových aplikací V případě, že firma chce své webové stránky a aplikace spravovat sama stojí před složitým rozhodnutím, jaké technologie využít, aby byl chod celého podnikového systému nenarušen a integrace do podnikové infrastruktury proběhla bez problémů. Nově zavedený systém musí být sloučen s komplexní bezpečnostní politikou společnosti a podle toho nastaven. 3
V dnešní době jsou nejpoužívanějšími servery pro webové prezentace firem především server Apache pracující na platformě Unix / Linux a Microsoft Internet Information Server (IIS) pracující pod MS Windows a proto jsem se v praktické části mé diplomové práce věnoval zejména jim. Podle získaných informací o serverech Apache a MS Internet Information Server je MS IIS nejpoužívanější webový server v malých a středně velkých firmách. Výhody MS IIS: integrace s prostředím operačního systému MS Windows celosvětově nejpoužívanější operační systém opravy bezpečnostních mezer vydává přímo výrobce kompatibilita s nejrozšířenějšími kancelářskými aplikacemi komplexní serverová řešení konfigurace pomocí uživatelsky příjemného grafického prostředí podpora aplikací společnosti Microsoft dostatek vyškolených specialistů pro podporu Výhody serveru Apache otevřený zdrojový kód vysoká modularita Pokud tedy stojí malá či stření firma před rozhodnutím jaké nové řešení webserveru zvolí doporučil bych firmu Microsoft a její serverové řešení Internet Information Server. Jan Kratina, 2005 4