Zadání práce
České vysoké učení technické v Praze Fakulta elektrotechnická
Bakalářská práce Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
Vedoucí práce Ing. Radek Dobiáš Studijní program: Elektrotechnika a informatika Obor: Výpočetní technika Červen 2007
I
II
Poděkování Na tomto místě bych chtěla poděkovat Bohu za sílu, kterou mi dal k napsání této práce, své mamince, která hlídala mou sedmiměsíční dceru a díky které jsem měla čas práci psát a v neposlední řadě svému vedoucímu, Ing. Radku Dobiášovi za jeho pomoc a podporu.
III
IV
Prohlášení Prohlašuji, že jsem tuto diplomovou práci vypracovala samostatně a veškeré zdroje, ze kterých jsem čerpal, nebo z nichž je v této práci citováno, jsem řádně uvedla v seznamu použité literatury.
______________ Podpis
V
VI
Abstract Tato bakalářská práce se soustředí na problematiku bezpečnosti osobních počítačů a sítí. V teoretické části jsem detailně zkoumala jednotlivá rizika spojená s používáním osobních počítačů a způsoby ochrany. V Praktické části jsem uvažovala dva případy návrhu zabezpečení a to soukromého počítače a počítačů malé neziskové organizace a to z pohledu kvality i ceny produktů.
Abstract This bachelor work is concerning the problem of security of personal computers and networks. In the theoretical part I describe in details the all types of risks connected with using the personal computers and with ways of protection. In the practical part I worked on two cases, the propos ion of personal computers safety and the safety of computers non-profit small organization. From the point of view the quality
and
price.
VII
VIII
Obsah SEZNAM OBRÁZKŮ …………………………………………………………… XIII 1
ÚVOD....................................................................................................................... 1
2
HISTORIE............................................................................................................... 2 2.1 HISTORIE POČÍTAČŮ ........................................................................................... 2 2.1.1 Předchůdci počítačů ................................................................................. 2 2.1.2 Nultá generace.......................................................................................... 2 2.1.3 První generace.......................................................................................... 3 2.1.4 Druhá generace ........................................................................................ 3 2.1.5 Třetí generace ........................................................................................... 4 2.1.6 Čtvrtá generace......................................................................................... 4 2.2 HISTORIE SÍTÍ ..................................................................................................... 5 2.2.1 Síťový software.......................................................................................... 5 2.2.2 Vznik ARPAnetu a Internetu ..................................................................... 6 2.2.3 První nebezpečí......................................................................................... 7
3
VIRY, ČERVY, TROJŠTÍ KONĚ ........................................................................ 9 3.1 TYPY ................................................................................................................ 11 3.1.1 Trojští koně ............................................................................................. 11 3.1.2 Červy (worms)......................................................................................... 11 3.1.3 Viry.......................................................................................................... 12 3.2 VIROVÉ HROZBY SPECIFICKÉ PRO SÍTĚ A INTERNET ......................................... 14 3.2.1 Souborový virus ...................................................................................... 14 3.2.2 Makrovirus.............................................................................................. 14 3.3 USB FLASH DISKY – NOVÉ TECHNOLOGIE NAHRAZUJÍCÍ DISKETY ................... 15 3.4 PREVENCE NAPADENÍ ....................................................................................... 16 3.4.1 Rozumné chování uživatele..................................................................... 17 3.4.2 Funkční antivirus .................................................................................... 17 3.4.3 Aktualizace programů............................................................................. 18 3.4.4 Firewall................................................................................................... 19
4
OSTATNÍ BEZPEČNOSTNÍ KAPITOLY........................................................ 22 4.1 SPYWARE ......................................................................................................... 23 4.1.1 Jak se vyhnout spywaru: ......................................................................... 23 4.1.2 Pomoc nebo nebezpečí?.......................................................................... 24 4.2 NEVYŽÁDANÁ POŠTA (SPAM)......................................................................... 24 4.2.1 IP blacklisting ......................................................................................... 24 4.2.2 Heuristická analýza ................................................................................ 25 4.3 SSL VPN ........................................................................................................ 25 4.4 ANONYMITA NA INTERNETU ............................................................................ 26 4.4.1 Co všechno lze o uživateli zjistit? ........................................................... 26
5
VNĚJŠÍ ÚTOKY – HACKEŘI ........................................................................... 28 5.1 UHODNUTÍ POŘADOVÉHO ČÍSLA....................................................................... 28 5.2 ÚNOS TCP PROTOKOLU („AKTIVNÍ ODPOSLOUCHÁVÁNÍ“) .............................. 30 5.2.1 Protokol TCP/IP ..................................................................................... 30 5.3 SNIFFING - ODPOSLECH .................................................................................... 32 5.4 FALŠOVÁNÍ (SPOOFING) IP ADRESY ................................................................. 34 IX
5.5 5.6 6
FALŠOVÁNÍ ODKAZŮ (HYPERLING SPOOFING)...................................................35 FALŠOVÁNÍ WEBU (WEB SPOOFING) ................................................................36
WEBOVÉ STRÁNKY ..........................................................................................39 6.1 SQL INJECTION ................................................................................................39 6.1.1 Příklad SQL injektion..............................................................................40 6.1.2 Prevence SQL injektion ...........................................................................40 6.2 CROSS SITE SCRIPTING .....................................................................................41 6.2.1 Příklad XSS .............................................................................................41 6.2.2 Ochrana XSS ...........................................................................................42 6.3 ÚTOK CRLF INJECTION ...................................................................................42 6.3.1 Příklad 1..................................................................................................43 6.3.2 Příklad 2..................................................................................................43 6.3.3 Ochrana před útoky CRLF......................................................................44 6.4 DIRECTORY TRAVERSAL (PRŮCHOD ADRESÁŘI) ...............................................44 6.4.1 Příklad útoku pomocí Directory Traversal přes zdrojový kód webové aplikace 46 6.4.2 Příklad útoku pomocí Directory Traversal přes chybu ve web serveru..47 6.4.3 Ochrana před útoky Directory Traversal................................................47 6.5 ÚTOK NA PŘIHLAŠOVACÍ FORMULÁŘE A DIALOGY (AUTHENTICATION HACKING) 48 6.5.1 Ochrana před útoky na přihlašovací formulář .......................................49 6.6 GOOGLE HACKING ............................................................................................50 6.6.1 Ochrana před útoky typu Google hacking ..............................................50
7
VYTVOŘENÍ BEZPEČNOSTNÍ POLITIKY SÍTĚ .........................................51 7.1 ZÁKLADNÍ PŘÍSTUP K VYTVOŘENÍ BEZPEČNOSTNÍ POLITIKY .............................51 7.2 HODNOCENÍ RIZIK ............................................................................................52 7.2.1 Identifikace aktiv .....................................................................................52 7.2.2 Identifikace hrozeb ..................................................................................52 7.3 FIREWALL ........................................................................................................52 7.3.1 Sunbelt Kerio Personal Firewall.............................................................52 7.3.2 Zone Alarm PRO .....................................................................................53 7.3.3 Jetico Personal Firewall .........................................................................53 7.4 ANTIVIRY .........................................................................................................53 7.4.1 Kaspersky AntiVirus................................................................................54 7.4.2 Eset NOD32 Antivirus System 2.51.26....................................................54 7.4.3 Avira AntiVir PersonalEdition Classic 7.00.00.08 .................................55 7.4.4 Grisoft AVG Anti-Virus 7.1.392 plus Firewall........................................55 7.4.5 Alwil avast! 4 home edition.....................................................................56 7.4.6 Norman Virus Control.............................................................................56 7.5 ANTISPYWARE..................................................................................................57 7.5.1 Ad-Aware.................................................................................................57 7.5.2 AVG Anti-Spyware ..................................................................................57 7.5.3 Spyware Terminator................................................................................57 7.5.4 Jiné (detekce, odhalovače hesel).............................................................57 7.6 BEZPEČNOSTNÍ BALÍKY ....................................................................................60 7.6.1 Norton 360...............................................................................................60 7.6.2 BitDefender 9 Internet Security Build 9 ..................................................60 7.6.3 AVG Internet Security SBS Edition .........................................................61
X
7.6.4
Kerio WinRoute Firewall........................................................................ 62
8 PŘÍPADOVÁ STUDIE A ZABEZPEČENÍ OSOBNÍHO POČÍTAČE PŘIPOJENÉHO K INTERNETU............................................................................... 63 8.1 CHARAKTERISTIKA PROBLÉMU: ....................................................................... 63 8.2 POŽADAVKY ZABEZPEČENÍ – CHARAKTERISTIKA RIZIK: .................................. 63 8.3 ZABEZPEČENÍ:.................................................................................................. 63 8.3.1 Fyzické zabezpečení:............................................................................... 63 8.3.2 Bezpečné chování: .................................................................................. 63 8.3.3 Programové vybavení ............................................................................. 64 9
PŘÍPADOVÁ STUDIE B ZABEZPEČENÍ MALÉ SPOLEČNOSTI............. 66 9.1 CHARAKTERISTIKA PROBLÉMU: ....................................................................... 66 9.2 POŽADAVKY ZABEZPEČENÍ – CHARAKTERISTIKA RIZIK:¨ ................................. 66 9.3 ZABEZPEČENÍ:.................................................................................................. 66 9.3.1 Fyzické zabezpečení:............................................................................... 66 9.3.2 Bezpečné chování: .................................................................................. 66 9.3.3 Prgramové vybavení ............................................................................... 67 9.3.4 Zabezpečení webových stránek............................................................... 68
10
ZÁVĚR .................................................................................................................. 69
11
SEZNAM POUŽITÉ LITERATURY................................................................. 70
12
VYSVĚTLIVKY ................................................................................................... 72
PŘÍLOHA
XI
XII
Seznam obrázků Obrázek 1: Kmenový adresář…………………………………………………………...45 Obrázek 2: Příklad náhodného řetězce ve formuláři ...................................................... 50
XIII
XIV
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
1 Úvod Otázka bezpečnosti osobních počítačů se dnes objevuje stále častěji. Už snad ani nelze najít obor, ve kterém by se prosperující firma obešla bez počítačů či prezentace na internetu a pro stále více podnikatelů se stává internet a počítač obchodním místem, kde se virtuálně setkávají se zákazníky, kde nabízejí a prodávají své zboží aniž by se kdy reálně se zákazníkem střetli. A čím je toto prostředí širší a bohatší, tím více je třeba soustředit se i na jeho ochranu. Každému člověku je jasné, že když odchází z domu, musí zavřít a zamknout dveře. Obchodníci investují nemalé částky do různých bezpečnostních opatření chránících jejich obchody a provozy. Najímají si strážné, nakupují bezpečnostní dveře, zámky, kamery, platí velké sumy různým bezpečnostním agenturám, ale když přijde na jejich počítače, pak je jim líto každé koruny kterou by měli investovat navíc. Jak se ale rozvíjí virtuální prostor, jak se stále další a další lidé a firmy připojují k internetu, jeho prostřednictvím prezentují sebe a své firmy a případně přes internet prodávají své zboží a služby, dostává se otázka bezpečnosti stále více do popředí. Lidé si začínají uvědomovat potřebu zabezpečení jejich počítačů a firmy investují i do počítačových zabezpečovacích systémů a najímají si odborníky v oblasti zabezpečení počítačů, sítí a webových stránek. Cílem této bakalářské práce je shrnout hlavní rizika spojená s využitím počítačů a webových stránek a ukázat možná řešení jejich zabezpečení. Práce má dvě části. Rešeršní část se bude zabývat teoretickým popsáním bezpečnostních problémů a základních principů ochrany. Druhá část – případová studie – bude hledat konkrétní produkty realizující ochranu počítačů z hlediska soukromých osob a podniků s přihlédnutím k ceně a kvalitě jednotlivých produktů.
Úvod
1
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
2 Historie 2.1 Historie počítačů 2.1.1 Předchůdci počítačů Za prvního předchůdce moderních počítačů můžeme zařadit stroj zvaný abakus, který se poprvé objevil pravděpodobně před 5000 lety kdesi v Malé Asii. Byla to počítací pomůcka založená na systému korálků (v Římě zvaných „calculli“ – odtud název kalkulačka),
které
na
tyčkách
kloužou
nahoru
a
dolů.
S dalším pokrokem si lidstvo počkalo až do 17. století, kdy John Napier v roce 1614 zveřejnil vůbec první logaritmické tabulky. Poté se objevilo i logaritmické pravítko a začaly i první počítací stroje, které pracovaly na principu ozubených kol. Byly to různé pokladny a mechanické kalkulátory, které přetrvaly až do dvacátého století (pracovali s nimi například i američtí vědci při vývoji atomové pumy) a udržely se ve výrobě i v praxi až do šedesátých let, kdy byly nejdříve nahrazeny elektrickými kalkulačkami a posléze elektronickými počítači. Historii počítačů stupňujeme do tzv. generací, kde každá generace je charakteristická svou konfigurací, rychlostí počítače a základním stavebním prvkem.
2.1.2 Nultá generace Období druhé světové války přálo kromě vývoje zbraní také vývoji samočiných počítacích strojů ale především strojům dšifrovacím a dešifrovacím, z nich nejznámější je asi stroj Enigma. V roce 1941 konstruuje v Německu Konrad Zuse malý reléový samočinný počítač Z4. Nedaří se mu však vzbudit pozornost armády, proto tento počítač upadá v zapomnění a je později při jednom z náletů zničen. Rovněž v USA se pracovalo na takovém zařízení. V lednu 1943 Howard H. Aiken a jeho spolupracovníci na Harvardské universitě uvedli do provozu přístroj zvaný Harvard Mark I. Byl dlouhý téměř šestnáct metrů, vážil pět tun a celkem obsahoval tři čtvrtě milionů součástek a přes 800 kilometrů drátových spojů. Byl to elektronický reléový počítač, který používal elektrických impulsů k pohybu s mechanickými součástmi. Byl pravděpodobně použit k výpočtům při vývoji první atomové bomby.
2
Historie
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
2.1.3 První generace První generace počítačů přichází s objevem elektronky, jejímž vynálezcem byl Lee De Forest a která dovoluje odstranění pomalých a nespolehlivých mechanických relé. Tyto počítače jsou vybudovány prakticky podle von Neumannova schématu a je pro ně charakteristický diskrétní režim práce. Při tomto zpracování je do paměti počítače zaveden vždy jeden program a data, s kterými pracuje. Poté je spuštěn výpočet, v jehož průběhu již není možné s počítačem interaktivně komunikovat. Po skončení výpočtu musí operátor do počítače zavést další program a jeho data. Diskrétní režim práce se v budoucnu ukazuje jako nevhodný, protože velmi plýtvá strojovým časem. Důvodem tohoto jevu je "pomalý" operátor, který zavádí do počítače zpracovávané programy a data. V tomto okamžiku počítač nepracuje a čeká na operátora. ENIAC (Electronic Numerator Integrator And Computer) –
1944, Pensylvánská
universita, Filadelfie. John W. Mauchly, John Presper Eckert , John von Neumann. MANIAC (Mathematical Analyser Numerical Integrator And Computer) - 1945 John von Neumann .Tento počítač byl mimo jiné použit k vývoji vodíkové bomby. UNIVAC - 1951 Eckert a Mauchly, firma Remington - první sériový elektronkový počítače
2.1.4 Druhá generace Druhá generace počítačů nastupuje s tranzistorem, jehož objevitelem byl John Barden a který dovolil díky svým vlastnostem zmenšení rozměrů celého počítače, zvýšení jeho rychlosti a spolehlivosti a snížení energetických nároků počítače. Pro tuto generaci je charakteristický dávkový režim práce. Při dávkovém režimu práce je snaha nahradit pomalého operátora tím, že jednotlivé programy a data, která se budou zpracovávat, jsou umístěna do tzv. dávky a celá tato dávka je dána počítači na zpracování. Počítač po skončení jednoho programu okamžitě z dávky zavádí program další a pokračuje v práci. Objevují se také první programovací jazyky.Ten úplně první vytvořil roku 1949 John Mauchly, nazýval se Short code. Dále to byl například Fortan roku 1957, Algol roku 1958 nebo Basic v roce 1964. Tradic – 1955, H. Felker., Bell Laboratories
- první samočinný počítač osazený
tranzistory
Historie
3
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
2.1.5 Třetí generace Počítače třetí a vyšších generací jsou vybudovány na integrovaných obvodech, které na svých čipech integrují velké množství tranzistorů. U této generace se začíná objevovat paralelní zpracování více programů, které má opět za úkol zvýšit využití strojového času počítače. Je totiž charakteristické, že jeden program při své práci buď intenzivně využívá CPU (provádí složitý výpočet), nebo např. spíše využívá V/V zařízení (zavádí data do operační paměti, popř. provádí tisk výstupních dat). Takové programy pak mohou pracovat na počítači společně, čímž se lépe využije kapacit počítače. Roku 1967 Angličan Norman Kitz realizoval Anita Mark 8 – první elektronický osobní počítač (v angličtině PC – personal computer). Umožnila mu to novinka z USA. Firma IBM tam postavila první elektronický počítač (System 360) s využitím integrovaných obvodů. Tím byla otevřena cesta ke stavbě malých výkonných počítačů. S vynálezem systému LED, tj. zobrazování čísel pomocí světelných diod tu byl k dispozici způsob „displeje“, který se stal běžným i u kapesních kalkulátorů.
2.1.6 Čtvrtá generace Začala
v
sedmdesátých
a
osmdesátých
letech
a
trvá
do
dneška.
V roce 1971 zavedla americká firma Texas Instruments poprvé výrobu mikroprocesorů. V počítači plní funkci centrální jednotky (CPU – Central Processing Unit), která je centrem celého počítače. Můžeme říci, že to je tato součást počítače, která opravdu „počítá“. Ostatní součástky do ní vysílají různé informace, které vyhodnocuje a řídí potom chod celého počítače. První inkoustová tiskárna byla vyvinuta roku 1976 firmou IBM. O rok později Bill Gates a Paul Allen oficiálně zakládají společnost Microsoft, která je dnes největší společností vyrábějící operační systémy, tzn. programy, pomocí kterých se ovládá počítač. Prvním operačním systémem byl MS-DOS, který byl velkým skokem kupředu ve vývoji počítačů, neboť počítač se již nemusel složitě programovat, ale ovládal se pomocí mnohem jednodušších příkazů. První PC s operačním systémem MS-DOS uvádí v roce 1981 společnost IBM. Roku 1983 se začíná používat disketa, která úspěšně nahradila dříve používanou magnetickou pásku.
4
Historie
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová V roce 1985 Microsoft pro IBM PC Windows 1.0, což bylo zdokonalená verze MSDOS. Roku 1984 začíná Hewlett-Packard prodávat LaserJet – první osobní laserovou tiskárnu. Laserové
tiskárny
měli
oproti
inkoustovým
mnohem
lepší
kvalitu
tisku.
V roce 1986 National Science Foundation schvaluje investici do páteřní sítě Internetu, obrovské celosvětové sítě, na kterou jsou v dnešní době napojeny už miliony počítačů. Roku 1989 Tim Bernes-Lee vynalézá World Wide Web, programovací jazyk, pomocí kterého jsou tvořeny webové stránky na Internetu.
2.2 Historie sítí S rozvojem počítačů v 60. letech vznikla potřeba rychlého přenosu informací mezi počítači jejich propojením.
Před návrháři tedy stála otázka jak z pomalých,
těžkopádných a osamocených strojů vytvořit technologii, která by umožňovala současnou komunikaci mnoha počítačů. Od konce 60. let se pro předávání zpráv využívá model přepojování paketů (packet switching), který položil základ vzniku sítí.
2.2.1 Síťový software Síťový software data rozdělí na části tj. pakety. Každý paket obsahuje kromě dat i dvě adresy: adresu původce (vysílače) a adresu cílovou (příjemce). Síťový software přenese paket k přijímajícímu počítači. Každý počítač v této síti si prohlédne paket a určí, zda je adresátem zprávy či nikoliv. Pokud tento počítač nebyl cílovým, pokračuje paket k dalším počítačům sítě. Pakety jsou předávány po nejlepší volné cestě. Tyto cesty se mohou při jednom přenosu i lišit, a tak někdy dochází k časovému nesouladu. Jakmile pakety najdou svůj cílový počítač, složí síťový software cílového počítače pakety opět do jednoho datového souboru. K zpětnému složení původní zprávy dochází v paketovém sdružovacím uzlu (PAD). K řízení toku paketů a vyhledávání nejdostupnějšího spojení v síti slouží síťový software. V případě, že dojde ke kolizi (poškození vedení), vyhledá nejlepší alternativní vedení. V sítích se nejčastěji vyčlení jeden počítač, který spravuje řízení provozu sítě, nazýváme ho zpravidla server (přepojovač paketů, Interface Message Processor).
Historie
5
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Přepojování paketů je nejen základem mnoha počítačových spojení, ale také mnoha problémů se zabezpečením. Pakety v síti procházejí přes několik počítačů a bylo by asi nepříjemné, aby si mohl každý obsah zprávy „složit“. K zabránění odposlechu přenosu se využívá zejména šifrování. [1]
2.2.2 Vznik ARPAnetu a Internetu 60. léta byla zlomem ve vývoji počítačové technologie. Na konci tohoto desetiletí se zrodil i předchůdce v současnosti největší sítě světa Internetu - ARPAnet. V 70. letech ARPAnet nabývá na svém významu. K vývoji takovéhoto projektu bylo potřeba mnoho finančních zdrojů. Tyto zdroje vlastnily především vědecké kruhy pod patronátem vlády. Vládní projekt Spojených států ARPA (Advance Research Projects Agency tj. Agentura pro pokročilé výzkumné projekty) chtěl vytvořit strategickou síť, která by v případě nukleární katastrofy dokázala zajistit určitou stabilní datovou základnu. Síť musela být funkční, a tak bylo jasné, že počítače v ní zapojené nemohou být umístěné v jedné oblasti. V případě, že by došlo k poškození jedné ze zapojených jednotek, přenos mezi ostatními počítači musel zůstat stále funkční. ARPAnet, jak se této síti začalo říkat, v sobě měl zabudované množství redundancí, které bez ohledu na počet zasažených nebo zničených počítačů, umožnil nezasaženým počítačům pokračovat v komunikaci mezi sebou. V roce 1969 byl nainstalován první přepojovatel paketů na Kalifornské univerzitě v Los Angeles a poté byla připojena i Santa Barbara, Stanfordský výzkumný institut a Utažská univerzita. ARPAnet obživl po telefonickém přenosu mezi těmito institucemi. I když tato síť měla sloužit výhradně jako obranný systém v případě studené války, stala se základem největší sítě světa. Původním protokolem ARPAnetu byl NPC (Network Control Protocol – řídící protokol sítě). S přibývajícím počtem uživatelů a rozvojem nových počítačových technologií vzniká potřeba připojit nestandardní konfigurace. NPC vyžaduje, aby byl každý paket v předdefinované velikosti a struktuře, a proto v roce 1983 vzniká nový protokol TCP/IP (Transmission Control Protocol / Internet Protocol), který umožňuje přepojovat pakety různých tvarů, velikostí a rozličných sítí. Dovoluje také pracovat v sítích s libovolným operačním systémem. TCP/IP je „páteří“ Internetu a jeho komunikací se sítěmi LAN a WAN. Původní návrháři nenavrhli ARPAnet ani Internet pro přenos grafického nebo komplexního grafického rozhraní. Původně byl Internet použit pouze pro přenos
6
Historie
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová souborů a posílání e-mailů. S rozvojem diskusních skupin (Newsgroups) se Internet rozšiřuje především mezi studenty a vědce a vzniká tak všeobecná kategorie Usenet. I když se Internet stává rychlejším a snadnějším pro komunikaci, je stále založen na textovém základě. V 1989 je předložen první návrh koncepce WWW jakožto grafického uživatelského rozhraní (GUI – Graphical User Interface), jehož snahou je rozšířit původní koncepci o vizuální přístup. V roce 1990 se původní implementace zdokonaluje o multimediální prvky, čímž umožňuje vytvářet, upravovat, prohlížet a přenášet hypertextové dokumenty na Internetu. Od roku 1992 je využíván na Internetu projekt World Wide Web (www). V roce 1993 je registrováno kolem 100 webových serverů. V současnosti se již dají počítat na desítky milionů (vývoj jde geometrickou řadou). Hypertextový přenosový protokol (HTTP – Hypertext Transport Protocol) umožňuje počítačům přenášet a rozpoznávat hypertextové informace při přístupu na Web. Hypertext přispěl k masivnímu rozšíření Internetu mezi uživatele, především díky snadnějšímu ovládání a zkvalitnění prezentace informací na Internetu. Vytvoření podpory pro zobrazení GUI na straně serveru byl pro Internet významným mezníkem, přesto stále zůstává nutnost alespoň dvou počítačů ke sdílení dat (jeden vysílající a jeden přijímající). Teprve rozvoj webových klientů (prohlížečů) pro řadu počítačových systémů dotváří úplnou výbavu Internetu. Jedinečnost Webu spočívá především v jeho jednoduchosti při přechodu z jednoho odkazu na následující, pomocí nichž jsou propojeny hostitelské počítače na celém světě. Na obrazovce se objevují dokumenty (grafické, animační, videa i zvukové), které nejsou uloženy na klientském počítači, ale na webovém serveru. Pro přenos paketů Web stále užívá množinu protokolů TCP/IP. Zavedením skriptovacích jazyků ,např. JavaScriptu, je začlenění multimédií do Webu téměř kompletní. [1]
2.2.3 První nebezpečí 2. září 1988 byl vypuštěn síťový program Worm (červ) – první významný virus, který zasáhl Internet. Tento červ napadl do hodiny mnoho hlavních mezinárodních výzkumných ústavů. Naštěstí se na zbylých nenapadených stanicích zmobilizovaly skupiny, které červa do 24 hodin zastavily a do týdne odstranily všechny následky. I
Historie
7
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová když tento virus nenapáchal velké škody, upozornil především na reálná a opravdová nebezpečí Internetu. Počítače byly viry napadeny i dříve, jednalo se však vždy o napadení jednotlivého stroje např. z infikované diskety. V nejhorším případě bylo potřeba zformátovat tento jediný disk. Červ na Internetu však ukázal možnost zlikvidovat většinu světových řídících institucí. Tento první červ byl velmi jednoduchý program. Poté, co vstoupil do operačního systému, vytvořila se jeho kopie. Červ nejdříve hledal připojení na síť, kam poslal kopii sama sebe. Poté vytvořil další proces, který byl přesnou kopií původního. Červ pokračoval ve svém rozmnožování pokaždé, když byl spravován operačním systémem. Nakonec operační systém obsluhoval pouze duplikace červa a posléze „odřízl“ uživatele a zamrzl sám z důvodu nedostatku paměti. Od této doby se zabezpečení počítačů zlepšilo, bohužel se také zvýšilo množství hrozeb, které na Internetu číhají. Hacker Původně pojem „hacker“ označoval talentované tvořivé programátory, kteří jsou fascinováni řešením problémů a hledáním řešení pomocí použití nových technologií. V minulých letech se však toto označení stále více vztahovalo na programátory nové třídy, jejichž cílem je spíše trhliny počítačových a jiných (např. komunikačních) systémech vytvářet, než je odstraňovat. Crackeři jsou programátoři specializující se na nabourání cizích systémů za účelem získání nebo porušení dat. Phackeři jsou podskupinou hakerů specializující se na nabourávání programů poskytujících zdarma telefonní služby nebo jinak zneužívající počítače a databáze telefonních společností. Phackeři používají ukradené telefonní informace pro přístup k dalším počítačům. Ačkoliv většina Crackerů a Phackerů podniká tuto nelegální činnost především pro svůj osobní požitek, existuje zde i skupina zabývající se průmyslovou a špionážní sabotáží. V následujícím textu budu pro zjednodušení používat pouze označení „hacker“ jako osoby vytvářející nebo využívající trhlin v systémech.[1]
8
Historie
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
3 Viry, červy, trojští koně Počítačové viry patří mezi nejstarší, ovšem stále aktuální ohrožení počítačů a sítí. Ovšem na rozdíl od jiných nebezpečí zde existuje účinná a jednoduchá obrana. Virus většinou vkládá svůj kód do již existujících programů tak, aby byl jeho kód proveden ještě před hostitelským programem. Většina virů se šíří napadením souboru nebo napadením boot sektoru. Datové soubory obecně viry přenášet nemohou. Soubory obsahující šablony (templates) však mohou přenášet tzv. makroviry. Mnohdy větší škody než vir však může způsobit šíření falešných virových poplachů (virus hoax – pravdivost poplašné zprávy lze ověřit na www.hoax.cz). Na světě existuje přes 1000 virových kmenů, pokud budeme započítávat i jejich modifikace, budeme se pohybovat spíše v řádech statisíc (dle virové asociace The Wildlist). Zcela obecně lze říci, že virus je jakýkoliv program, který se sám bez uživatelova souhlasu zkopíruje. Typické je, že se připojí do souboru tak, aby byl kdykoliv při spuštění tohoto napadeného souboru aktivován. Virus vloží kopii sama sebe do každého možného souboru od boot sektoru pevného disku až po disketu. Z důvodu rozšířenosti a kvality antivirových programů, chránící počítač před těmito útoky, se snaží tvůrci virů modifikovat každou kopii, a tím tvořit nový druh. Na virech je neuvěřitelné, že jsou malé. Virus One Hlaf byl šifrovací algoritmus na zašifrování disku v délce 5044 Bytů. Příklad postupu u infikovaného systému (jednoduchý virus): 1. nejdříve musí být uveden virus v činnost, což se podaří nahráním souboru do paměti a jeho následným spuštěním; 2. virus čeká v paměti na spuštění dalších programů, které se stanou jeho následnými hostiteli; 3. při spuštění programu se virus připojí ke zdrojovému kódu v paměti i ke kopii na disku; 4. virus takto pokračuje, dokud nejsou nakaženy všechny programy a nebo není počítač vypnut (při vypnutí počítače je virus z paměti odstraněn, nikoliv však z infikovaných souborů); 5. když je počítač opět zapnut, nahraje se virus do paměti a opět může pokračovat v nakažení dalších programů.
Viry, červi, trojští koně
9
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Určitou modifikací jsou i viry, které se nahrají na harddisk a po zapnutí počítače se automaticky spustí. Jiné viry se ukládají v komprimovaných souborech. Zvláštní skupinou
jsou
makra,
což
jsou
viry
působící
prostřednictvím
aplikačních
programovacích jazyků (nemusí byt napsán jen v jazyce MS Visual Basic for Applications). Virus dokáže infikovat počítač pouze v případě, že je spuštěn nějaký proces (např. zaváděč operačního systému). [1] Způsob rozpoznání viru Ani sebedokonalejší antivirový program není neomylný a tak je bezesporu účinné rozpoznat určitá specifika, která provázejí infikování systému virem: 1. zavádění programu trvá déle než je obvyklé; 2. soubory mizí nebo se objevují jiné; 3. mění se velikost programů nebo souborů; 4. disk je často aktivní; 5. volná disková kapacita se bez vysvětlení snižuje; 6. příkazy CHKDSK nebo SCANDISK vracejí nesprávné hodnoty; 7. bezdůvodně se mění jména souborů; 8. pevný disk je nepřístupný. Pokud systém vykazuje určité znaky výše uvedené, nemusí se vždy jednat o napadení virem, ale například jen o chybu v systému. Způsob činnosti antivirových programů při odhalování viru Jak již bylo řečeno, virus napadá kromě jiného spustitelné soubory. Virus sám je často spustitelný soubor6. Aby nedocházelo k poškození vlastního kódu, je obdařen každý virus signaturou. Tato ochrana viru sama před sebou je i základem k jeho odstranění, neboť na principu odhalení signatury viru jsou založeny i všechny antivirové programy. Znakové signatury využívají standardní viry např. makroviry, algoritmické signatury spíše viry složitější např. polymorfní. Zvláště obtížné je zachycení trojského koně a polymorfního viru. Trojský kůň se integruje přímo do napadeného programu tj. není k němu pouze připojen. Polymorfní virus mění s každou infekcí i svou signaturu (viz dále). [1]
10
Viry, červi, trojští koně
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
3.1 Typy 3.1.1 Trojští koně Trojský kůň je samostatný program, který nepotřebuje žádného hostitele. Často se tváří jako korektní a užitečný program. Nedokáže se sám šířit. Uživatel ho buď uloží sám (tak to bývalo především v minulosti, dnes se tento způsob tolik nevyskytuje) a nebo je jeho nositelem některý klasický virus. Klasičtí trojští koně dovolující útočníkovi vzdáleně ovládat napadený počítač, k čemuž využívají komunikace na některém z nechráněných portů. Kůň může předat ovládání různých funkcí počítače svému tvůrci, nebo může vyhledat a odeslat na určenou e-mailovou adresu určité informace – dokumenty, hesla…
3.1.2 Červy (worms) „Morisův červ“ byl vůbec první virus, který napadl Internet a obrátil pozornost veřejnosti na problém zabezpečení. Červ vytvoří velké množství svých kopií v paměti počítače, čímž všechny ostatní programy „vytlačí“. Tento program tedy spotřebovává paměť dokud nezahltí operační systém, který se pod tímto náporem zhroutí. U tohoto napadení je důležitý především přenos na další hostitelské počítače, neboť napadený systém je vyřazen z provozu. V tomto případě se červu daří na operačních systémech poskytujících služby vzdáleného provádění programů tj. operační systém, kde se příchozí program může automaticky sám spustit. V 80. letech byla díky této specifičnosti působnost červa omezena především na unixové stroje, neboť operační systémy DOS a Windows 95 tyto služby neposkytovaly v dostatečném rozsahu. Windows NT a následující se však již terčem útoku stát mohou. Hlavní nevýhodou standardních auditních a integritu kontrolujících nástrojů je nebezpečí napadení i těchto zařízení. Užitečný nástroj pro boj s červem je optická paměťová jednotka WORM (také „červ“). Jedná se o zařízení umožňující „write-once, read-many“ tedy uchování bezpečnostních informací a softwaru na neměnném médiu. [1]
Viry, červi, trojští koně
11
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
3.1.3 Viry Polymorfní viry Aby nebylo možné virus naleznout podle signatury, pokouší se polymorfní virus vyhnout této kontrole pomocí zašifrování kódu svého „těla“. Šíří se postupným dešifrováním zašifrované části pomocí speciální dešifrovací rutiny. Dešifrovací rutina převede šifrovací soubor zpátky do původního stavu, čímž předá řízení nad počítačem tomuto viru. Původní typy těchto virů nebyly polymorfní tzn. neměnily svoji signaturu, čímž byly stále viditelné a lehce rozpoznatelné antivirovými programy. Mutátor pomocí generátoru náhodných čísel a jednoduchého algoritmu způsobuje při napadení souboru mutaci signatury. Tímto procesem se změní virus na polymorfní a ztíží antivirovému programu svou detekci. Šancí na odhalení jsou mechanizmy pracující s šifrováním, které se zabudují do antivirových programů. Nehledá se dle identifikace signatury, ale podle šifrovací rutiny, neboť ta se nemění. Neviditelné viry (stealth) Neviditelný virus sleduje systémové funkce pro čtení souborů nebo sektorů z paměťového média. Požadavky těchto funkcí pozmění a provede přesměrování na jím vytvořenou modifikaci souboru nebo boot sektoru. Aplikace (editor disku nebo antivirový program) provádějící čtení napadeného sektoru nebo souboru vidí místo něho jeho původní nepozměněný tvar, a tak ztěžuje detekci viru v systému. Virus je schopen maskovat velikost souboru nebo jeho obsah při čtení, čímž se řadí do skupiny virů napadajících soubory. Základním předpokladem obrany proti neviditelným virům je aktivace antivirového programu na zdravém systému (start z čisté systémové diskety). Virus je nebezpečný, pokud je rezidentní a aktivní v paměti. Další možností detekce těchto virů je fiktivní napadení souboru samotným antivirovým programem. Antivirový program provede stejnou akci jako samotný virus a následně zjistí, zda-li je tento soubor napaden. Pokud byl soubor maskován virem, nedetekuje-li napadení.
12
Viry, červi, trojští koně
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Pomalé viry Tento virus je těžké odhalit, protože napadá soubory, s kterými uživatel pracuje a operační systém je tedy modifikuje nebo kopíruje. Pomalý virus napadá pouze kopie souborů, nikoliv originál. Obrana před těmito viry je obtížnější. Účinnou zbraní je kontrolor integrity monitorující převážně velikost souborů a jejich kontrolní součty. V případě chybného součtu upozorní uživatele, který však považuje tento nesoulad za normální stav, neboť sám vytvoření nového souboru nařídil. Vlivem toho nechá vypočítat nový kontrolní součet. Nejúčinnější je vrstva zaručující integritu (integrity shell). Jedná se o rezidentní kontrolor integrity nepřetržitě monitorující tvorbu nových souborů. Lze též využít lákání na návnadu (decoy launching). Základním principem je vytvoření souborů typu COM. Díky dokonalé znalosti těchto souborů můžeme testovat systém na přítomnost pomalého viru. Retroviry Jedná se o virus napadající přímo antivirový program. Jeho cílem je uniknout odhalení. Postup k vytvoření retroviru je důkladné prostudování antivirového programu, nalezení slabého místa a posléze jeho využití, ať již k smazání datového souboru se signaturami virů, čímž zabrání detekci virů nebo smazání celé integritní databáze, čímž úplně antivirovou ochranu zaslepí. Kromě napadení samotných antivirových programů může ovlivnit obrannou činnost i simulací výpočetního prostředí. Multipartitní viry Při prvním zavedení napadnou převážně boot sektor disku. Při následujícím spuštění stroje virus napadne každý spustitelný soubor nebo boot sektor disket, který je aktivován. V případě, že se jedná zároveň i o neviditelný a polymorfní virus, je opravdu velmi zákeřný. Pancéřové viry (armored) Jedná se o virovou ochranu pomocí speciálního programu znemožňující trasování, zpětný překlad a pochopení kódu viru. Buď jde o obalový kód sloužící k maskování viru, nebo o zaváděcí kód sloužící k udání špatného umístění viru. Vychází především ze znalosti doby trvání instrukce. Pokud je program odposloucháván nebo simulován, trvá jeho instrukce jinou dobu než by trvala skutečně a výsledek výpočtu je jiný. Viry, červi, trojští koně
13
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Doprovodné viry Základním postupem je vytvoření nového souboru pouze s jinou příponou. Takto virus doprovází napadený soubor a v případě jeho spuštění se nejdříve nahraje virus, čímž se infekce předá dál. Doprovodný virus je obvykle generován „fágem“. Funguje např. na základě znalosti operačního systému a skutečnosti, že pokud je program volán pouze názvem souboru bez přípony (tedy například „program“), nejprve se vyhledává soubor „program“.com a až pokud neexistuje, „program“.exe. Fágy Fág je program, který modifikuje jiné programy tím, že nahradí spustitelný soubor svým vlastním kódem. Jedná se o zvláště destruktivní nástroj, jelikož při infekci zničí každý napadený soubor místo, aby se k němu pouze připojil nebo ho skryl. Fág jé účinný i proto, že dokáže nastavit stejné vlastnosti (datum, čas, atributy, velikost) napadeného souboru, jaké měl před napadením tzn. běžná kontrola nepozná změnu.
3.2 Virové hrozby specifické pro sítě a Internet Obranu sítových serverů (centrální server) a sítí s rovnocenným připojením uzlu do Internetu (peer-to-peer tj. každá pracovní stanice je klientem i serverem pro ostatní pracovní stanice) musíme soustředit především proti souborovým virům a makrovirům.
3.2.1 Souborový virus Jedná se především o viry typu trojský kůň, pancéřový virus, neviditelný virus atd. Způsoby napadení síťového serveru: zkopírování viru přímo na server (uživatelem nebo administrátorem); spuštění souborového viru na pracovní stanici, který později napadne server; spuštění paměťově rezidentního souborového viru na pracovní stanici (napadne server, i když uživatel nemá na server přístup).
3.2.2 Makrovirus Hlavním nebezpečím makrovirů je jejich nezávislost na platformě a operačním systému. Za nezávislost na platformě mohou děkovat především kódu napsanému v interním programovacím jazyku např. Visual Basic for Applications (VBA). Kromě toho
14
Viry, červi, trojští koně
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová nenapadají jen spustitelné nebo objektové soubory, ale primárně se soustřeďují na soubory datové. Makroviry jsou programy napsané skriptovým jazykem konkrétního aplikačního programu (nejčastěji textové a tabulkové procesory), díky čemuž mají i stejné vlastnosti jako tyto aplikace tj. mazání, přejmenování souborů i adresářů a možnost měnit obsah souboru. Makrovirus se replikuje v rámci dokumentu. Makrovirus je také schopen vytvořit funkční spustitelný soubor a pomocí funkce shell jej spustit. Navíc má schopnost chovat se polymorfně tj. může ovlivňovat a přepisovat vlastní kód pomocí funkcí: „Application.VBE.ActiveVBProject.VBComponents("modul").CodeModule.AddFromString"
a podobně. Důvody oblíbenosti makrovirů: šablona Normal obsahuje již ve svém základu makra, a tak není problém tuto skupinu rozšířit o další makra; určitá makra se spouští automaticky bez přímého uživatelova zásahu např. vytváření, otevírání a zavírání dokumentu a cílem je asociace makroviru při spuštění legitimních maker (Document_New(),Document_Open(), Document_Close()); napsání makra v VBA je poměrně jednoduchá záležitost v porovnání s vytvořením systémového viru např. v asembleru; přiložení dokumentu k emailu je zcela běžnou záležitostí. Obranou je využití nástroje MVP (Macro Virus Protection), který využívá skupinu ochranných maker odhalujících podezřelé soubory. Popřípadě nastavení „vyšší úrovně bezpečnosti“ přímo v aplikaci, která umožní spouštět pouze důvěryhodná makra.
3.3 USB Flash disky – nové technologie nahrazující diskety Na tomto místě bych ráda zmínila jednu z opomíjených bezpečnostních děr v moderních PC, jedná se o oblíbené USB rozhraní (Universal Serial Bus). Jeho prostřednictvím lze k počítači připojovat bezpočet externích zařízení jako jsou tiskárny, modemy, skenery, čtečky čipových karet či externí flash paměti atd. IT infrastruktura se chrání před nepovolenými přístupy zaheslováním či absencí disketových mechanik. Malé USB rozhraní však zůstává často nepovšimnuto.
Viry, červi, trojští koně
15
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Ohrožení nastává už při startu počítače, neboť je stále více PC, která je možné nastartovat nejen s operačním systémem na pevném disku, ale také se systémem připojeným přes USB. Jestliže k tomu dojde, může získat nevítaný host možnost čtení i zápisu na lokálním pevném disku, který je v rámci alternativního operačního systému většinou bez nějakých zvláštních aktivit připojen. Operační systém na USB médiu přitom ignoruje omezení přístupu k lokálním datům, která jsou nastavena u primárního operačního systému. Na obranu proti těmto rizikům je vhodné učinit různá opatření, přičemž účinná ochrana by měla pokrývat už samotný bootovací proces. Aby bylo zamezeno tomuto nebezpečí, měla by být věnována pozornost konfiguraci BIOSu každého PC. Zde je totiž určeno, zda bude možné nabootovat operační systém z USB zařízení. Dalším aspektem této problematiky je otázka, zda smí uživatel vůbec používat paměťová média či periferie připojované přes USB. Přístup k USB portu je obvykle určován na úrovni operačního systému. Pro efektivní kontrolu ukládacích zařízení by měl systém disponovat mechanismy, které dovolují stanovit práva ke čtení a zápisu jednotlivě pro každého uživatele. Jako jeden z důvodů existence této slabiny je absence integrovaných mechanismů v OS. Společnost Securewave nabízí v posledních verzích svého bezpečnostního řešení SecureExe nástroje, s nimiž je možné zabránit kopírování dat na výměnná datová média. Jako všeobecné řešení lze ale uplatnit pouze dobrou bezpečnostní politiku, pomocí níž je možné regulovat přístup k jednotlivým souborům. [k]
3.4 Prevence napadení Pro obranu proti virům, trojským koním a červům je na trhu velké množství více či méně kvalitních produktů ať už antivirové programy, antispamy, nebo firewall. Ovšem Mít tyto programy neznamená být chráněný.Uživatel musí všechny programy správně nastavit a chovat se odpovědně a rozumě. Postup při prevenci napadení vyžaduje tyto body: • • • •
16
Rozumné chování uživatele Funkční antivirus Aktualizace programů Firewall
Viry, červi, trojští koně
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
3.4.1 Rozumné chování uživatele Uživatel by neměl být pouze pasivním uživatelem ale informovaným uživatelem. Měl by se zajímat o problematiku bezpečnosti a pokud jím sám není, měl by zabezpečení svého počítače či sítě svěřit odborníkovi. Také by měl pečlivě číst na co vlastně chce kliknout, co chce stáhnout, co chce povolit v systému. Neměl by ukládat hesla ani bez řádného zabezpečení posílat důvěrné informace jako je například číslo kreditní karty. Uživatel by měl také pravidelně zálohovat důležitá data a uchovávat zálohy pokud možno mimo počítač na přenosných médiích – USB disk, DVD, CD.
3.4.2 Funkční antivirus Antivirové systémy se skládají z několika běžných částí: 1. vykonávající nepřetržitý dohled - antivirovou kontrolu nad daty, se kterými uživatel pracuje (tzv. on-access skener). 2. umožňující provést antivirový test na vybrané oblasti. Test je vyvolán na základě požadavku uživatele (on-demand) a díky tomu se tato část označuje jako on-demand skener. 3. udržující antivirový systém v aktuální podobě. Zajišťuje stahování aktualizací antivirového systému z Internetu. 4. vykonávající automatickou antivirovou kontrolu příchozí a odchozí elektronické pošty. Mezi ne tak běžné části patří: •
• • • • • •
plánovač událostí (scheduler), který umožňuje ve zvoleném termínu automaticky vyvolat naplánovanou úlohu (např. antivirovou kontrolu důležitých dokumentů). kontrola integrity. karanténa (quarantine). monitorovací programy. antivirový plug-in pro aplikaci Microsoft Office. antivirový spořič obrazovky (screensaver). další.
Stále více populární jsou tzv. "Internet Security" či "Security Suite" balíčky několika řešení. Kromě antiviru je pak v produktu obsažen i firewall, anti-spam atd. Uvedené části patří do skupiny těch, kterých si uživatel všimne a se kterými může přímo manipulovat. Uvnitř antivirového systému pochopitelně existuje celá řada dalších důležitých částí (virová databáze, skenovací "motor" apod.)
Viry, červi, trojští koně
17
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Absence řady uvedených "viditelných" částí v antivirovém systému nemusí nijak ovlivnit celkovou kvalitu antivirového systému. Nutným minimem je ovšem on-access skener (bod 1) a část udržující antivirový systém v aktuální podobě (stahování aktualizací z Internetu - bod 3). Pokud antivirový systém tyto části neobsahuje, bude bezpečnější se mu velkým obloukem vyhnout. Pro efektivní činnost aktualizace je nutné zajistit: • •
rychlou reakci ze strany AV společnosti, správné nastavení části, stahující aktualizace na straně uživatele.
Antivirové společnosti se snaží zajistit co možná nejkvalitnější detekci v čase mezi objevením nové havěti a vydáním patřičné aktualizace pro antivirový systém - tedy v době, kdy není nová infiltrace klasickým antivirovým "skenerem" detekována (dále "díra"). Je omylem, že antivirová společnost vydávající aktualizace několikrát za den (třeba i každou hodinu) musí poskytnout vyšší úroveň zabezpečení než společnost, která jich produkuje několik za týden. Pokud se objeví globální problém, dokážou obě společnosti zareagovat stejně rychle a patřičná aktualizace "jde ven" v podobném čase. Spíše je důležité, jak často se o stažení aktualizace pokouší antivirus na straně uživatele. Obecně platí, že čím častěji, tím lépe. A třeba i každých 15 minut není luxusem. Existují dva obecné způsoby aktualizace virové databáze: •
•
"plná" aktualizace, kdy se pokaždé stahuje celá virová databáze znovu. Logicky je tento typ aktualizace časově více náročný s přibývajícím množstvím známých virů. Velikost každé takové aktualizace lze obvykle měřit na MB. AV společnosti se tak snaží tomuto způsobu aktualizace vyhnout. inkrementální aktualizace, kdy se stahují pouze ty části virové databáze, které na serveru výrobce přibyly od poslední aktualizace provedené uživatelem. Výsledkem je, že jsou stahovány pouze ty informace, které se na cílové stanici dosud nevyskytují (nestahuje se vše opakovaně jako v předchozím případě). Pozitivem je zároveň i rychlost a velikost aktualizací (obvykle maximálně několik desítek KB). Tak jako tak ale jednou za čas následuje souhrnná - bázová aktualizace, od které se následující inkrementální aktualizace odvíjejí a která zároveň obsahuje veškeré předcházející inkrementální aktualizace v jednom "balíku".
3.4.3 Aktualizace programů Uživatel by měl zajistit i pravidelnou aktualizaci alespoň těch produktů, které mají něco společného s počítačovou sítí nebo Internetem. Programy mohou obsahovat chyby - bezpečnostní díry a pokud se objeví zrovna v části, která např. zajišťuje přístup do
18
Viry, červi, trojští koně
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Internetu, může se najít vzdálený útočník (osoba - hacker, "sedící" někde na Internetu), který chyby šikovně zneužije k tomu, aby získal nad PC uživatele kontrolu. Podobně se o to snaží např. i výše zmíněný exploit, tedy program - kód, který byl vytvořen s cílem úmyslně zneužít bezpečnostní chybu pro svůj prospěch (např. pro spuštění další havěti, která je dodatečně stažena z Internetu). Pokud se podíváme do praxe, měl by uživatel: • •
•
povolit pravidelnou aktualizaci operačního systému Windows (nabídka Start / Ovládací panely), navštěvovat stránky Windows Update a Office Update, kde se nachází průvodce, který zjistí aktuální stav PC uživatele a nabídne vhodné "záplaty" na bezpečnostní díry ke stažení. První odkaz je velice důležitý, jelikož se stará o samotný operační systém Windows (ten je pochopitelně nejvíce ohrožen) a samozřejmě i o Internet Explorer. Druhý odkaz zajišťuje aktualizaci kancelářské balíku Microsoft Office. pravidelně aktualizovat i další, běžně používané produkty (ICQ, DC...), které by mohly být z Internetu zneužity.
3.4.4 Firewall Za předpokladu správného nastavení je nedílnou ochranou Intranetu firewall. Tento prostředek umožňuje poskytovat přístup k Internetu, zatímco chrání síť (počítač) před neoprávněným vstupem. Základní charakteristika firewallu: • • •
•
Používá kombinaci hardwaru a softwaru, aby ochránil síť před neautorizovaným přístupem; Může být použit k zvýšení bezpečnosti i v rámci vnitřní sítě; Nemůže zabránit napadení počítačovými viry (výjimkou jsou viry jako Blaster nebo Sasser Šířící se pomocí nechráněných portů, které v nastavení firewallu zakázat dokážeme); Před samotným návrhem firewallu se musí vytvořit bezpečnostní plán (různé možnosti přístupu k síti – v rámci interní sítě nebo z vnějšku pomocí Internetu );
Rozlišujeme tři základní typy úrovní firewallů: • • •
síťová úroveň aplikační úroveň okruhová úroveň
Základní architektury firewalů: • • • •
firewall s dvěma domovskými podsítěmi (dual-homed host firewall) firewall s odstíněným hostitelským počítačem (screened-host firewall) firewall s odstíněnou podsítí (screened-subnet firewall) ochranný směrovač může filtrovat a zamítnout neadekvátní pakety, není však dostatečnou ochranou sítě.
Viry, červi, trojští koně
19
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Strážný počítač (bastin host) Firewall nabízí centrální umístění pro správu zabezpečení a obvykle je součástí strážného počítače. Jedná se o počítač, který umožňuje spojení mezi vnitřní sítí a Internetem přes „škrtící body“. Každý počítač v síti, který chce komunikovat s Internetem, musí jedině přes strážný počítač a zpětně neexistuje počítač, který by mohl komunikovat s Intranetem jinak než přes tuto stanici. Tato ochrana zajistí vyšší bezpečnost, neboť je hlídán pouze jeden stroj. [1] Architektura firewallů Ochranný směrovač Je to první stupeň ochrany. Tento zvláštní počítač nebo elektronické zařízení používá hardware a software k tomu, aby propustil pouze ty pakety, které splní předdefinovaná kritéria. Tato kritéria stanovíme pomocí hardwarových přepínačů softwaru určeného pro směrovač. Hlavní nevýhodnou jsou filtry, které se musí rozhodovat na základě neadekvátního množství dat. Omezení směrovačů na linkovou a síťovou vrstvu umožňuje získání informací o IP adresách, číslech portů a TCP příznacích, ale o nic více. Bezesporu nevýhodná pro administrátory je i absence základních monitorujících a varujících mechanismů tj. ochranný směrovač dokáže předejít velkému množství útoků a ochránit před nimi, ale nemůže administrátora o těchto útocích uvědomit. Z tohoto důvodu je nutné ochranné směrovače rozšířit o další filtrovací nástroje především pro aplikační vrstvu. Aby byla ochrana kvalitní, měl by firewall chránit sít v každé vrstvě TCP/IP protokolu. Totální firewall vytvoříte tím, že síť nepřipojíte k Internetu. Veškerá síťová komunikace se odehrává výhradně na fyzickém spojení (kabel). [1] Rizikové oblasti Riziková oblast popisuje, které oblasti a informace sítě může hacker ohrozit. Dobře navržený firewall omezuje rizikovou oblast pouze na tento firewall nebo na určitý počet hostitelských stanic. Pokud hacker najde bezpečnostní díru (nechráněný směrovač) firewallu, může mu „posloužit“ k útoku na síť. Šancí na detekci a odražení či případné chycení vetřelce je přinutit projít narušitele přes škrtící bod firewallu, neboť vetřelec vstupující a vystupující přes toto místo za sebou nechá nezastupitelné informace. [1] 20
Viry, červi, trojští koně
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Firewall nikdy neochrání před případnou krádeží uvnitř sítě (zaměstnanci, rodinný příslušníci). Slabá místa firewallu jsou následující: • • • •
nezajistí integritu dat; neochrání před katastrofou (povodně); nepomůže autentizovat datové zdroje; nezajistí důvěryhodnost dat.
Viry, červi, trojští koně
21
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
4 Ostatní bezpečnostní kapitoly Na pozadí všeho, co vidíme v operačním systému, jsou procesy, které se o vše starají. Jejich úkoly jsou rozličné - obsluhují hardware, propočítávají zobrazování, tvoří výsledky uživatelova snažení. Aby mohly procesy správně a prakticky "najednou" pracovat, je potřeba, aby mezi nimi docházelo k předávání zpráv. Skutečně k takové činnosti dochází a zprávy jsou předávány. Proces pomocí volání služeb systému odešle zprávu a služby systému jej zpětně informují o přítomnosti "pošty" jemu určené. Proces může odeslat zprávu jinému procesu nebo také zprávu určenou všem procesům, kterou je například oběžník o "ukončování relace" tj. vypínání systému. Bez ohledu, zda je proces systémový nebo není, je možné se znalostí jeho identifikačního čísla, zaslat jemu určenou zprávu. V okamžiku jediné vteřiny dochází v systému k přenosu stovek i více zpráv. Zprávy mohou být informací o tiku hodin, přesouvání kurzoru myši, stisku tlačítek klávesnice atd. Všechny události hardware vyvolávají prostřednictvím svých ovladačů (procesů) zprávy. Zpráva má velikost 28 B a obsahuje identifikaci příjemce (tzv. hwnd - handle of window), kód zprávy (message), dva modifikátory (wParam a lParam), časové razítko s přesností na milisekundy a umístění bodu na obrazovce. Např. zpráva o stisku klávesy je identifikována kódem stisku klávesy a následně jsou v modifikátorech obsaženy informace o klávese. Umístění bodu na obrazovce zůstává v tomto případě nepoužito. Aplikace, které například zachycují stisknuté klávesy nebo monitorují síťovou komunikaci s úspěchem využívají tyto zprávy, aby byly informovány o aktuálním stavu systému. Protože se však operační systém prostřednictvím služeb stará o to, aby zprávy (s výjimkou oběžníků) nebyly doručovány "do cizích rukou", musejí aplikace, které chtějí cizí zprávy využívat projevit patřičný zájem o zpracování zpráv a identifikovat se jako systémová služba. Následně jsou jim zprávy doručovány a ony mohou (respektive pro správnou činnost systému musejí) nepotřebné zprávy předávat původní službě pro rozesílání zpráv. Systémy detekce programů, které zachycují zprávy - například tzv. "keyloggerů" - jsou založeny na průzkumu služeb systému - existují-li služby, které nejsou v systému původní, jedná se o nové detekční procesy.
22
Ostatní bezpečností kapitoly
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
4.1 Spyware Primárně je spyware využíván pro účely cílené reklamy tím, že sleduje návyky uživatele při prohlížení webových stránek a informuje o nich své tvůrce. Existují však i jeho agresivnější formy od změny startovací stránky až po změnu připojení přes draze placená telefonní čísla nebo přenos dat. Těmto programům je obtížné se vyhnout, neboť jsou součástí jiných produktů, a není vždy zřejmé, že se také instalují. Bezpochyby nejdůležitější oblastí boje proti Spyware je filtrování webu.
4.1.1 Jak se vyhnout spywaru: • • • • • • •
nastavením internetového prohlížeče a poštovního klienta pomocí doménových bezpečnostních politik; blokováním ActiveX a dalších spustitelných programů; kontrolou skriptování; filtrováním obsahu webu pomocí HTTP proxyi; znemožněním používání Internetu osobám, které jej nepotřebují; nestahovat peer-to-peerii aplikace nebo jiné programy, pokud nejsou potřeba; „neklikat“ zbytečně na legrační obrázky atd.
Pokud však spyware překoná webové filtry, je jeho odstranění bez příslušného nástroje určeného pro tyto účely obtížné, neboť většina těchto programů je odolná proti odinstalování. Spyware za sebou zanechává položky, které jsou důkladně ukryty v registrech a je obtížné se jich zbavit. Vyčištění znamená projít registry a vědět, které záznamy a soubory hledat. Další šancí jak se spywaru zbavit je filtrace portu 80. Spyware se běžně instaluje a funguje pomocí tohoto portu, aniž by si toho firewally všimly. [d] Práce s „lapačem agentů“ je podobná jako s antivirovým programem nebo osobním firewallem. Dokonce se začaly objevovat již i takové aplikace, které počítač chrání nonstop, prostřednictvím rezidentního štítu – SpywareBlaster. Díky tomuto způsobu ochrany lze agenty zachytit ještě před tím, než dojde k jejich umístění na pevném disku.[e] Mezi antivirové/firewallové balíky, které kontrolují vzorce spywaru v HTTP provozu na portu 80, patří Fortinet Fortgate, McAfee Internet Security Suite, Norton Internet Security 2004 a TrendMicro InterScan Web Security Suite for Windows. Trend Micro ani Symantec nenabízejí detekci spywaru na podnikové úrovni. Produkt firmy Norton Ostatní bezpečností kapitoly
23
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová pro domácí uživatele zahrnuje 313 definic spywaru, Symantec plánuje zahrnout do svého podnikového softwaru stejné funkce. IDS zatím není podle uživatelů ani analytiků tím správným způsobem, jak zjišťovat spyware. Spoléhá totiž na signatury útoku a ne na analýzu vzorků provozu. Jelikož se Spyware denně mění, je aktuálnost souborů se signaturami velmi obtížná. Je tedy třeba použít software schopný rozpoznávat vzorce chování - jen ten bude umět odhalit i nové formy spywaru. [d]
4.1.2 Pomoc nebo nebezpečí? V poslední době můžeme zaznamenat i skutečnost, že se Internetem začínají šířit programy vydávající se za antispywarové aplikace, které však plní úplně opačný význam. Místo toho, aby z počítače odstranily veškeré tajné agenty, tak jich naopak ještě několik nainstalují. Radou jak se vyhnout spyware je neinstalovat „pochybné“ programy. Pokud je to však nezbytné, je vhodné si zjistit o daném produktu co nejvíce informací. Také potvrzení reklamních oken lákajících na různé výhry v sobě skrývá nebezpečí. Ve velké míře se objevují na internetových stránkách s podezřelým obsahem (porno, seriové kódy atd.). [e]
4.2 Nevyžádaná pošta (SPAM) Spamiii má s viry společné problémy, jež způsobují: velké množství zpráv, které zahlcují poštovní servery, přenosové trasy a mailboxy uživatelů. Špatné je, že se podstatně hůře detekují a při jejich automatizované detekci je větší pravděpodobnost falešného poplachu. V současné době jsou nejefektivnějšími způsoby blokace spamu kombinace IP blacklistingu a heuristické analýzy.
4.2.1 IP blacklisting Většina spamů je šířena prostřednictvím nedostatečně zabezpečených SMTP serverů open relay. K tomu existuje několik systémů (např. www.ordb.org, www.spamcop.net), nazývaných RBL - Realtime Blackhole List. Do nich jsou zapisovány IP adresy serverů, které jsou nedostatečně zabezpečené nebo které již byly zneužity k posílání spamu. Přijímající mailserver si pak může ověřit, zda počítač, se kterým komunikuje, není na
24
Ostatní bezpečností kapitoly
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová "blacklistu" a zachovat se podle toho. Některé poštovní servery mají tuto funkci vestavěnu přímo v sobě. Výhodou blacklistingu je nízké procento falešných poplachů, nevýhodou to, že spameři nyní často používají sofistikovanější metody jako například open proxy nebo různé trojské viry.
4.2.2 Heuristická analýza Tato metoda je založena na syntaktické a sémantické analýze obsahu e-mailu: specializovaný program prohledává zprávu a hledá znaky, které by mohly naznačovat, že jde o spam (použití určitých slov, slovních obratů či technologií), nebo že tomu tak není (použití PGP signatury a podobně). Na základě těchto příznaků počítá koeficient a při dosažení určité hodnoty zprávu označí za spam. Pravděpodobně
nejrozšířenějším
zástupcem
této
technologie
je
open-source
SpamAssassin. Obdobná technologie je implementována i v nové verzi MS Office Outlook 2003. Tato metoda má poměrně vysokou úspěšnost, ale existuje zde nebezpečí, že i skutečné e-maily budou odmítnuty jako spam. Jediným trvale udržitelným řešením situace s viry a spamem je implementace novějšího a schopnějšího poštovního protokolu. Nástupce SMTP by měl řešit zejména zamezení nebo alespoň ztížení podvržení odesílatele e-mailu. [f]
4.3 SSL VPN iv Největším rozdílem mezi SSL VPN a tradičním vzdáleným přístupem přes IPsec (IP Security) VPN je skutečnost, že IPsec standard vyžaduje především instalaci klientského softwaru u koncových uživatelů, zatímco SSL VPN se soustřeďuje na zpřístupnění aplikací prostřednictvím libovolného webového prohlížeče. Někdy je obtížné rozhodnout, zda použít složitější webovou aplikaci, kterou nebude moci využívat každý nebo slabší a na funkce chudý webový systém, který je kompatibilní s méně rozšířenými nebo staršími verzemi tradičních prohlížečů. Některé aplikace překládat nelze, proto SSL VPN brány nabízejí dva mechanismy i pro přímý přístup k síti a to přesměrování portů (port forwarding) nebo rozšíření sítě (network extension).
Ostatní bezpečností kapitoly
25
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Přesměrování portů nabízí ochranu pro aplikace na známých serverech, zatímco rozšíření sítě umožňuje širší přístup k celé síti. Čím je člověk náročnější na přímý přístup, tím více komplikací nastává např. problémy s kompatibilitou prohlížečů a operačních systémů. Druhým problémem při přesměrování portů a rozšíření sítě je bezpečnost. Jednou ze stránek SSL VPN je schopnost sledovat provoz na aplikační vrstvě a poskytnutí kontroly nad přístupem k této síti. Pokud však začneme ve větší míře využívat přímý přístup, SSL VPN již nenabízejí takové možnosti kontroly. Práce s e-maily je pravděpodobně nejoblíbenější funkcí SSL bran. produkty firem AEP, NetScreen, Nokia i Symantec obsahují proxy pro standardní poštovní protokoly SMTP (Simple Mail Transfer Protocol), POP3 (Post Office Protocol) a IMAP (Internet Message Protocol). Základ spočívá v tom, že svého POP nebo IMAP poštovního klienta nasměrujete na SSL VPN bránu, přičemž data mezi klientem a bránou jsou šifrována pomocí standardního POP-over-SSL, IMAP-over-SSL a SMTP-over-SSL. E-mailové transakce jsou tak plně zabezpečeny. Tato technika také podporuje SSL pro starší poštovní servery nebo umožňuje zpřístupnit servery, které se nacházejí v privátním rozsahu adres. Jejím přínosem je kompatibilita napříč všemi moderními platformami a poštovními klienty, aniž by byl nutný speciální přístup k operačnímu systému, jako je tomu v případě přesměrování portů a rozšíření sítě. [h]
4.4 Anonymita na Internetu Někdo by si mohl říci, že si může na Internetu dělat co chce, a nikdo nic nezjistí. Opak je ale pravdou. Stejně jako má každý člověk svoje rodné číslo, má každý uživatel Internetu přidělené IP. Tyto tzv. logy na webserverech přesně zaznamenávají všechny, jenž se k Internetu připojili, kdy a co přesně chtěli, aby server udělal. Zjištění, kdo se ukrývá za IP adresou, je poměrně složitou záležitostí, nikoliv však neřešitelnou. Ze záznamu daného poskytovatele Internetu lze tyto údaje získat. Jde o tajné údaje, které by měl poskytovatel sdělovat pouze policii, která k tomu má patřičné odůvodnění.
4.4.1 Co všechno lze o uživateli zjistit? • • 26
jméno poskytovatele připojení k Internetu; čas připojení; Ostatní bezpečností kapitoly
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová • • • • • •
kolik dat bylo staženo; jaký je používán internetový prohlížeč; jaká je IP adresa; jméno PC; typ operačního systému; cookiesv (malé soubory, které servery ukládají do vašich počítačů, aby poznaly kde rádi surfujete). [i]
Ke zvýšení soukromí uživatele při surfování po Internetu lze využít takzvaných anonymizerů. Principem služby je skrytí počítače za anonymní proxy server, čímž se zabraňuje nežádoucímu zjišťování důležitých údajů. Přístup k anonymizerům je možný přímo z webových stránek poskytovatelů služby, případně s využitím některých softwarových klientů. Ani s anonymizéry však nebývá surfování zcela anonymní. Tyto programy většinou zabraňují sbírání informací o návštěvnících stránek. K záznamům o komunikaci mezi vaším počítačem a anonymizérem má však nadále přístup například poskytovatel připojení.
K
nejpopulárnějším
free-serverům
utajujícím
totožnost
patří:
www.anonymizer.com, mywebproxy.com, www.the-cloak.com. [j]
Ostatní bezpečností kapitoly
27
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
5 Vnější útoky – hackeři Všeobecně nejúčinnější obranou vašeho systému před nepřátelským útokem hackera je dobrý administrátor. Většina hackerů těží z nedbalosti, z „nezamčených dveří“ v systému. Nedá se vždy říci, že dobrý administrátor dokáže systém ochránit před útokem, ale ztíží práci hackera mnohdy tak, že se mu tato práce nevyplatí a půjde raději dál na nějaký snadněji napadnutelný systém. [1] Identifikace některých hackerských útoků a obrana proti nim • • • • • •
uhodnutí pořadového čísla (sequence-number prediction attack) v protokolu TCP/IP únos TCP relace (TCP session hijacking) odposlouchávání (sniffing) falšování (spoofing) IP adresy falšování odkazů (hyperling spoofing) falšování webu (web spoofing)
5.1 Uhodnutí pořadového čísla Uhodnutí pořadového čísla v protokolu TCP/IP je nejjednodušší hackerský útok. Každý připojený počítač na síti má jedinečnou IP adresu. Při komunikaci se k vysílaným paketům připojí cílová IP adresa a jedinečné číslo tzv. pořadové číslo (sequence number). Přijímající počítač akceptuje pouze pakety s odpovídající IP adresou a sekvenčním číslem. K uhodnutí sekvenčního čísla se využívá způsobu adresace počítačů a řazení paketů v síti. Hádání se skládá ze dvou základních kroků. Prvním krokem je uhádnutí adresy serveru. Odhad probíhá buďto zkoušením čísel jednotlivých uzlů po řadě, pozorováním paketů v síti nebo připojením k uzlu a hledáním IP adresy webového prohlížeče ve stavovém řádku. Jakmile útočník zjistí IP adresu serveru, ví i část adresy každého připojeného počítače v síti. Jeho cílem je nalezení adresy, která mu umožní přístup do sítě jako internímu uživateli. Hledá průchod nechráněným směrovačem. Typ sítě udává přesný přehled o maximálním počtu právě připojených počítačů. Postupným dosazováním posledních bajtů série jsou zkoušeny možné kombinace.
28
Vnější útoky - hackeři
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Struktura IP adresyvi IP adresa se dělí na adresu sítě a adresu počítače v rámci této sítě. Kolik bajtů z IPadresy tvoří adresu sítě určují počáteční bity prvního bajtu IP-adresy. Dle toho IP dělíme do 5 tříd. Dohromady tvoří IP adresa vždy 4 B.
Třída Sítě Počítače 126 2 24 - 2 2 14 2 16 - 2 2 22 128 – 2 Oběžník Rezerva
A B C D E
IP-adresa 1. bajt 2. bajt 3. bajt 4. bajt 1 – 127 Adresa počítače 128 – 191 Adresa počítače 192 – 223 Adresa počítače 224 – 239 > 239
Sítě: uvádí maximální počet sítí v rámci třídy Počítače: uvádí maximální počet počítačů v jedné síti Speciální typy adres 0.0.0.0 tento počítač na této síti 00 … 0.“počítač“
počítač na této síti
síť.00 .. 0
adresa sítě jako takové
síť.11..1
všeobecný oběžník zasílaný do sítě „síť“
11….1.
všeobecný oběžník na lokální síti
127.“cokoliv“
programová smyčka (nikdy neopustí počítač) [3]
Zpočátku útočník monitoruje komunikaci tj. pořadová čísla paketů mezi ostatními počítači sítě. Pokusí se uhádnout následující pořadové číslo, které hodlá server vygenerovat, a předstírá ho, čímž se vloží mezi server a uživatele. Jelikož zná skutečnou IP adresu serveru, je jeho komunikace se serverem bez problémů a zachytí tak vysílání s uživatelem tj. generuje pakety se správnými pořadovými čísly a IP adresami. Tímto získá interní přístup k veškerým informacím procházejícím přes server. Nejjednodušší a nejúčinnější obrana je správné nastavení auditní ochrany směrovače, firewallu a každého serveru. Po určitém množství nesprávných přihlášení při hádání IP adresy, by měl záznamník o této události informovat správce. [1]
Vnější útoky - hackeři
29
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
5.2 Únos TCP protokolu („aktivní odposlouchávání“) Jedná se o největší hrozbu pro servery připojené na Internet. Tento útok má mnoho společného s uhodnutím pořadového čísla. Liší se tím, že hacker získává aktivní přístup do sítě tj. místo, aby hledal fungující adresu důvěryhodného zdroje, přinutí server akceptovat jeho vlastní IP adresu. Hacker získá kontrolu nad důvěryhodným počítačem v síti a jeho následným odpojením předstírá skutečný uzel sítě. Falšování IP (IP spoofing) probíhá následným nahrazením každé IP adresy unášeného stroje IP adresou hackera. Simulací pořadového čísla se stává cílem vysílání severu. Únos TCP umožňuje hackerovi obejít jednorázové heslo systému i s vysokým stupně zabezpečení, a tím umožnit přístup do dalších operačních systémů. Únos TCP je lehčí, ovšem představuje větší nebezpečí než falšování IP, především díky obecnému přístupu tzn. nebylo nutné simulovat transakci, ale převzít již běžící. [1]
5.2.1 Protokol TCP/IP ISO/ OSI versus TCP/IP ISO/OSI je norma, která rozdělila síťový protokol na sedm vrstev. Základním pravidlem je, že každá vrstva může komunikovat pouze se službami vrstev nižších a poskytovat služby vrstvám vyšším. Jednotlivé vrstvy: • • • • • • •
aplikační (speciální síťové funkce – přenos souborů, elektronická pošta atd.); prezentační (konverze číselných formátů z jiných operačních systémů, kódování); relační (jejím úkolem je navazovat, udržovat a rušit relace tj. spojení mezi účastníky); transportní (přenosová – jejím úkolem je rozdělit zprávu na jednotlivé pakety, přidání hlaviček); síťová (přepojování paketů mezi počítači tak, aby došly až k cíli); linková (ověření správnosti přenášených dat pomocí samoopravných kódů a kontrola chyb); fyzická (přenos binárních dat po komunikační síti). [2]
ISO/OSI Model Aplikační vrstva Prezentační vrstva Relační vrstva Transportní vrstva Síťová vrstva Linková vrstva Fyzická vrstva
30
TCP/IP Aplikační vrstva Transportní vrstva Síťová vrstva Linková vrstva Fyzická vrstva
TCP/IP implementace „programy“ TCP, UDP IGMP, IP, ICMP ARP, „hardwarové rozhraní“, RARP „síťový kabel“
Vnější útoky - hackeři
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Rodina protokolů TCP/IP Základem internetových protokolů se na začátku sedmdesátých let minulého století stal protokol TCP (Transmission Control Protocol). Tento protokol byl roku 1978 rozdělen na dva a vznikl tak protokol IP - Internet Protocol. Za základ sady internetových protokolů lze považovat protokol IP, který řadíme do třetí, síťové vrstvy. Tímto protokolem je zajišťována adresace pomocí IP adres. Má na starosti směrování paketů k cílovému systému a popisuje také formát datagramů. V současnosti se hovoří také o protokolu IPv6 umožňujícímu díky 128bitové adresaci spravovat ve srovnání s klasickým IP mnohem větší adresový prostor. Protokol TCP náleží do druhé, transportní vrstvy a umožňuje spolehlivý a spojově orientovaný přenos dat. Pomocí tohoto protokolu lze navázat oboustranné spojení mezi dvěma systémy. Díky své spolehlivosti je využíván dalšími protokoly, i když rychlostí trochu zaostává za UDP. Na transportní vrstvě patří do rodiny protokolů TCP/IP také protokol UDP (User Datagram Protocol). Jedná se o protokol, kterému jeho jednodušší architektura umožňuje vyšší rychlost, bohužel, ve srovnání s protokolem TCP se jedná o protokol nespolehlivý. Nedisponuje žádnými mechanismy pro opravu chyb a obvykle se používá pro hromadné rozesílání paketů. TCP a IP tvoří základ internetové komunikace a využívají je i další protokoly patřící do prvé, aplikační vrstvy. Z hlediska původních záměrů patří na této vrstvě k sadě TCP/IP především protokoly TELNET, FTP, DNS a SMTP. TELNET umožňuje virtuální, terminálově orientovaný přístup ke vzdálenému systému. Z uživatelského pohledu je důležitý i interaktivní charakter tohoto protokolu, díky kterému se terminál tváří jako samostatný počítač. Ve skutečnosti má ovšem veškeré úkony, vyjma zobrazování, na starosti výhradně vzdálený systém. V praxi se velmi často tento protokol používá ke vzdálené správě. Protokol FTP (File Transfer Protocol) slouží především k přenosu souborů mezi vzdáleným a lokálním systémem. Umožňuje také některé operace nad vzdálenými souborovými systémy. Pomocí tohoto protokolu lze například vypsat obsah vzdáleného adresáře, přecházet v adresářové struktuře, mazat soubor apod. V současné době je tento protokol stále populární a podporuje jej většina serverů.
Vnější útoky - hackeři
31
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Protokol DNS (Domain Name System) lze považovat za základ uživatelsky srozumitelného adresování internetového prostoru. Tento protokol má na starosti převod mezi doménovými jmény a IP adresami. Protokol SMTP (Simple Message Transfer Protocol) slouží pro přenos elektronické pošty, i když drtivá většina uživatelů jej zná pouze jako protokol pro odesílání pošty. Mezi další internetové protokoly na síťové vrstvě lze zařadit ARP (Address Resolution Protokol) zajišťující převod IP adresy na HW adresy, RARP (Reverse ARP) sloužící pro převod HW adresa na IP adresy, ICMP (Internet Control Message Protocol) zajišťující pomocné služby. Na aplikační vrstvě se nachází HTTP (Hypertext Transfer Protocol) spojený s webovými servery, NFS (Network File System) určený ke sdílení souborů, SNMP (Simple Network Management Protocol) určený pro vzdálený dohled a správu síťových prvků, RIP (Routing Information Protocol) zajišťující správu směrovacích informací a směrovacích tabulek. Linková vrstva se týká přímého vysílání a příjmu paketů a patří sem protokoly vycházející z konkrétní síťové technologie. Rodina protokolů TCP/IP nepředstavuje jediné protokoly využívané pro propojování počítačových sítí. Ale bezesporu se jedná o protokoly nejrozšířenější. [a]
5.3 Sniffing - odposlech Pro zahájení pasivního útoku potřebuje hacker uživatelské jméno tj. user ID a heslo legitimního uživatele. Díky těmto informacím se útočník dostane do systému, kde sleduje a kopíruje vysílané pakety. Jako obrany se využívají jednorázová hesla nebo lístkové autentizační systémy (Kerberos). I když obě metody útočníkovi znesnadňují přístup do sítě, nezabrání mu v aktivním útoku při nezašifrovaném nebo nepodepsaném datovém proudu. [1] Aktivní útok Cílem aktivního útoku hackera je přesměrování TCP proudu přes svůj stroj, díky čemuž může obejít ochranu pomocí jednorázového hesla nebo autentizačního systému. TCP spojení je umožněno kdykoliv, kdy se někomu podaří po datové cestě umístit odposlouchávač a generátor TCP paketů. [1]
32
Vnější útoky - hackeři
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Aktivní desynchronizační útoky Aby mohl přenos paketů proběhnout, musí projít výměna synchronizačního paketu v pořádku. Pokud se stane, že pořadová čísla neodpovídají, paket se odmítne a čeká se na správně očíslovaný paket. Hacker může tohoto postupu využít k zachycení spojení. Jeho cílem je převést oba konce TCP spojení do desynchronizovaného stavu, ve kterém nemůžou v přenosu již pokračovat. Poté pomocí třetího uzlu (dalšího počítače připojeného fyzicky k médiu přenášející TCP pakety) zachytí pravé pakety a vytvoří za ně náhradu, identickou kopii, kterou pošle oběma původním počítačům. Jako prevenci před tímto typem útoků lze využít šifrování např. pomocí Kerbera (nacházejícího se v aplikační vrstvě sítě) a kryptografickou implementaci TCP (nacházející se v transportní vrstvě sítě). Zašifrování toku dat sice nezabrání modifikaci obsahu, ale značně ho znesnadní. Rovněž účinné je využití digitálního podpisu, který ztíží modifikaci dat v reálném čase. [1] Šifrovánívii Základním nástrojem kryptografie je šifrování. Jedná se o proces, kdy z textu pomocí šifrovacího algoritmu a klíče vytvoříme text šifrovaný. Bezpečný zpětný převod do „čteného“ textu záleží na kvalitě algoritmu, ale i šifrovacího klíče. [2] Šifrovací algoritmus Podle způsobu přístupu ke klíči rozlišujeme dvě základní skupiny algoritmů: symetrické a asymetrické. [2] Symetrické algoritmy Symetrické algoritmy používají stejný šifrovací klíč pro proces šifrování i dešifrování. Tento způsob není vhodný pro příliš citlivé a lehce zranitelné údaje, a proto se využívá zejména při zálohování médií. Výhodou symetrických algoritmů je především jejich vyšší rychlost (v porovnání s asymetrickými). Mezi typické představitele řadíme: • • • •
DES (standard vyvinutý IBM v 70. letech, klíč má délku 56 bitů, v současné době je prolomení této šifry možné, a to i za poměrně krátkou dobu); 3DES (je to DES přešifrovaný třikrát za sebou, klíč má délku 112 bitů, vyšší bezpečnosti je však obětována nižší rychlostí - až o 1/3 oproti DESu); IDEA (klíč má délku 128 bitů, i přes vyšší bezpečnost je tento algoritmus několikrát rychlejší než DES); BlowFish (délka klíče je proměnlivá cca. 32 – 448 bitů, obvykle kolem 128 bitů, tento algoritmus není patentován a dán volně k použití);
Vnější útoky - hackeři
33
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová •
CAST (podobný jako BlowFish).
Asymetrické algoritmy Využívají pro proces šifrování a dešifrování dat dvou různých klíčů. Po vygenerování klíče se rozdělí na dvě části – veřejnou a soukromou. Veřejný klíč se poskytuje všem, od koho chceme získat data. Soukromý klíč zůstává nám, všem ostatním je skrytý. Pouze osoba mající oba klíče dokáže zprávu dešifrovat. Problémem je hlavně jejich pomalost, proto se často využívá kombinace obou zmíněný algoritmů (asymetrickým klíčem zašifrujeme symetrický klíč). Mezi typické představitele asymetrických algoritmů řadíme: • •
•
RSA (algoritmus pro výměnu klíčů a tvorbu elektronického podpisu, neoficiální standard); Eliptické kryptosystémy (ECC, šifruje pomocí diskrétního logaritmu v grupách na eliptických křivkách, výhodou je vysoká bezpečnost při nižší délce klíče – 2048 bitů dle RSA = 180 bitů dle ECC, jedná se spíše o budoucnost kryptografie); Diffie Hellman (jedná se o protokol umožňující bezpečnou výměnu klíčů pro symetrické šifrovací algoritmy).
Další možnosti kryptografické technologie • • •
• • •
•
DSS (Digital Signature Standard) Jedná se o algoritmus sloužící k autentizaci. Jeho největší slabinou je neexistence výměny klíčů. Verifikace podpisů pomocí DSS je poměrně malá. HASH funkceviii • Tato funkce je využívána zejména u digitálního podpisu. Jedná se o matematickou funkci, kterou lze v jednom směru snadno vypočítat, zatímco v směru opačném se jeví tato možnost za velmi obtížnou. Výsledkem je 128 – 160 bitů dlouhá jednoznačná sekvence vstupního bloku dat. Digitální podpisix Digitální podpis vznikne propojením HASH funkce a asymetrického klíče. Jeho využití vysvětlím na e-mailové zprávě: Př. Zprávu zašifruji veřejným klíčem adresáta. Pro posílanou zprávu nechám vypočítat HASH číslo. Tuto hodnotu zašifruji svým soukromým klíčem a přiložím k emailu. Příjemce nejprve ověří připojený podpis tím, že spočítá současný HASH zprávy. Dále mým veřejným klíčem rozšifruje HASH číslo přiložené v emailu. Pokud vše proběhlo bez problémů, musí se tato dvě čísla rovnat. Digitální podpis slouží k ověření integrity zprávy (změna obsahu zprávy) a k autentizaci zprávy (původ zprávy). Digitální podpis je téměř nemožné falšovat. [2]
5.4 Falšování (spoofing) IP adresy Služby TCP (Transmission Control Protocol) a UDP (Uniform Data Protocol) předpokládají platnost IP (Internet Protocol) adresy uzlu a na základě toho adrese „důvěřují“. Hacker však může využít při přenosu paketů směrování zdrojem (IP source 34
Vnější útoky - hackeři
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová routing), specifikovat tím přímou cestu (přes směrovače či uzly pro něj „vhodné“) a vydávat se za důvěryhodného klienta. Popis možného způsobu falšování: 1. hacker zamění IP adresu maskovaného uzlu za adresu důvěryhodného zdroje; 2. poté hacker určí zdrojovou cestu paketu k serveru a zpět k uzlu hackera (důvěryhodný klient bude poslední „skok“ na cestě k serveru); 3. hacker pošle touto cestou požadavek klienta serveru; 4. server tento požadavek přijme a odpověď vrátí důvěryhodnému klientovi; 5. důvěryhodný klient použije zdrojovou cestu a odešle paket uzlu hackera. Jednou z možných modifikací je i počkat, až se důvěryhodný klient odpojí a teprve poté se za něj vydávat. Detekce falšování Jedná se o obtížnější detekci, než při desynchronizačních útocích. Základem je prověřovat vše, co přichází přes externí směrovač. Filozofie je následující: pokud zjistíme z auditních záznamů, že prošel interní přenos (tj. jak adresa zdrojová, tak adresa cílová je z vnitřní sítě) přes externí směrovač, jedná se s největší pravděpodobností o falšování IP. Nejlepší ochranou je filtrování takovýchto paketů hned, jak vstoupí z Internetu do směrovače, čímž se zastaví každý paket, který uvádí původ uvnitř lokální domény. Pokud se stane, že směrovací hardware filtrování paketů nepodporuje, doporučuje se nainstalovat druhý směrovač s výstupním filtrem, který již tuto filtraci zajistí. [1]
5.5 Falšování odkazů (hyperling spoofing) Tato kapitola se soustředí na porušení bezpečnosti autentizačního protokolu serverů SSL (Secure Socket Layers)x, který je používán pro vytváření bezpečných webových prohlížečů a serverů (Microsoft Explorer a Netscape). V tomto případě je cílem hackera přesvědčit prohlížeč, aby se připojil k falešnému serveru, přestože se bude jevit jako bezpečná relace (dole na liště je ikona zámku). Tímto získá z klienta důvěryhodné informace nebo mu umožní stáhnout a spustit zákeřný Java appletxi. Základní problém tedy je, že certifikát poskytovaný SSL obsahuje nesprávnou informaci – doménové jméno. Při registraci nového doménového jména ověřují
Vnější útoky - hackeři
35
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová certifikačníxii internetové orgány pouze to, zda již není někde zaregistrováno, nezajišťují ovšem, aby neporušovalo ochranné známky. Většina uživatelů hádá URLxiii způsobem www.<společnost>.cz. I když URL vypadá, jako by patřilo hledané společnosti, neznamená to, že jí skutečně patří. Útok podvržením odkazů je úspěšný hlavně proto, že se nepoužívá spojení přes DNS nebo URL, ale přes odkazy. např. hacker uvede:
Software zdarma
Uživatel vidí pouze Software zdarma. Klikne na tento odkaz, který ho však přenese do míst, kde by se ocitnout nechtěl. Uživatel má sice bezpečné soukromé spojení (httpsxiv), bohužel však s nesprávným serverem. Pokud bude na této adrese umístněna skutečná webová stránka o „užitečném softwaru“ , může nic netušící návštěvník vyzradit soukromé informace (adresa, rodné číslo atd.). Nejlepší je kontrola autentizované identity serveru ve zdroji prohlížeče a nebo z informace o dokumentu. Další možností je nastavení „bezpečné“ domovské stránky. Bezpečná stránka je stránka, o jejíž integritě se nemusí pochybovat. Jednalo by se nejspíše o lokální HTML schovanou za firewallem nebo specializované internetové aplikace (certifikáty Verisign Java nebo Microsoft Authenticode). Poslední možností je zvýšení bezpečnosti v prohlížeči, který umožní monitorovat certifikáty uzlů. [1]
5.6 Falšování Webu (Web spoofing) Hacker při tomto útoku vytvoří falešnou kopii celého webového uzlu. Falešný web obsahuje stejné stránky a odkazy jako skutečný uzel, celý však podléhá hackerovi. Cílem je odchytit data jdoucí od oběti na webový server i zpáteční provoz tj. od serveru k oběti. Klíčové je postavení hackera mezi oběť a zbytek Webu. Prvním krokem je přepsání všech lokátorů URL na některé webové stránce tak, aby ukazovaly na server hackera místo
na
skutečný
server
(např.
místo
www.pef.czu.cz
přepsat
na
www.hacker.cz/www.pef.czu.cz). Pokud se uživatel dostane na takto přepsanou stránku, 36
Vnější útoky - hackeři
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová URL vypadá normálně, jedná se však už o kopii umístěnou na serveru hackera. Poté, co hacker vyhledá vámi požadovaný skutečný dokument, přepíše všechny URL v dokumentu stejným způsobem tj. doplní www.hacker.cz před všechny URL. Takto zůstanete uvězněni uprostřed falešného webu a hacker tak libovolně řídí tok informací od vás i k vám. Jak jsem již zmínila, problém falešného webu se týká i stránek s bezpečným připojením (tj. použitím protokolu SSL). Prohlížeč vás sice informuje, že se nacházíte bezpečně připojeni k serveru, protože toto bezpečné připojení server má. Naneštěstí pro vás však se serverem hackera a ne s požadovanou webovou stránkou. [1] Jak se lze na falešný web dostat? K tomu, abyste se do falešného webu dostali, potřebuje hacker vaši součinnost tj. musí vás do něj nalákat. Využívá k tomu rozličné techniky, jako: • • • •
vložení falešného odkazu na vaši oblíbenou webovou stránku; zaslání odkazu na falešný Web e-mailem; přelstění vyhledávacího stroje Webu vložením části falešného Webu; v případě Internet Exploreru napsáním ActiveXxv komponenty, která bude provedena při každém spuštění prohlížeče, pomocí tohoto programu bude normální URL nahrazeno falešným.
Jak odhalit falešný web Útočník vás tedy nejdříve musí přesvědčit, abyste jeho falešný Web navštívili, bez toho, aby vám to prozradil. Informace o skutečném URL můžeme zjistit ze stavového řádku pokud ukážu kurzorem na odkaz, měla by se mi zobrazit jeho absolutní adresa. Při vyhledávání požadované stránky je ve stavovém řádku vidět i jméno serveru, kam se prohlížeč připojuje. Stejné informace můžeme zjistit i z řádku Adresa (Location). Dá se samozřejmě využít i zobrazení zdroje html textu požadované stránky (View Document Source) nebo z informací o zobrazovaném dokumentu (View Document Information). Všechny tyto informace jsou velmi snadno zjistitelné, proto není nic zvláštního, že chytrý hacker se je pokusí eliminovat. Skrytí „nepotřebných“ údajů lze provést jednoduchou úpravou prohlížeče pomocí programů v Javěxvi, JavaScriptuxvii nebo VBScriptu. Jedinou účinnou obranou je zablokování výše zmíněných skriptů a jazyků v prohlížeči. Potom nebude moci hacker údaje modifikovat. Bohužel s tím si však vypnete i určité Vnější útoky - hackeři
37
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová potřebné funkce, které však lze selektivně obnovovat. Neustálé zobrazení řádku Adresa a věnování pozornosti aktuálnímu URL je nezbytnou součásti vaší obrany. Jako dlouhodobé řešení by mělo být zabránění falšování stavové řádky, adresy apod. již ze
38
strany
výrobců
internetových
Vnější útoky - hackeři
prohlížečů.
[1]
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
6 Webové stránky 6.1 SQL injection SQL Injection je hackerská technika, při které se útočník snaží webové aplikaci podstrčit SQL příkazy pro spuštění na databázovém stroji. Jedná se o jeden z nejběžnějších útoků na aplikační vrstvu na Internetu. Technologie zranitelné tímto typem útoku jsou dynamické skriptovací jazyky jako ASP, ASP.NET, PHP, JSP, CGI atd. K uskutečnění útoku pomocí SQL Injection stačí pouze internetový prohlížeč a trocha práce při hledání přihlašovacích formulářů. To je hlavní důvod popularity SQL Injection Při tomto typu útoku však hacker nezneužívá bezpečnostní chybu operačního systému nebo serverového software, ale chybu vzniklou při vývoji webové aplikace. Někteří vývojáři si neuvědomují možnost tohoto typu útoku a při vývoji nechávají nevědomě hackerům „otevřená vrátka” v podobě možnosti podstrčit SQL příkazy přes formulářová pole. K SQL Injction je náchylná jakákoli stránka, která si mění data s databází. Zneužitelné chyby obvykle obsahují přihlašovací formuláře, formuláře typu „Zapomněl jste své heslo?” atd. Jakmile útočník zjistí, že systém není odolný proti SQL Injection, může aplikaci přes formulář podstrčit SQL dotazy. Je to jako kdybyste útočníkovi dali přístup k SQL databázi – útočník může do databáze odeslat jakýkoli SQL příkaz jako SELECT, INSERT, DELETE nebo DROP TABLE! Zda útočník uvidí data z databáze závisí na tom, jakým způsobem aplikace zobrazuje výsledky SQL dotazů. Jisté však je, že útočník dokáže na zranitelném systému spouštět libovolné SQL příkazy, ukrást data atd. K jakým zdrojům útočník získá přístup závisí na úrovni zabezpečení databáze. Nastavení databáze může omezit množství povolených příkazů. Webové aplikace mají logicky povoleno čtení z databáze. Takže přestože není útočník schopen modifikovat záznamy na napadeném systému, má nemalou šanci, že si za pár okamžiků přečte zajímavé informace. Bezpečnostní politika
39
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
6.1.1 Příklad SQL injektion Zde je příklad jednoduchého přihlašovacího HTML formuláře se dvěmi vstupními poli – loginem a heslem.
Nejjednodušší způsob, jak může login.php fungovat, je sestavení dotazu do databáze: "SELECT id FROM logins WHERE username = '$username' AND password = '$password'";
Pokud jsou hodnoty proměnných $username a $password převzaty přímo z hodnot formuláře předávaného metodou POST, lze takto napsanou aplikaci jednoduše napadnout. Předpokládejme, že jako jméno zadáme „Joe” a pro heslo použijeme řetězec cokoli' OR 'x'='x "SELECT id FROM logins WHERE username = 'Joe' AND password = 'cokoli' OR 'x'='x'";
Jelikož aplikace reálně neuvažuje o příkazu, ale pouze vloží proměnnou do SQL příkazu, je hned z jednoduchého SQL příkazu příkaz složený. Část 'x'='x' zajišťuje hodnotu true bez ohledu na to, co obsahuje první část podmínky. Takto útočník obejde proces přihlášení, aniž by kdy znal platnou kombinaci uživatelského jména a hesla!
6.1.2 Prevence SQL injektion Nejlepším způsobem jak se bránit proti SQL injection je ošetření veškerých uživatelských vstupů. Ze vstupů byste měli odstranit vše, co může být potencionálně nebezpečné. Tak zajistíte, aby uživatelem zadaná data obsahovala pouze informace, které po něm žádáte. 40
Bezpečnostní politika
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
6.2 Cross site Scripting Cross site Scripting (také XSS nebo CSSxviii) nastává, když dynamické webové stránky zpracují data podstrčená uživatelem a zobrazí výstup, aniž by byl řádně ověřen. Tato data mají většinou formu odkazu, jehož součástí je také škodlivý obsah, a jsou šířena všemi prostředky Internetu. „Webová stránka obsahuje text a HTML tagy, které generuje server a která poté interpretuje prohlížeč. U statických webových stránek máte plnou kontrolu nad tím, jak je prohlížeč interpretuje. Dynamicky tvořený obsah však plnou kontrolu nad interpretací stránky klientem neposkytuje. Jádrem problému je možnost vložení škodlivého kódu, který je následně vložen do výstupního kódu, aniž by měl návštěvník nebo administrátor webových stránek dostatek informací o tom, co se děje, a mohli tak zajistit dostatečnou ochranu.” ( CERT Coordination Center ) Útočník zadáním XSS URL do stránky podstrčí vlastní skript a úspěšnost útoku kontroluje ve svém prohlížeči. Aby mohl útočník vytvořit takový tvar URL, který by nebyl na pohled podezřelý, musí znát minimálně základy HTML, JavaScriptu a dynamického programovacího jazyka. Ohrožené mohou být všechny webové stránky, které předávají data databázi. Většinou jsou to přihlašovací formuláře, formuláře typu „Zapomněl jste své heslo?” atd. Pokud není webová aplikace dostatečně zabezpečená, může útočník do kódu stránky podstrčit škodlivý JavaScript, VBScript, Activex, HTML nebo Flash a zmást tak uživatele. Na počítači uživatele se spustí potstrčený skript a útočník pak získává zajímavá data. Útočník může použitím XSS získat soukromé informace, manipulovat s cookies nebo je ukrást, nebo na systému koncového uživatele spouštět škodlivý kód.
6.2.1 Příklad XSS Nyní si vše ukážeme na jednoduchém příkladu. Máme vyhledávač, který není proti XSS řádně zabezpečen. Stránka pro vyhledávání obsahuje jedno políčko pro zadání dotazu a tlačítko pro odeslání formuláře. Stránka s výsledky zobrazuje hledaný text a výsledky vyhledávání. Výsledky vyhledávání pro výraz „XSS Vulnerability”
Bezpečnostní politika
41
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Aby bylo možné přidat stránku s výsledky do Oblíbených položek, obsahuje URL i hledaný výraz. V našem příkladě by URL mohla vypadat následovně: http://test.searchengine.com/search.php?q=XSS%20Vulne rability
Nyní se pokusíme o odeslání následujícího dotazu: <script>alert('This is an XSS Vulnerability')
Po odeslání tohoto dotazu skriptu search.php je řetězez zakódován a výsledná URL by vypadala zhruba takto: http://test.searchengine.com/search.php?q=%3Cscript%3 Ealert%28%91This%20is%20an%20XSS%20Vulnerability%92% 2 9%3C%2Fscript%3E
Po načtení stránky s výsledky by vyhledávač pravděpodobně nezobrazil žádný záznam, ale zobrazil by window.alert javascriptu, který byl stránce podstrčen pomocí XSS.
6.2.2 Ochrana XSS Nejlepší způsob, jak se těmto útokům bránit, je odstranění nebezpečných znaků z uživatelských vstupů. Uživatelské vstupy by měli být filtrovány na ASCII i HEX hodnoty.
6.3 Útok CRLF Injection CRLF je výraz pro tzv. návrat vozíku (CR, ASCII 13, \r) následovaný zařádkováním (LF, ASCII 10, \n). Tyto ASCII znaky se nezobrazují na obrazovce, ale ve Windows jsou často využívány k označení konce řádku. Na UNIX/Linux systémech je konec řádku indikován pouze zařádkováním. Kombinace CR a LF je například použita pro stisknutý enter na klávesnici. Stisknutí klávesy Enter může dle použité aplikace znamenat posunutí o řádek nebo odeslání příkazu. Útok pomocí CRLF Injection nastává v případě, že se hackerovi podaří tento příkaz podstrčit do systému. Při tomto typu útoku však hacker nezneužívá bezpečnostní chybu 42
Bezpečnostní politika
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová operačního systému nebo serverového software, ale chybu vzniklou při vývoji webové aplikace. Někteří vývojáři si neuvědomují možnost tohoto typu útoku a při vývoji nechávají „otevřená vrátka”. Pokud takovouto chybu objeví hacker, nabízí se mu možnost podstrčení příkazu CRLF. I když útočník nalezne webovou aplikaci, která není zabezpečená proti CRLF Injection, je omezen strukturou aplikace a závažností objevené chyby. U některých typů webů může být pro aplikaci taková chyba smrtelná. V dalších případech se může jednat o malou chybu s minimálním dopadem. Všechno záleží na tom, nakolik tato chyba umožňuje manipulaci s webovou aplikací.
6.3.1 Příklad 1 Jakýkoli vstup z formuláře zadaný uživatelem představuje bezpečnostní riziko Zde je příklad jednoduchého logu: Date 25/07/2005-14:23:47
Uživatelské jméno HodnyNavstevnik
Zpráva Naprosto souhlasím!
Nicméně, pokud uživatel zadá něco jako: Já s tebou taky naprosto souhlasím..\n25/07/2005-15:00:00 JinyNavstevnik A o čem to vlasně mluvíš!?
Bude log vypadat zhruba následovně: Datum 25/07/2005-14:23:47
Uživatelské jméno HodnyNavstevnik
Zpráva Naprosto souhlasím!
25/07/2005-14:42:19
ZlyNavstevnik
Já s tebou taky naprosto souhlasím..
25/07/2005-15:00:00
JinyNavstevnik
A o čem to sakra mluvíš!?
V tomto případě uživatel vytvořil díky znakům CR a LF, které nebyly odfiltrovány ze vstupu, zfalšovaný záznam v logu.
6.3.2 Příklad 2 Mnoho síťových protokolů, včetně HTTP, používá kombinaci znaků pro návrat vozíku a zařádkování velmi často, protože každý řádek je ukončen CRLF. Pokud je uživatel
Bezpečnostní politika
43
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová schopen vytvořit nefiltrovanou HTTP hlavičku, vzniká nemalé riziko (uživatel může obejít aplikační vrstvu a komunikovat přímo se serverem). Například emailové, NNTP a HTTP hlavičky jsou založeny na struktuře „klíč: hodnota” a každý řádek je ukončen kombinací CRLF. Hlavička „Location:” je v HTTP využita k přesměrování na jinou URL a „Set-cookie:” se používá pro cookies. Pokud nejsou uživatelské vstupy ošetřeny, lze do nich přidat znaky CR a LF, a tak skripty donutit, aby dělaly něco jiného, než pro co byly původně vytvořeny. Pokud není vstup kontrolován na přítomnost znaků CR a LF a skript provádí přesměrování pomocí řetězce: Location: $url%0d%0a
Můžeme prohlížeč přesměrovat a nastavit cookie použitím proměnné $url na: http://www.i-was-redirected.com/%0d%0aSetCookie: Authenticated=yes%0d%0aReferer: www.somesite.com
Pokud útočník dokáže uložit URL, na které byl uživatel přesměrován a přečíst cookie, vzniká uživateli vážný problém.
6.3.3 Ochrana před útoky CRLF Nejlepším způsobem jak se bránit proti SQL injection je ošetření veškerých uživatelských vstupů. Ze vstupů by mělo být odstraněno vše, co může být potencionálně nebezpečné. Tak zajistíte, aby uživatelem zadaná data obsahovala pouze informace, které po něm žádáte.
6.4 Directory Traversal (průchod adresáři) Webové servery poskytují dva základní typy bezpečnostních mechanismů: • •
44
Access Control Lists (ACL) Kořenový adresář
Bezpečnostní politika
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Access Control List je používán při autorizaci. Jedná se o seznam, který administrátoři web serverů používají k nastavení skupin a uživatelů, kteří mohou přistupovat, měnit nebo spouštět jednotlivé soubory na serveru, a dále k nastavení dalších přístupových práv.
Obrázek 2: Kmenový adresář
Kořenový je typicky adresář na souborovém systému serveru, do kterého mají přístup uživatelé webové aplikace. Uživatelé však mají zároveň zakázaný přístup do všech adresářů mimo tento. Například:
standardně
nastavený kořenový adresář
v
IIS
na
Windows
je
C:\inetpub\wwwroot – s tímto nastavením se uživatel nedostane na C:\Windows, ale má přístup k C:\Inetpub\wwwroot\news a k dalším adresářům pod kořenovým adresářem wwwroot (za předpokladu, že je ověřen přes ACL). Kořenový adresář zajišťuje, aby se uživatelé nedostali k citlivým souborům na serveru (např. cmd.exe na Windows a passwd na systémech Linux/UNIX. Chyba umožňující Directory Traversal může existovat na serverovém software i ve zdrojovém kódu webové aplikace.
Bezpečnostní politika
45
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Aby mohl hacker uskutečnit útok pomocí Directory Traversal, potřebuje pouze internetový prohlížeč a něco málo znalostí, aby věděl, kde může v systému naslepo najít standardní soubory a adresáře. Hacker může na systému, který není ošetřen proti Directory Traversal, zneužít této chyby k přechodu z kořenového adresáře www do dalších částí souborového systému. Díky tomu získá možnost čtení souborů, nebo co víc, získá možnost spuštění různých utilit, což může vést k úplné kompromitaci systému. V závislosti na nastavení přístupových práv na webovém serveru může útočník spouštět příkazy a tvářit se jako webová aplikace. Z toho vyplývá, že útočník má taková přístupová práva jako sama webová aplikace. Aby mohl hacker uskutečnit útok pomocí Directory Traversal, potřebuje pouze internetový prohlížeč a něco málo znalostí, aby věděl, kde může v systému naslepo najít standardní soubory a adresáře.
6.4.1 Příklad útoku pomocí Directory Traversal přes zdrojový kód webové aplikace V dynamicky tvořených webových aplikacích je uživatelský vstup předáván metodami GET nebo POST. Zde je příklad zobrazení stránky pomocí parametru URL (metoda GET): http://test.webarticles.com/show.asp?view=oldarchive. html
Po zadání této URL si prohlížeč od serveru vyžádá dynamickou stránku show.asp a spolu s ní i parametr view s hodnotou oldarchive.html. Po zpracování požadavku webovým serverem si skript show.asp otevře stránku oldarchive.html a odešle ji zpět internetovému prohlížeči, který ji zobrazí uživateli. Útočník tak usoudí, že skript show.asp dokáže zobrazovat obsah souborů uložených na serveru a odešle takto upravenou adresu: http://test.webarticles.com/show.asp?view=../../../../../Windows/syste m.ini
Pokud má útočník štěstí a server či aplikace nejsou řádně zabezpečeny, vypíše mu prohlížeč obsah souboru system.ini. Znaky ../ systému říkají, aby se přepnul o adresář
46
Bezpečnostní politika
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová výše. Útočník musí odhadnout, o kolik adresářů musí jít nahoru, než se dostane do kořenového adresáře disku. To však rychle zjistí metodou pokus omyl.
6.4.2 Příklad útoku pomocí Directory Traversal přes chybu ve web serveru Mimo chyby v kódu webové aplikace může být bezpečnostní díra i ve web serveru. Problém může být buď součástí software web serveru, nebo součástí ukázkových skriptů, které admin neodstranil. Tato chyba byla v posledních verzích webových serverů odstraněna, ale spousta serverů online běží na starších verzích IIS a Apache, které nemusí být proti útokům metodou Directory Traversal odolné. A i přesto, že používáte ošetřené a aktuální verze webových serverů a správně napsané skripty bez bezpečnostních chyb, může váš server obsahovat a publikovat defaultní adresáře se skripty, které hackeři moc dobře znají. Příklad url, pomocí kterého na IIS přejdeme z adresáře se skripty do adresáře C:\Windows\System32 a spustíme příkaz může být: http://server.com/scripts/..%5c../Windows/System32/cmd.exe?/c +dir+c:\
Tento požadavek vrátí útočníkovi výpis adresáře C:\. Spustí totiž cmd.exe (příkazový řádek) a v něm příkaz „dir c:\”. Znaky %5c znamenají, že URL obsahuje escapovaný kód, který ve skutečnosti představuje zpětné lomítko („\”). Novější verze web serverů kontrolují url na tyto escapované znaky a nenechají je projít. Avšak některé starší verze tuto kontrolu neprovádějí a útočníkovi umožňují spouštět libovolné příkazy.
6.4.3 Ochrana před útoky Directory Traversal Měla by se používat nejnovější verze webového serveru s nainstalovanými veškerými patche. A efektivně filtrovat uživatelské vstupy. Ideální je ze vstupu odstranit vše, kromě důvěryhodných dat. Tak lze zajistit, aby server nezpracoval nějaké příkazy zadané uživatelem
Bezpečnostní politika
47
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
6.5 Útok na přihlašovací formuláře a dialogy (Authentication hacking) Ověření uživatele hraje v bezpečnosti webových aplikací kritickou roli. Když se uživatel přihlásí do aplikace, tato aplikace mu přidělí práva přidělená jeho identitě. HTTP může používat několik různých typů ověření: • • •
• •
• •
Základní - Čistý textCleartext username/password, kódování Base-64 (lze triviálně dešifrovat). Digest - Stejné jako základní,, ale hesla jsou kódována. Formulář - webový formulář pro zadání uživatelského jména a hesla (nebo jiných přihlašovacích údajů). Ověřování probíhá vlastním ověřovacím skriptem na backendu. NTLM - Proprietární ověřovací protokol od společnosti Microsoft, implementován v hlavičkách HTTP request a response. Negotiate - Nový protokol od společnosti Microsoft. Šifrováno výše uvedenými metodami s dynamickou volbou šifrování (záleží na „dohodě” mezi serverem a klientem. Pro klienty používající Microsoft IE 5 a vyšší doplňuje šifrování Kerberos. Certifikáty na straně klienta - Přestože se SSL/TLS nepoužívá tak často, nabízí možnost kontrolovat digitální certifikát na straně klienta. Microsoft Passport - Služba SSI (single-sign-in) provozovaná Microsoft Corporation, díky které mohou webové stránky (nazývané „Passport Partners”) ověřit uživatele na základě jejich členství ve službě Passport. Mechanismus využívá k vytvoření unikátní cookie klíč, sdílený mezi společností Microsoft a partnerským webem.
Tyto typy ověření pracují přímo přes HTTP (nebo SSL/TSL), přihlašovací údaje jsou součástí reques/response provozu. Tento typ útoku nezneužívá technologické bezpečnostní chyby v operačním systému nebo serverovém software. Spíše záleží na tom, jak bezpečně jsou hesla uložena, jak jsou silná, a jak je pro útočníka těžké dostat se na server (síťová bezpečnost). Pokud útočník vstoupí do systému s použitím přihlašovacích údajů platného uživatele, získá přístup k veškerým oprávněním, které administrátor platnému uživateli přidělil. Tzn. pokud se útočníkovi podaří přihlásit jako platný uživatel, může mít k důležitým informacím pouze omezený přístup. Pokud se mu ale na druhou stranu podaří přihlásit jako uživatel s právy administrátora s celkovým přístupem do systému, získá kompletní kontrolu nad aplikací i s jejím obsahem. Nástroje útočníka
48
Bezpečnostní politika
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Obecně se útočník nejprve snaží získat přístup k přihlašovací stránce, na které aplikace požaduje zadání jména a hesla. Dalším krokem bývá zadání platných přihlašovacích údajů uživatele s co nejvyššími právy. Odhadnutí hesla není sice nejlepší technika, ale v některých situacích se může jednat o velice efektivní způsob prolomení ověřování uživatele. Zde je několik běžných kombinací uživatelských jmen a hesel používaných pro odhadnutí přihlašovacích údajů: Odhadovaná uživ. jména Odhadovaná hesla [NULL] [NULL] [NULL], root, administrator, admin, password, heslo, root, administrator, admin [název_společnosti] operator, webmaster, [NULL], operator, webmaster, backup backup guest, demo, test, trial [NULL], guest, demo, test, trial member, private member, private [název_společnosti] NULL], [název_společnosti], password, heslo [známý_uživatelský_účet] [NULL], [znamý_uživatelský_účet] Pokud se útočníkovi nepodaří odhadnout heslo, přechází na specializované nástroje (Brutus, WebCracker), které jsou široce dostupné na Internetu. Tyto nástroje se pokouší přihlásit do systému pomocí přednastavených kombinací uživatelských jmen a hesel, slovníkových brute force útoků. Slovníkový útok využívá speciální aplikaci a předpřipravené slovníky s hesly. Jedná se o rychlou metodu, ale úspěšnost slovníkového útoku záleží na velikosti slovníku a síle napadeného hesla. Brute force attack je metoda, kdy se útočník snaží najít kombinaci znaků tvořící heslo. Tato metoda může být časově velmi zdlouhavá, jelikož existuje obrovské množství kombinací znaků (tzn. dokud není nalezeno platné heslo, postupně se dle zadaných pravidel generují nová a nová hesla.
6.5.1 Ochrana před útoky na přihlašovací formulář Aby automatizované nástroje zjistili, zda bylo přihlášení úspěšné, sledují chybové kódy vracené napadeným web serverem. Nejbezpečnější je zajistit, aby jakákoli chyba nebo neočekávaný požadavek generovaly namísto řady chyb typu 400 hlavičku HTTP 200 OK. Pro útočníka bude těžší rozlišit mezi úspěšným a neúspěšným pokusem o přihlášení.
Bezpečnostní politika
49
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Důležité opatření pro zastavení automatizovaných brute force útoků je doplnění přihlašovacího formuláře o náhodný obsah. Uživatel je totiž na rozdíl od automatického nástroje schopen tento obsah přepsat do formulářového pole. Nejlepším způsobem je zobrazení náhodného řetězce znaků ve formě obrázku GIF, JPG nebo PNG. Při každém zobrazení by se měl použít náhodně vybraný font a jeho barva. Na stránkách s tímto typem zabezpečení ve většině případů automatizované nástroje neuspějí.
Obrázek 3: Příklad náhodného řetězce ve formuláři
6.6 Google hacking Google hacking je termín používaný pro nalezení napadnutelné oběti a citlivých dat přes internetový vyhledávač. Google Hacking Database (GHDB) je databáze s dotazy, které na vašem webu odhalí citlivá data. Přestože google blokuje některé známější dotazy používané pro Google hacking, nic nezastaví hackera před procházením vašich stránek a spouštěním dotazů z Google Hacking Databáze přímo na prohledávaný obsah. Google Hacking Databáze se nachází na http://johnny.ihackstuff.com. Informace, které rozpoznají dotazy z Google Hacking Databáze: • • • • • •
Rozbory a zprávy o zabezpečení serveru Chybová hlášení, která obsahují až mnoho užitečných informací Soubory s hesly Citlivé adresáře Stránky pro přihlášení do aplikace Stránky, které obsahují síťová a zneužitelná data (např. logy z firewallu)
6.6.1 Ochrana před útoky typu Google hacking Odstraňte veškeré stránky nalezené pomocí dotazů Google hacking
50
Bezpečnostní politika
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
7 Vytvoření bezpečnostní politiky sítě Každá síť by měla mít svoje přesně stanovená pravidla tj. bezpečnostní politiku. Bezpečnostní politika je specifická pro každou organizaci nebo domácnost. Základem k jejímu určení je odhad rizik na aktivech a pravděpodobných hrozbách. Úspěchem bezpečnostní politiky je nejen její kvalitní naplánování a vytvoření, především však její realizace a prosazování. [1] Bezpečnostní politiku tvoří řada komponent. V rámci bezpečnosti se setkáme s řadou pojmů jako: • •
• •
• •
•
identita: slouží k vzájemnému odlišení jednotlivých článků sítě např. počítač nebo uživatel (uživatelské jméno tj. login nebo IP adresa); autentizace: metoda sloužící k ověření, že entita, která udává svoji identitu, má na tuto identitu právo tj. že je článkem, za který se vydává (zajištěná pomocí hesla nebo jiného identifikačního prvku např. klíče); autentizace komunikace: metoda ověřující, že zpráva údajně odeslaná určitým článkem je skutečně tímto článkem odeslaná (forma digitálního podpisu); komunikační integrita: metoda zjišťující zda-li nedošlo při přenosu zprávy ke změně obsahu tj. jestli je přijatá zpráva identická se zprávou odeslanou (digitální podpis); soukromá komunikace: metoda umožňující skrytí obsahu zprávy před každým kromě příjemce (zajišťuje se pomocí šifrování); autorizace: mechanizmus rozhodování, zda-li systém povolí určité identitě přístup k specifickým datům a funkcím (zajištění pomocí operačního systému nebo speciálního programu); audit: umožňuje zapamatovat si jednotlivé transakce, které v rámci sítě proběhly a tak odhalit a případně odvrátit útok na sít.[1]
7.1 Základní přístup k vytvoření bezpečnostní politiky Rozhodnutí, jak zajistit bezpečnost počítačů v sítích, se má učinit ještě dříve, než na síť hacker zaútočí. Je všeobecně vymezeno několik následujících kroků: 1. stanovení základního bezpečnostního cíle a jeho specifik (tj. zda-li se má ochránit databáze jako taková a nebo spíše data uvnitř); 2. určení případných nebezpečí a útočníků (tj. ochrana dat před útokem zvenčí nebo i v rámci podniku či domácnosti); 3. zjištění pravděpodobnosti jednotlivých hrozeb (tj. v domácnostech je pravděpodobný útok zvenčí, v rámci podniku je spíše obava ze zaměstnanců – úmyslné či neúmyslné hrozby); 4. zajištění nejen účinné, ale také nákladově únosné obrany (náklady na odvrácení hrozby by neměly být vyšší než náklady na zotavení a obnovu); 5. vytvořený systém se musí neustále kontrolovat a zlepšovat.
Bezpečnostní politika
51
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
7.2 Hodnocení rizik Analýza rizik zajišťuje především co je třeba chránit, před čím a jak. Při rozhodování se má brát v potaz i finanční rozhodování. Při analýze musíme provést dva základní kroky: • identifikace aktiv; • identifikace hrozeb.
7.2.1 Identifikace aktiv Hlavními bezpečnostními cíly je zjištění dostupnosti, důvěrnosti a neporušenosti aktiv. Vytvoření seznamu všech problémových sekcí 1. Data (dokumenty, databáze a auditní záznamy) Chránit se mají všechna data. Ať se jedná o data pravidelně používaná, záložní kopie nebo již archivovaná. 2. Software (zdrojové i přeložené soubory, utility, operační systémy, komunikační programy atd.) Ochrana by měla být soustředěna nejen na vlastní vytvořené programy, ale také na programy využívané. 3. Hardware (nečekané selhání, chyby v návrhu a vliv prostředí, kde je zařízení provozováno) Cílem je ochrana fyzická (krádež) a elektronická (napěťové špičky). 4. Dokumentace (originály programů, hardware, systémy, místní procedury) I samotná bezpečnostní politika by se měla chránit před případným nežádoucím „přemístěním“. 5. Zásoby (magnetická média, barvicí pásky, formuláře).
7.2.2 Identifikace hrozeb Pro určení hrozby je důležité zjistit, jak může zasáhnout bezpečnostní cíle a jak se s ohledem na ni bránit. • Neautorizovaný přístup: je použití počítačového zdroje bez předchozího schválení např. použití účtu jiného uživatele. • Vyzrazení informací: a to jak souborů s hesly tak účty našich klientů. • Odepření služby: se může projevit jako zkomolení zprávy, zatoulaným paketem či nefunkčnost síťové komponenty. Důležité je ustanovit, jaké služby jsou pro funkci serveru nepostradatelné
7.3 Firewall 7.3.1 Sunbelt Kerio Personal Firewall • • •
Výrobce: Sunbelt Cílové doporučení: Soukromé osoby a malé firmy Web: http://www.kerio.cz
52
Bezpečnostní politika
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Byl speciálně navržen pro ochranu PC běžícího pod Windows 2000 a Windows XP, které je připojeno k Internetu pomocí DSL, kabelového připojení, vytáčeného připojení, ISDN, WiFi nebo satelitních modemů. Bezplatná verze je oproti placené chudší o systém prevence narušení počítače, filtrace obsahu, Syslog, a vzdálenou správu. Po instalaci nevyžaduje žádné další nastavování. Program je v českém jazyce.
7.3.2 Zone Alarm PRO • • •
Výrobce: Zone Alarm Cílové doporučení: Soukromé osoby a malé firmy Web: http://www.zonealarm.com
Zone Alarm společnosti ZoneLabs je jedním z nejlepších firewallů. Pro domácí použití je zdarma. Komerční verze nabízí zajímavosti mezi něž patří například detekce místa (světové polohy) útočníka a další. Jeho instalace a uvedení v činnost vyžaduje určité znalosti, avšak pro zkušenější uživatele není příliš složitý.
7.3.3 Jetico Personal Firewall • • •
Výrobce: Jetico Cílové doporučení: Soukromé osoby Web: http://www.jetico.com
Při každém přenosu je uživatel informován dialogovým oknem. Na základě analýzy se pak rozhodne, zda komunikaci povolí, či zakáže. Program je navržen, tak, aby byl co nejpřívětivější. To znamená, že si stačí vybrat z předdefinovaných bezpečnostních politik a ostatní starost nechat na firewallu. Mezi samozřejmosti již patří monitorování všech paketů, ale i činnost spyware či adware kódů. Jetico Personal Firewall nabízí celkem tři vrstvy ochrany: filtrování síťových paketů na nejnižší úrovni, filtrování aplikací a filtrování uživatelské aktivity.
7.4 Antiviry Antivirové společnosti (jejich přední světoví odborníci) pro vzájemnou informovanost vytvořily mezinárodní organizaci The Wildlist. Sdružuje více než 70 odborných společností z oblasti vývoje antivirové ochrany. Jejím cílem je monitorovat viry, které jsou takzvaně "v divočině", tedy volně v Internetu. Organizace vede evidenci těchto virů a poskytuje informace o jejich objevitelích, účincích či charakteru. Viry jsou většinou označovány podle toho, v jaké oblasti působí - W32 (pro platformu Windows), W97,
Bezpečnostní politika
53
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová X97 a O97 (pro Word, Excel a rodinu produktů Office), atd a dále jménem - příkladem může být označení W32/Sasser.A - někdy také například nazývaný I-Worm/Sasser. Informace o aktivních virech lze nalézt na stránkách organizace The WildList http://www.wildlist.org/WildList/RTWL.htm. [i] Hodnocení dle Virus Bulletin[o]: In the Wild File: viry, které se šíří volně mezi uživateli a napadají sobory či složky, patří sem i Word macroviry. In the Wild Boot: Viry napadající boot sektor, sem patří multi-partite viry. Polymorphic: Polymorfní viry Standard: Různé další viry a nákazy
7.4.1 Kaspersky AntiVirus • • •
Verze: 5.0.227 Výrobce: Kaspersky Labs. Web: http://www.kaspersky.com
Zatímco před lety byl Kaspersky AntiVirus neznámým produktem, dnes patří k nejuznávanějšímu antivirům na trhu. Pátá řada se konečně zbavila nemožně složitého a nepružně reagujícího grafického prostředí (především Control Center) a kromě toho klesly i nároky na paměť a vzrostla rychlost díky technologiím iChecker a iStream. První kontrola pevného disku tak trvá věčnost, ale všechny další mohou být až několikrát rychlejší (díky inteligentnímu spojení skeneru a kontroly integrity). Ovšem připojení streamu ke každému souboru na disku nemusí každého těšit. Jinak má tento antivirus velice kvalitní detekci, včetně spyware, adware atd.a širokou podporu komprimovaných formátů. [n] Hodnocení dle Virus Bulletin[o]: ItW: 100.00% ItW (o/a): 100.00% Macro: 100.00% Standard: 100.00% Polymorphic: 100.00%
7.4.2 Eset NOD32 Antivirus System 2.51.26 • • •
Verze: 2.51.26 Výrobce: Eset spol. s r.o. Web: http://www.eset.sk
Slovenský antivirus NOD32 se stal velice oblíbeným antivirem jednak díky výborným výsledkům v různých srovnávacích testech, ale i díky pozitivním ohlasům většiny uživatelů. Kvalitní detekci umocňuje špičková heuristická analýza se schopností 54
Bezpečnostní politika
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová emulace 32-bitového kódu. NOD32 tak má ty nejlepší předpoklady k odchytu vysokého procenta dosud neznámé havěti (popř. nových variant známé havěti). Těžko pochopitelná je navíc skutečnost, že NOD32 je nejrychlejším antivirem na trhu. Za "vnitřkem" produktu zaostává grafické rozhraní pro komunikaci s uživatelem. Nejednotné ovládání a vzhled jednotlivých částí kazí celkový dojem. V prostředí se zřejmě budou ztrácet začátečníci. [n] Hodnocení dle Virus Bulletin[o]: ItW: 100.00% ItW (o/a): 100.00% Macro: 100.00% Standard: 100.00% Polymorphic: 100.00%
7.4.3 Avira AntiVir PersonalEdition Classic 7.00.00.08 • • •
Verze: 7.00.00.08 Výrobce: Avira GmbH Web: http://www.free-av.de
Je zdarma pro domácí použití, má přehledné a jednoduché ovládání. Nevýhodou je že nemá žádný skener pošty a sporná je i volba "ignore" která při nalezení infekce dovolí spustit infikovaný soubor aniž je na to uživatel upozorněn. [n] Hodnocení dle Virus Bulletin[o]: ItW: 100.00% ItW (o/a): 100.00% Macro: 99.93% Standard: 100.00% Polymorphic: 97.50%
7.4.4 Grisoft AVG Anti-Virus 7.1.392 plus Firewall • • •
Verze: 7.1.392 Výrobce: Grisoft, s. r. o. Web: http://www.avg.cz
AVG je legendou minimálně na území ČR. Verze 7.1 s sebou přinesla i edici, která je dostupná spolu s osobním firewallem. V nastavení firewallu potěšilo automatické zálohování konfigurace před každou její změnou (např. při editaci / přidání pravidla). Ze začátku může trochu přeplácaně působit prostředí Control Centera. Možná by si taktéž zasloužilo režim pro běžné uživatele a profíky jako je tomu u on-demand skeneru. U firewallu je výhodou zálohování jednotlivých konfigurací v čase. [n] Bezpečnostní politika
55
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Hodnocení dle Virus Bulletin[o]: ItW: 100.00% ItW (o/a): 100.00% Macro: 100.00% Standard: 98.74% Polymorphic: 91.88%
7.4.5 Alwil avast! 4 home edition • • •
Verze: 4.7.817 Výrobce: ALWIL Software Web: http://www.avast.cz
Avast! je jednoznačným králem mezi antiviry, které lze používat zdarma v domácím prostředí. Z pohledu množství nabízených funkcí často překonává i komerční - placené antiviry. Po detailnějším průzkumu zaujal především obecný modul pro kontrolu pošty se širší podporou protokolů. Nezáleží přitom, jaký poštovní program uživatel používá. Další "třešničkou" je paketový skener, který spolehlivě likviduje škodlivou síťovou komunikaci vyprodukovanou červy jako Blaster, Sasser atd. Při likvidaci případné infekce jsou využívány dříve sesbírané informace o jednotlivých souborech, ale i kontrola pevného disku, která se spouští v momentě, kdy je případná havěť jen stěží aktivní. Záporem především z uživatelského pohledu je nepřítomnost "centrálního ovládacího pultu".[n] Hodnocení dle Virus Bulletin[o]: ItW: 100.00% ItW (o/a): 100.00% Macro: 99.56% Standard: 98.34% Polymorphic: 88.22%
7.4.6 Norman Virus Control • • •
Verze: 5.70.24 Výrobce: Norman Web: http://www.norman.com
Relativně méně známý, avšak kvalitní produkt, který v minulosti "spolknul" možná známější ThuderByte antivirus. Ač to nebylo na první pohled před samotnou instalací zřejmé, Norman Virus Control obsahuje i personální firewall. To je myslím významná změna na to, aby vznikl produkt typu "Norman Internet Security". I nestalo se tak a Norman pokračuje pod zkratkou NVC. Program má obtížné ovládání, není zde žádný
56
Bezpečnostní politika
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová "řídící pult" v podobě většího okna a slabou náhražkou je pouze kontextové menu, umístěné pod ikonou na liště. Výhrady vyvolává rovněž slabá integrace osobního firewallu do prostředí NVC. Silnou stránkou je každopádně technologie Sandbox, která dokáže odhalit vysoké procento neznámých virů (i Win32). [n] Hodnocení dle Virus Bulletin[o]: ItW: 99.90% ItW (o/a): 99.90% Macro: 100.00% Standard: 99.71% Polymorphic: 91.01%
7.5 Antispyware 7.5.1 Ad-Aware • •
Výrobce: Lavasoft Web: http://www.lavasoftusa.com/software/adaware.
Ad-Aware je program pro detekci a odstranění kódů pro špionáž ("datamining"), zobrazování obtěžující reklamy a dalších nepříjemných programů.
7.5.2 AVG Anti-Spyware • Výrobce: Girosoft • Web: http://www.grisoft.cz/ Jednoduchá instalace a bezobslužný provoz Vlastní ochrana na úrovni vrstvy jádra zaručuje neustálou ochranu automatické odstraňování škodlivého kódu
7.5.3 Spyware Terminator • •
Výrobce: Crawler, LLC Web: : http://www.spywareterminator.com/
Spyware Terminator je aplikací, která dokáže spyware a další pochybné a obtěžující kódy najít a zlikvidovat. Součástí je i "štít", který brání ve vykonání podezřelých operací. Jde tedy zároveň i o nástroj pro prevenci před průnikem malware.
7.5.4 Jiné (detekce, odhalovače hesel) Winsonar • •
Výrobce: Zancart Software, Web: http://digilander.libero.it/zancart/
Zajímavý program, který umožňuje sledovat spuštěné procesy v paměti a specializuje se na nové (dříve nespuštěné) procesy. Klade si za cíl pozastavit nově spouštěný proces a Bezpečnostní politika
57
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová požádat uživatele o odsouhlasení jeho spuštění. Taková funkce je velmi užitečná v případě, že se v systému objeví virus - ať už prostřednictvím e-mailové zprávy nebo jakkoliv jinak. Nejprve je pozastaven a následně jej může uživatel zastavit zcela a zabránit tak jeho funkcím a dalšímu šíření. KL-Detector • •
Výrobce: Yohanes Aristianto. Web: http://dewasoft.com/privacy/kldetector.htm
K detekci přítomnosti keyloggeru ve vašem systému slouží program KL-Detector. Použití takového programu je možné (i z důvodu jeho velikosti - 36KB) také v jiných počítačích - například v zaměstnání, ve škole - a jeho uživatel se jím může rychle ujistit, nedochází-li k "odposlouchávání" jeho hesla při vstupu do e-mailové schránky nebo odšifrovávání důležitých záznamů CompControl • •
Výrobce: FENERIS tech Web: http://www.feneris.com
CompControl dokáže zaznamenat a podat informace o aplikacích, které byly v systému Windows v konkrétní dobu spuštěny. Nástroj jde dokonce tak daleko, že pro něho není problémem zobrazit prováděnou činnost v operačním systému Windows minutu po minutě. Ukládá také informace o čase zapnutí a vypnutí PC a obsahuje algoritmus pro vyhledávání záznamech. Program by mohl být vhodný např. pro rodiče, kteří potřebují monitorovat činnost svých dětí na PC. Po instalaci a spuštění aplikace je zapotřebí pomocí dialogového okna zdarma stáhnout aktuální časový kód. CompControl je v češtině. [h] API Monitor • •
Výrobce: Rohitab Web: http://www.rohitab.com
Program API Monitor zobrazuje veškeré události a volání API v operačním systému. Lze jej využít pro detekci funkcí nových procesů. Pro práci s ním je třeba vyšší stupeň znalosti (úroveň programátorská). File Sharing Sentinel • •
58
Výrobce: Keith Torrence Web: http://www.akidthaine.com/.
Bezpečnostní politika
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Program pro zabránění sdílení souborů programy jako jsou Kazaa, Morpheus nebo Bearshare se nazývá File Sharing Sentinel. Active Ports • •
Výrobce: Smart line Web: http://www.ntutility.com/.
Active Ports je program, který zobrazuje, které TCP porty jsou používány kterými programy. Uživatel s dostatečnými znalostmi tak může detekovat trojské koně a podobné nebezpečné programy. Další scannery Scanner pro detekci otevřených portů je Local Port Scanner (http://www.snapfiles.com/php/download.php?id=102028). Programy z rodiny Popup Blockerů lze nalézt na stránce http://www.tusafe.com/nonags/popup.html. Program pracující podobně jako Firewall je také AnalogX Port Blocker (http://www.snapfiles.com/php/download.php?id=102708). [i] Free Internet Eraser Free Internet Eraser vymaže historii navštívených stránek a postará se i o další záznamy, ze kterých by se někdo cizí mohl dozvědět, co jste ve Windows vykonávali za činnost. [h] Hesla Ke kradení hesel se mimo jiné používají programy, které zaznamenávají aktivitu klávesnice - všechny stisknuté klávesy a jejich posloupnosti potom odesílají útočníkům. Některé z nich jsou: ksLogger - ke stažení na http://www.kellysoftware.com/asse ts/programs/ksLogger.zip, Private Eye na http://clik.to/privateeye, Start Spy k dispozici na http://www.ifrance.com/InTheNuts/StartSpy. XP Logon Password Logger • •
Výrobce: Blazing Tools Software Web: http://www.blazingtools.com/
Jedná se o utilitu, která obsahuje nízkoúrovňový ovladač klávesnice pro systémy Windows 2000 a XP. Instalaci do PC může provést jen uživatel s administrátorským oprávněním. Zadá-li uživatel svoje heslo do přihlašovacího dialogu, program zachytí
Bezpečnostní politika
59
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová všechna tato stisknutí kláves (včetně numerických) a uloží je do svého logu, kde jsou připraveny k zobrazení. Protože je tato verze freewarová, obsahuje několik omezení. Mezi ty hlavní patří například možnost zaznamenat hesla pouze 15 sekund po startu systému. Placený program - Keylogger
7.6 Bezpečnostní balíky Většina společností, které se zabývají vývojem zabezpečovacích produktů nabízí kromě jednotlivých produktů také souborné balíky, které obsahují kombinaci několika produktů. Výhodou je nižší cena oproti nákupu jednotlivých produktů a zároveň přehlednější uspořádání často v jednom centrálním ovládacím panelu. Uvedu zde jen ukázkové příklady několika nejvýznamnějších společností.
7.6.1 Norton 360 Verze: 12.0.0.94b Výrobce: Symantec Corp. Web: http://www.symantec.com
• • •
Komplexní automatizovaná ochrana prostřednictvím ověřených technologií Norton pro zabezpečení a vyladění počítače PLUS nová ochrana proti phishingu a automatizované zálohování. Obsahuje • • • • • • • •
Antivirová ochrana Ochrana proti spywaru Prověřování e-mailů Ochrana proti phishingu Ochrana identity online Ověřování webových serverů Ochrana pomocí brány firewall Zjišťování virových nástrojů
7.6.2 BitDefender 9 Internet Security Build 9 • • •
Verze: Build 9 Výrobce: SOFTWIN Web: http://www.bitdefender.com
BitDefender je nyní velice kvalitním balíkem nabízející antivirus, firewall i antispam. Má kvalitní generickou detekci, která umožňuje odchyt i většího množství dosud
60
Bezpečnostní politika
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová neznámé havěti, popř. variant známé. Bohužel je zde i jedna větší vada tohoto produktu a tou je opravdu nízký výkon (rychlost) při skenování souborů. Má přehledné a vzhledově příjemné prostředí, součástí je i osobní firewall a antispam, nedílnou součástí je i antispyware modul který má funkci blokování podezřelých operací v registrech a vytáčení cizích tel. čísel (modem). Neslabším článkem ovšem je velmi nízká rychlost skenování a nedořešené chování v případě aktivní hrozby -uživatel není upozorněn na nutný restart pro kompletní odstranění nebezpečných souborů. [n] Obsahuje Anti-Virus chrání před viry, červy a trojskými koni. Anti-Spyware chrání před spyware, adware, dialery a dalšími škodlivými programy. Anti-Spam chrání před nevyžádanými e-maily na úrovni klientské stanice. Firewall chrání před počítačovými hackery na úrovni klientské stanice.
• • • •
7.6.3 AVG Internet Security SBS Edition Verze: SBS Edition Výrobce: Girosoft Web: http://www.grisoft.cz/
• • •
Centrálně spravovaná ochrana stanic a serverů před viry, červy, trojskými koni, spyware, adware, spamy a jinými neoprávněnými přístupy do počítače. Ideální řešení pro malé společnosti. Program znamená zjednodušení administrátorské práce a snížení nákladů na zabezpečení. Nové verze programu, aktualizace a technická podpora jsou po celou dobu licenčního období zdarma. Internes Seucrity SBS Edition má zdokonalenou virovou detekci, založenou na lepší heuristice a testování datových toků NTFS a automatické přepínání profilu firewallu pro jednoduché ovládání a větší bezpečnost. Obsahuje • • • • • •
Anti-Virus chrání před viry, červy a trojskými koni. Anti-Spyware chrání před spyware, adware, dialery a dalšími škodlivými programy. Anti-Spam chrání před nevyžádanými e-maily na úrovni klientské stanice. Firewall chrání před počítačovými hackery na úrovni klientské stanice. Centrální řízení umožní vzdálenou správu a monitoring celé sítě, včetně nastavení klientských firewallů. Kompletní řešení pro stolní počítače, notebooky, souborové a poštovní servery.
Bezpečnostní politika
61
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
7.6.4 Kerio WinRoute Firewall Tento produkt přináší nové standardy z hlediska užitečnosti, bezpečnosti a kontroly přístupu uživatelů. Chrání firemní sítě před útoky zvenčí a před viry a brání uživatelům v přístupu na internetové stránky obsahující nevhodné materiály. Mezi klíčové vlastnosti patří antivirová kontrola zkoumající na vstupní bráně pečlivě veškerou HTTP a FTP komunikaci, bránění uživatelům v přístupu na nevhodné stránky pomocí filtrování URL stránek plně funkční protokoly VPN a VoIP a Active Directory zjednodušující správu uživatelů. Obsahuje • • • • • •
62
Síťový firewall VPN Server a VPN Client Antivirová kontrola Blokování přístupu na web Filtrování obsahu Podpora VoIP
Bezpečnostní politika
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
8 Případová studie A Zabezpečení osobního počítače připojeného k internetu 8.1 Charakteristika problému: Úkolem je zabezpečit osobní počítač pracující pod operačním systémem Microsoft Windows XP 2002 Service Pack 2, připojeného k internetu pomocí ADSL. Pro prohlížení webových stránek je používán Internet Explorer a Mozilla Firefox. Počítač patří rodině s malým dítětem. Je využíván oběma manželi k práci, ke které je částečně využíván internet. Z počítače je také zpravován bankovní účet. Ani jeden z manželů nemá velké znalosti v oblasti výpočetní techniky a preferují programy s jednodušším ovládáním.
8.2 Požadavky zabezpečení – charakteristika rizik: 1. Základním rizikem je nebezpečí útoku zvenčí. Kromě klasických problémů s viry, červy a trojskými koňmi zde hrozí odposlechnutí hesla k bankovnímu účtu a zcizení pracovních složek. 2. Vedlejším rizikem je neúmyslné poškození počítače dítětem.
8.3 Zabezpečení: 8.3.1 Fyzické zabezpečení: •
•
Přepěťová ochrana – je nutné použít přepěťovou ochranu na elektrické zásuvky ke kterým je počítač připojen. Náhlý výkyv v dodávkách el. energie může počítač vážně poškodit. Zálohování dat – je důležité bezpečně uchovávat instalační disky používaných programů a disky na kterých zálohujeme důležitá data (k tomu jsou nejlepší CDRW nebo DVD).
8.3.2 Bezpečné chování: • •
Uživatel by neměl otevírat nevyžádanou e-mailovou poštu a v žádném případě nevyžádané přílohy. Ty bývají hlavním zdrojem virové nákazy. Předtím, nežli uživatel stáhne nějaký program, měl by si prověřit jeho bezpečnost. Zjistit autora, firmu... a také zvážit, zda jej skutečně potřebuje. Stejně tak klikání
Zabezpečení osobního počítače
63
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
• •
na různé podezřelé odkazy typu (Try! It’s free!, $ Win million $…) k bezpečnému chování nepřispívá a radikálně zvyšuje nebezpečí ohrožení. Uživatel by dále neměl poskytovat důvěrné osobní informace, pouze je-li to nutné. Hesla, která uživatel používá by měla být různá a neměla by se vztahovat k uživateli (jako je rodná čísla, data narození či jména blízkých osob) a navíc by se neměla skládat ze slov. Ideální je kombinace náhodných písmen a číslic. Zároveň platí pravidlo čím delší, tím bezpečnější heslo je.
8.3.3 Programové vybavení Obecnou zásadou je nahrazení Internet Exploreru jiným prohlížečem, který není tak rizikový například Mozilla Firefox nebo Opera. Pokud uživatel trvá na IE je nutné často sledovat stránky Microsoftu a pravidelně stahovat nové updaty.
Varianta ZDARMA Díky široké nabídce kvalitních zabezpečovacích programů zdarma je pro soukromé uživatele ideální jejich kombinace a tím i zabezpečení počítače zdarma. Ale jak se říká, nic není zadarmo a tak namísto peněz zaplatí uživatel časem. Protože žádná firma nenabízí kompletní sortiment zdarma, musí být zabezpečení složeno z různých programů různých firem, zároveň verze zdarma nemají všechny funkce, které najdeme u placeného softwaru. V našem případě doporučuji rodině tuto kombinaci nástrojů: • •
• •
Sunbelt Kerio Personal Firewall – Jeho použití je snadné i pro začátečníky a je v českém jazyce AVG Anti-Virus Professional Edition Avast! 4 home edition Doporučuji použití dvou na sobě nezávislých antivirů pro kontrolu. Oba dva programy jsou velmi dobré a jejich použití není složité. Spyware Terminator – Jeho použití je snadné i pro začátečníka a je to kvalitní software. KL-Detector – Doporučuji použít pe přihlášením k bankovnímu účtu
PLACENÁ varianta Pokud by se uživatelé rozhodli pro určitou investici, doporučila bych komplexní balík AVG Internet Security Home Edition, jehož cena je 1260 Kč, v ceně je licence na 1 rok prodloužení o rok stojí zhruba 400 Kč. Existují také určité věrnostní slevy.
64
Zabezpečení osobního počítače
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová Výhodou je, že veškerá ochrana je provázána , ovládání je jednotné a programy jsou v češtině. Dále bych ovšem doporučila doplnění o další – kontrolní – antivirus, tentokráte už některou variantu zdarma, tedy Avast! 4Home Edition. A doporučila bych i použití programu
KL-Detector
stejně
jako
ve
Zabezpečení osobního počítače
variantě
zdarma.
65
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
9 Případová studie B Zabezpečení malé společnosti 9.1 Charakteristika problému: Nezisková společnost má 3 počítače připojené k internetu pomocí Wi-fi. Všechny počítače pracují pod operačním systémem Microsoft Windows XP, Service pack 2. K přístupu na internet používají Internet Explorer. Do budoucna jsou plánovány webové stránky a propojení jednotlivých počítačů. Předseda ovládá ze svého počítače i bankovní účet.
9.2 Požadavky zabezpečení – charakteristika rizik:¨ I v této variantě je základním rizikem nebezpečí útoku zvenčí. Kromě virového nebezpečí je zde nebezpečí odcizení či manipulace s citlivými dokumenty neziskové organizace stejně jako osobní informace o zaměstnancích, členech a přispěvatelích. Exituje zde také do budoucna nebezpečí proniknutí do lokální sítě a narušení webových stránek.
9.3 Zabezpečení: 9.3.1 Fyzické zabezpečení: Fyzické zabezpečení je stejné jako u osobního počítače. •
•
Přepěťová ochrana – je nutné použít přepěťovou ochranu na elektrické zásuvky ke kterým je počítač připojen. Náhlý výkyv v dodávkách el. energie může počítač vážně poškodit. Zálohování dat – je důležité bezpečně uchovávat instalační disky používaných programů a disky na kterých zálohujeme důležitá data (k tomu jsou nejlepší CDRW nebo DVD).
9.3.2 Bezpečné chování: Bezpečné chování platí bez výjimky pro soukromé osoby i pro obsluhy firemních počítačů. •
66
Uživatel by neměl otevírat nevyžádanou e-mailovou poštu a v žádném případě nevyžádané přílohy. Ty bývají hlavním zdrojem virové nákazy.
Zabezpečení malé společnosti
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová •
• •
Předtím, nežli uživatel stáhne nějaký program, měl by si prověřit jeho bezpečnost. Zjistit autora, firmu... a také zvážit, zda jej skutečně potřebuje. Stejně tak klikání na různé podezřelé odkazy typu (Try! It’s free!, $ Win million $…) k bezpečnému chování nepřispívá a radikálně zvyšuje nebezpečí ohrožení. Uživatel by dále neměl poskytovat důvěrné osobní informace, pouze je-li to nutné. Hesla, která uživatel používá by měla být různá a neměla by se vztahovat k uživateli (jako je rodná čísla, data narození či jména blízkých osob) a navíc by se neměla skládat ze slov. Ideální je kombinace náhodných písmen a číslic. Zároveň platí pravidlo čím delší, tím bezpečnější heslo je.
9.3.3 Prgramové vybavení Uživatel lokální sítě by měl využívat pouze bezpečná propojení k jiným počítačům. Namísto programů telnet, rlogin, rsh, rcp, ftp a poštovních klientů využívající protokoly pop3 a imap by měl používat program, které šifrují komunikaci, tedy programy založené na protokolu SSH (Secure Shell). Protokol SSH je implementován programem běžícím na serveru (sshd) a klientskými programy spolu s dalšími pomocnými programy. V současnosti existují dvě verze protokolu SSH; novější a bezpečnější verze 2.0 obsahuje také program sftp Pro použití na klientské stanici MS Windows jsou zdarma dostupné dvě implementace ssh klienta: PuTTY ke stažení na adrese http://www.chiark.greenend.org.uk/~sgtatham/putty/ TeraTerm ke stažení na adrese http://www.zip.com.au/~roca/ttssh.html Alternativou je například protokol Kerberos. Obecnou zásodou je nahrazení Internet Exploreru jiným prohlížečem, který není tak rizikový například Mozilla Firefox nebo Opera. Pokud uživatel trvá na IE je nutné často sledovat stránky Microsoftu a pravidelně stahovat nové updaty. Proto doporučiji namísto IE používat Firefox, který je jednoduchý na používání a exploreru podobný.
Varianta ZDARMA Pro komerční použití je k dispozici zdarma jen minimum kvalitních produktů. Proto bych nedoporučovala zajistit ochranu firmy freevarovými produkty. Navíc náklady spojené s programovým vybavením jsou klasickým nákladem a lze je odečíst z daní. Produkty které jsou zdarma bych doporučila pouze jako podpůrné řešení.
Zabezpečení malé společnosti
67
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová NEJDRAŽŠÍ varianta Nejdražším řešením je najmutí některé firmy, která zajišťuje zabezpečení počítačů a sítí. Taková firma navrhne společnosti namíru komplexní bezpečnostní program, či komplexní síť Na trhu je několik takových společností například: Trusted Network Solutions - http://www.tns.cz/ WebStep s. r. o http://www.webstep.net Toto řešení bych však doporučila větším společnostem, které mají větší vlastní síť s vlastním serverem.
OPTIMÁLNÍ varianta Společnosti bych doporučila kvalitní softwarový balík AVG Internet Security, který stojí s licencí na 1 rok pro 3 počítače 2775 Kč. Prodloužení této licence o rok stojí 925 Kč. Cena za prodloužení se pro věrné zákazníky postupně snižuje. Tento balík je k dispozici v češtině a je snadno ovladatelný. Tento balík bych doporučila doplnit dalším antivirovým programem. Z cenového hlediska ale stojí samotný antivirus téměř tolik kolik stojí celý balík. Přesto ale bych byla pro tuto další doplňkovou investici. Například Kaspersky Anti-Virus 6.0 v ceně 2 250,- pro tři počítače. Prodloužení o rok stojí 1575 Kč.
9.3.4 Zabezpečení webových stránek Problémy webových stránek spočívají téměř vždy v chybách v kódu. Proto bych doporučila svěřit tvorbu webových stránek zkušenému programátorovi nebo profesionální firmě. Před převzetím doporučuji zkontrolovat stránky pomocí skeneru na stránkách http://www.acunetix.cz/security-audit/ . Je možné stáhnout zkušební verzi programu, případně zažádat o bezplatný zkušební audit stránek. Zakoupení skeneru bych nedoporučovala vzhledem k předpokládanému rozsahu webových stránek. Tato možnost je spíše pro větší firmy, případně společnosti jejichž podnikatelská činnost se soustřeďuje právě na internetu (e-shopy)
68
Zabezpečení malé společnosti
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
10 Závěr Cílem této bakalářské práce bylo seznámení se s problematikou zabezpečení počítačů. Seznámila jsem se s historií počítačů s důrazem na jejich zabezpečení a s nejdůležitějšími pojmy v oblasti bezpečnosti. Další kapitola byla zaměřená na ohrožení pomocí virů a ostatní havěti. Seznámila jsem se v ní s různými typy virů i způsoby ochrany. V následující kapitole jsem se zaměřila na spam a spyware a v další kapitole jsem rozebrala jednotlivé hackerské techniky a útoky. V poslední teoretické kapitole jsem se zaměřila na ohrožení webových stránek a na ukázky jednotlivých technik. Nakonec jsem provedla dva návrhy zabezpečení jednak pro soukromý počítač jednak pro malou neziskovou organizaci a to z pohledu kvality i ceny produktů a doporučila jsem tu z mého hlediska nejadekvátnější. Tato oblast je velmi rozsáhlá a stále se obměňují různé hrozby ať už jsou to lepší nové viry či zkušenější hackeři. Stejně tak se stále vyvíjejí různé programy, které mají tomuto nebezpečí bránit. Avšak tím nejdůležitějším co může ohrozit a nebo ochránit počítač, je samotný uživatel. Sebelepší ochrana nepomůže uživateli, který nedbá varování a stáhne a otevře na počítači nebezpečný program. Stejně tak nejlepší virus nepřekoná rozumného uživatele, který kromě ochranného softwaru používá také zdravý rozum a nevystavuje svůj počítač zbytečným rizikům. A to je právě alfou i omegou zabezpečení počítače.
Závěr
69
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
11 Seznam použité literatury Knihy: [1] KLADER, Lars. Hacker proof: váš počítač, vaše síť a vaše připojení na Internet. Je to opravdu bezpečné? Brno: Unis, 1998. 648 s. ISBN 8086097153. [2] KUCHAŘ, Miloš. Bezpečná síť: jak zajistit bezpečnost vaší sítě. Praha: Grada, 1999. 91 s. ISNB 8071698865. [3] DOSTÁLEK, Libor. Velký průvodce protokoly TCP/IP: bezpečnost. Praha: Computer Press, 2003. 571 s. ISBN 807226849X. Články: [a] KOCAN, Marek. TCP/IP stokrát jinak, Connect, 2003, r. 08, č. 009, s. 08 [b] MORITZ, Ron a WEXLEROVÁ, Joanie. Bezpečnostní systémy nebojují na oddělené frontě, Computerworld, 2004, r. 15, č. 011, s. 17 [c] SNYDER, Joel, NEWMAN, David, THAYER, Rodney. Prevence může být lékem, Computerworld, 2004, r. 15, č. 017, s. 13. [d] RADCLIFFOVÁ, Deborah. Spyware: Špioni ve firmách i v domovech uživatelů, Computerworld, 2004, r. 15, č. 015, s. 17. [e] GREGOR, Pavel. Pozor na aplikace vydávající se za anti-spywarové nástroje! TechNet.cz, 2004. [f] VALÁŠEK, Michal. Spam a viry - smrtící symbióza, CHIP, 2003, r. 13, č. 010, s. 102. [g] ŠESTÁK, Pavel. Jak nasadit systém detekce průniků, Computerworld, 2004, r. 15, č. 004, s. 21. [h] SNYDER, Joel. SSL VPN brány, Computerworld, 2004, r. 15, č. 015, s. 13. [i] DOLEJŠ, Radan. Není zdaleka tak anonymní, jak si všichni myslí, Profit, 2004, r. 15, č. 023, s. 50. [j] LAU. Anonymizer II, Hospodářské noviny, 3.2. 2004 [k] HILL, Jurgen. USB: Flexibilní, ale rizikové, Computerworld, 2004, r. 15, č. 013, s. 23 [h] DVOŘÁK, Jakub. Užitečné aplikace pro každý den - díl 1 – 9. TechNet.cz, 2004. [j]
70
Literatua
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová LOHR, Václav. Jak zabezpečit domácího počítač (OS z rodiny Windows), 2004 [k] ANTHERS, Gary. Imunitní systém pro informační technologie, Computerworld, 2004, r. 15. č. 008. s- 24 [l] DOLEJŠ, Radan. Zkontrolujte počítač, Profit, 2004, r. 15, č. 016, s. 25 Použité elektronické zdroje: (všechny uvedené zdroje aktivní k 31.5.2007) http://www.snapfiles.com/freeware/freeware.html (sekce Security-Privacy http://www.snapfiles.com/freeware/categories/10/). http://www.anopress.cz http://www.google.com http://www.technet.cz http://www.lupa.cz/ http://www.zive.cz/slovnik/ [i] http://security.symantec.com http://test.bezpecnosti.cz http://www.wildlist.org/WildList http://www.viry.cz/ [n] www.virusbtn.com [o] http://www.acunetix.cz [p]
Literatua
71
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
12 Vysvětlivky i proxy server: Server v síti Internet, který funguje v této síti přesně jako cache na běžném počítači, samozřejmě s o mnoho řádů vyšší kapacitou. Proxy server má velkou kapacitu pro úschovu dat; informace z Internetu, které jdou "přes něj", uloží a pokud jsou žádány příště, pouze si na cílovém místě ověří, zda nebyly změněny a poslouží jimi z lokálních zásob. [i]
ii peer-to-peer: Způsob komunikace mezi dvěma síťovými zařízeními, které spolu operují na rovnocenné komunikační a řídicí úrovni[i] iii spamming: Masové zavalení jednoho zdroje hromadami elektronické pošty s nesmyslným obsahem. Často používané jako elektronická "pomsta" tomu uživateli, který se stane terčem útoku hackerů či jiné internetové komunity - takovýto uživatel pak musí trávit dlouhý čas tříděním a promazáváním své e-mailové schránky, ev. je tato schránka zcela zahlcena a přestane být funkční[i] iv SSL VPN: (Secure Socket Layer Virtual Private Network) gateway je nástroj poskytující bezpečný vzdálený přístup k aplikacím v cookie: Jedná se o malý, obvykle textový soubor, který vznikne komunikací mezi www serverem a browserem. Server při komunikaci s klientem (prostřednictvím browseru) vytvoří soubor s informacemi o klientovi; tyto informace pak vyšle zpět ke klientovi, který si je může (či nemusí) uložit na svém pevném disku a zpřístupnit je serveru pokaždé při dalším připojení a komunikačním toku. Cookie může obsahovat jednak užitečné informace pro "obě strany", jako je přihlašovací jméno a heslo nebo uživatelská nastavení; je ale možné, aby obsahoval i informace odhalující podrobně konfiguraci klientského počítače včetně údajů, které programy či dokonce jaká data jsou na něm nainstalována. I z tohoto důvodu lze u většinu prohlížečů (browserů) přijímání cookie zakázat. V drtivé většině případů jsou však cookie užitečnými pomocníky, kteří zkracují a zjednodušují komunikaci mezi klientem a serverem. [i] vi adresa:1. Číslo označující umístění objektu v paměti počítače. 2. Adresa účastníka počítačové sítě.[i] vii šifrování je postup vedoucí k takové změně podoby zdrojových dat, že je v ideálním případě nelze převést do původní podoby bez znalosti speciálního šifrovacího klíče. Používá se pro přenos tajných informací mezi dvěma stranami nebo pro uchování tajných informací na veřejně přístupném místě. [i] viii hašovací funkce: přiřazuje každému klíči nějaký číselný kód, který ukazuje buď přímo pozici klíče v databázi, nebo alespoň iniciální pozici pro dohledání jinou metodou. Nejjednodušší prakticky použitelné hašování je vlastně analogií papírové kartotéky, v níž jsou karty zařazeny do různých šuplíků podle začátečního písmene (nebo skupiny písmen). Při hledání v kartotéce se stanoví výsledek hašovací funkce na základě hledaného klíče (tedy jeho první písmeno nebo skupina písmen) a podle něj se otevře příslušná zásuvka. V zásuvce se pak uplatní sekvenční dohledání konkrétní karty (většinou již pouze podle abecedy). [i] ix digitální podpis (digital signature)Menší množství dat automaticky připojených ke zprávě, které provádí ověření totožnosti odesílatele a kóduje data pomocí veřejného kódovacího klíče. Příjemce musí tento klíč znát, aby mohl hlášení rozkódovat a porozumět mu. Pokud však zprávu odchytí kdokoli třetí (třeba během jejího přenosu obecně nekontrolovatelnou sítí Internet), tento klíč nezná a nemá šanci zprávu rozkódovat.. [i] x SSL: Protokol navrhovaný firmou Netscape Communications pro umožnění zašifrované, bezpečné a autentizované komunikace přes Internet. Nejčastěji se používá na webu, k tomuto účelu je zřízen URL začínající "https". [i] xi applet: V prvotním významu pouze zdrobnělina pro application (aplikace), který označovala menší, samostatné a jako doplňky šířené programy (např. Kalkulačku Windows či Poznámkový blok) dostává novou, i když zatím více teoretickou náplň v souvislosti s Internetem a Javou. Applet je (ne nutně úplně malý) program, který plní zcela konkrétní, spíše úzce specializovanou úlohu - může to být třeba řízení tisku, zobrazení bitmapového formátu, dekomprese, animace v okně atd. Applet je tak dán svou funkcí a dále vstupy a výstupy; v ideové představě by se pak aplikace měly skládat z appletů, přičemž uživatel si je naskládá podle potřeb. [i] xii Security Certificate: Soubor obsahující kód, který používá SSL protokol pro ustanovení bezpečného spojení po vzdálené síti (Internetu). Obsahuje informace o svém vlastníkovi, jedinečné sériové číslo, datum vydání, certifikační podpis či otisk atd [i] xiii URL: Internetový ekvivalent pro adresu - výraz, který jedinečným způsobem identifikuje soubor v celosvětové síti Internet. URL sestává ze jména protokolu (např. http:/), dále pak adresu stroje v Internetu, na kterém soubor sídlí (např. /www.cpress.cz) a dále pak jméno souboru s běžnou adresářovou strukturou, oddělenou pomocí unixových dopředných lomítek[i] xivSSL: Varianta HTTP protokolu, která je prosazovaná firmou Netscape pro bezpečné transakce. "Bezpečné", tj. ověřené URL by podle tohoto návrhu měly být označeny jako https (místo http, což je vyhrazeno pro "ostatní"); s těmito URL by měly být možné prováděné bezpečné transakce. Implicitní číslo portu HTTPS je 443. [i]
72
Vysvětlivky
Bezpečnost osobních počítačů a webových stránek Lucie Kamešová
xv AktiveX: Programátorské rozhraní a rozsáhlá sada technologií a nástrojů od firmy Microsoft, která má několik cílů. Jednak je jím propojení kancelářských aplikací a operačních systémů od Microsoftu s možnostmi Internetu a především World Wide Webu (WWW), jednak také aplikace "komponentového" systému, kdy si uživatel bude moci prakticky složit svou aplikaci s jednotlivých funkčních komponent. Obchodně je pak cílem ActiveXu snaha o maximálně silnou konkurenci jazyku Java - ActiveX je rovněž otevřený, víceplatformový, relativně štíhlý a programátorsky moderní. Výhodou ActiveXu je možnost využívání mnoha set existujících knihoven již vytvořených firmou Microsoft pro její kancelářské a operační systémy, nevýhodou pak to, že navazuje na již existující (a rychle zastarávající) technologie, na rozdíl od standardu Java, který je vybudován "na zelené louce"[i] xvi Java: Síťově orientovaný interpretovaný programovací jazyk vyvinutý firmou Sun Microsystems. Byl vyvinut pro používání v prostředí Internetu a umožňuje tvorbu malých programů zvaných applety, které je možné načíst z Internetu a okamžitě spouštět; obecně však lze v Javě vytvořit cokoli, od operačního systému po podnikový informační systém. Díky tomu, že je Java interpretovaný jazyk, může běžet na jakékoli platformě (tj. může být na tuto platformu portována velice rychle). Pomalost daná touto technologií by měla být vyvažována tím, že mikrokód interpretující Javu by měl být "zadrátován" jednak ve speciálních čipech, jednak (snad) i v budoucích verzí procesoru Pentium, a tím se dosáhne běžně rychlého chodu aplikací v Javě. Viz také Java Virtual Machine. Viz http://java.sun.com[i] xvii JavaScript: Odnož jazyka Java, vytvořená firmami Sun Microsystems a Netscape. Jedná se o snadno použitelný programovací prostředek, použitelný např. pro vytváření interaktivních webových formulářů a vůbec pro obousměrnou komunikaci s uživatelem. [i] xviii CSS nebo XSS = Cross Site Scripting -může se plést s kaskádovými styly (CSS).
Vysvětlivky
73
Příloha
Ceník k 1. 6. 2007 Všechny ceny jsou bez DPH Název produktu Firewall
Sunbelt Kerio Personal Firewall Zone Alarm PRO Jetico Personal Firewall
Antivirus
Kaspersky Anti-Virus 6.0 Eset NOD32 Antivirus System 2 Avira AntiVir PersonalEdition Classic 7 AVG Anti-Virus 7.1.392 plus Firewall AVG Anti-Virus Professional Edition Avast! 4 home edition Avast! 4 profesional edition Norman Virus Control
Antispyware Ad-Aware AVG Anti-Spyware Spyware Terminator Různé
Winsonar KL-Detector CompControl API Monitor File Sharing Sentinel Active Ports Free Internet Eraser XP Logon Password Logger Perfect Keylogger
Balíky
Norton 360 BitDefender Internet Security Build 10 AVG Internet Security SBS Edition AVG Internet Security Kerio WinRoute Firewall Zone Alarm Internet Security Suit McAfee Internet Security Suite 2007 * Pouze pro soukromé využití ** Omezená verze Zdroje : https://eshop.dataguard.cz2775.00 CZK http://www.officeplus.cz/
Verze Firmy zdarma * 1 licence 3 licence 1600,** 599,5865,** 1137,1137,5124,-
1 050,1 500,-
2 250,3 500,-
-
885,735,899,911,-
1950,1470,2397,1964,50
932-, 675,Zdarma
2796,1875,Zdarma
-
-
-
-
Freeware Freeware 213,213,Freeware Freeware Freeware Freeware Freeware 957,50 1850,1420,50 1680,X 1260,1422,1 540,-
1420,50 3370,8700,2775,3400,1422,2 200,-