Mendelova univerzita v Brně Provozně ekonomická fakulta
Využití penetračních testů k prověření zabezpečení podnikové sítě Bakalářská práce
Vedoucí práce: Ing. Jiří Balej
Martin Andrysík
Brno 2014
Rád bych touto cestou poděkoval Ing. Jiřímu Balejovi, vedoucímu mé bakalářské práce, za pomoc při jejím zpracování, dále pak rodině a přátelům za jejich podporu, v neposlední řadě pak panu Vaňkovi, správci testované sítě, za umožnění testování.
Čestné prohlášení Prohlašuji, že jsem tuto práci: Využití penetračních testů k prověření zabezpečení podnikové sítě vypracoval samostatně a veškeré použité prameny a informace jsou uvedeny v seznamu použité literatury. Souhlasím, aby moje práce byla zveřejněna v souladu s § 47b zákona č. 111/1998 Sb., o vysokých školách ve znění pozdějších předpisů, a v souladu s platnou Směrnicí o zveřejňování vysokoškolských závěrečných prací. Jsem si vědom, že se na moji práci vztahuje zákon č. 121/2000 Sb., autorský zákon, a že Mendelova univerzita v Brně má právo na uzavření licenční smlouvy a užití této práce jako školního díla podle § 60 odst. 1 Autorského zákona. Dále se zavazuji, že před sepsáním licenční smlouvy o využití díla jinou osobou (subjektem) si vyžádám písemné stanovisko univerzity o tom, že předmětná licenční smlouva není v rozporu s oprávněnými zájmy univerzity, a zavazuji se uhradit případný příspěvek na úhradu nákladů spojených se vznikem díla, a to až do jejich skutečné výše. V Brně dne 5. ledna 2015
_______________________________
Abstract Andrysík, M. Use of penetration testing to examine security of corporate network. Bachelor thesis. Brno: Mendel University, 2014. This thesis describes penetration testing and its use in testing real corporate network of small size. In the end there is suggested way to remove found vulnerabilities and financial evaluation. Keywords Penetration testing, ethical hacking, network security.
Abstrakt Andrysík, M. Využití penetračních testů k prověření zabezpečení podnikové sítě. Bakalářská práce. Brno: Mendelova univerzita v Brně, 2014. V této práci je popsána problematika penetračního testování a jeho využití při testování reálné firmy malého rozsahu. Na závěr je navržen postup odstranění zjištěných nedostatků a vyčíslení finančních nákladů. Klíčová slova Penetrační testování, etický hacking, bezpečnost sítí.
Obsah
9
Obsah 1
2
3
Úvod a cíl práce 1.1
Úvod....................................................................................................................................... 15
1.2
Cíl práce................................................................................................................................ 15
1.3
Použité pojmy .................................................................................................................... 15
Zabezpečení podnikových sítí
19
2.1
Firemní síť........................................................................................................................... 19
2.2
Typy firewallu .................................................................................................................... 20
2.3
Nejčastější hrozby ............................................................................................................ 20
Penetrační testování
22
3.1
Definice................................................................................................................................. 22
3.2
Rozdělení testů podle míry automatizace .............................................................. 22
3.3
Rozdělení testů podle úrovně znalostí o testovaném systému ...................... 22
3.4
Rozdělení testů podle pozice útočníka .................................................................... 23
3.5
Další dělení penetračních testů................................................................................... 23
3.6
Předpoklady penetračního testování ....................................................................... 23
3.7
Průběh penetračního testování .................................................................................. 25
3.7.1
Určování cíle a rozsahu testování .................................................................... 25
3.7.2
Získávání informací o testované síti ............................................................... 25
3.7.3
Testování zabezpečení ......................................................................................... 25
3.8
4
15
Testovací nástroje ............................................................................................................ 25
3.8.1
Informace o síti ....................................................................................................... 25
3.8.2
Nástroje pro prolomení hesel ............................................................................ 28
3.8.3
Odchytávání síťové komunikace ...................................................................... 30
3.8.4
Sada penetračních nástrojů Dsniff................................................................... 32
3.8.5
Kali linux .................................................................................................................... 37
3.8.6
Další možnosti testování bezpečnosti sítě.................................................... 38
Bezpečnostní audit podnikové sítě
39
10
Obsah
4.1
Příprava ................................................................................................................................ 39
4.2
Topologie sítě ..................................................................................................................... 39
4.3
Metodika testování .......................................................................................................... 41
4.4
Úvod k testování firemní sítě ....................................................................................... 41
4.5
Fyzické zabezpečení síťových prvků ........................................................................ 41
4.6
Nastavení zásad v systému Windows ....................................................................... 42
4.7
Nastavení sdílení v systému Windows ..................................................................... 45
4.8
Nastavení přístupových práv v systému Windows ............................................. 46
4.9
Kontrola aktualizací softwaru ..................................................................................... 46
4.10 Skenování portů na serverech 1 a 2 .......................................................................... 47 4.11 Kontrola síly hesel ............................................................................................................ 49 4.12 Arpspoofing ........................................................................................................................ 50 4.13 Dnsspoofing ........................................................................................................................ 52 4.14 Macof ..................................................................................................................................... 53 4.15 Urlsnarf ................................................................................................................................. 53 4.16 Vyčíslení celkových nákladů ........................................................................................ 54 5
Závěr
55
6
Literatura
57
Obsah
11
12
Seznam obrázků
Seznam obrázků Obr. 1
Schéma ARP Zdroj: Sanders, 2010
16
Obr. 2
Obecná topologie podnikové sítě malého rozsahu
19
Obr. 3
Grafické rozhraní Zenmap pro nástroj Nmap
26
Obr. 4
Příklad použití programu Friendly pinger v domácí síti
27
Obr. 5
Použití programu Softperfect Network scanner v domácí síti
28
Obr. 6 Porovnání nástrojů pro prolomení hesel Zdroj: Comparison of Features and Services Coverage, 2014
29
Obr. 7 Porovnání rychlosti nástrojů pro testování hesel Zdroj: Comparison of Features and Services Coverage, 2014
30
Obr. 8
Grafické rozhraní programu Wireshark
31
Obr. 9
ARP tabulka před arpspoofingem
32
Obr. 10
První část ARP útoku
33
Obr. 11
Druhá část ARP útoku
33
Obr. 12
Povolení packet forwardingu
33
Obr. 13
Povolení packet forwardingu
33
Obr. 14
ARP tabulka po arpspoofingu
34
Obr. 15
Zachycené jméno a heslo po úspěšném arpspoofingu
34
Obr. 16
Dnsspoofing
35
Obr. 17 Úspěšný podvrh webové stránky pomocí dnsspoofingu Zdroj: Sanders, 2010
36
Obr. 18
Pokus o zahlcení switche utilitou Macof
37
Obr. 19
Topologie lokální sítě testované firmy
40
Obr. 20
Nastavení zásad hesla v operačním systému Windows
42
Seznam obrázků
13
Obr. 21 Nastavení zásad uzamčení účtu v operačním systému Windows
43
Obr. 22
Navrhované nastavení politik pro zásady hesel
44
Obr. 23
Navrhované nastavení politik pro uzamčení účtů
44
Obr. 24
IP adresa výchozí brány
50
Obr. 25
ARP tabulka oběti před útokem
50
Obr. 26
Arpspoofing oběti
51
Obr. 27
Arpspoofing switche
51
Obr. 28
ARP tabulka oběti po útoku
51
Obr. 29
Detekována duplikátní IP adresa pro dvě různé MAC adresy
52
Obr. 30
Pokus o zahlcení switche nástrojem Macof
53
Obr. 31 Pomocí nástroje Urlsnarf jsme mohli sledovat, na jaké weby oběť přistupuje
54
14
Seznam tabulek
Seznam tabulek Tab. 1
Seznam otevřených portů na serveru 1
47
Tab. 2
Seznam otevřených portů na serveru 2
48
Úvod a cíl práce
15
1 Úvod a cíl práce 1.1
Úvod
V dnešní době strmě stoupá hodnota informací, ať už se jedná o osobní údaje, pracovní postupy, či podniková tajemství, jejichž cena může dosahovat i několika miliard korun. S rychlým rozvojem v oblasti informačních technologií jsou tato data pod čím dál větším ohrožením ze strany konkurence, osob živících se nelegálním získáváním a následným prodejem nebo jiným zneužitím dat, a v neposlední řadě i zaměstnanců dané společnosti. Proti těmto a jiným subjektům vyskytujícím se v našem okolí, reálném nebo virtuálním je potřeba se bránit. K tomu slouží řada zabezpečovacích prvků a mechanizmů, mezi kterými hraje hlavní roli firewall společně s antivirovým softwarem. Bohužel každý takový firewall může být prolomen a nikdy nemůžeme s jistotou tvrdit, že některý je na sto procent odolný vůči všem druhům útoků. I pokud je některý firewall tak kvalitní, že žádný ze známých útoků jím proniknout nedokáže, pořád hrozí nebezpečí, že s přístupem k novým poznatkům a technologiím přijde nový typ útoku, proti kterému již neodolá. Proto je třeba zabezpečení neustále testovat a zdokonalovat. A právě k tomuto účelu jsou ideální penetrační testy.
1.2
Cíl práce
Cílem této práce je poskytnout čtenáři náhled do problematiky penetračních testů a následně pomocí popsaných nástrojů otestovat zabezpečení firmy malého rozsahu. V závěru pak navrhnout způsob odstranění zjištěných problémů a provést finanční zhodnocení.
1.3
Použité pojmy
ARP (address resolution protocol) – Jedná se o protokol sloužící k dotazování na fyzickou adresu příslušící k adrese IP. Skládá se ze dvou kroků. První je ARP request, což je dotaz vyslán do celé lokální sítě pomocí broadcastu, kde tázající se zařízení vkládá svou IP adresu, MAC adresu a IP adresu, na kterou se dotazuje. Druhým krokem je odpověď, neboli ARP reply, ve které zařízení s hledanou IP adresou odešle tazateli svou IP a MAC adresu. Takto získané adresy si zařízení ukládají do tzv. ARP tabulek. Ty se dělí na statické a dynamické, podle toho, zda si je zařízení vytvářejí dynamicky sama, nebo jsou pevně vytvořeny správcem sítě.
16
Úvod a cíl práce
Obr. 1
Schéma ARP Zdroj: Sanders, 2010
DNS (domain name system) – Systém sloužící k překladu doménových jmen na IP adresy a naopak. DoS (denial of service) – Útok na webové stránky nebo aplikace, jehož cílem je výpadek cíle a jeho nedostupnost pro ostatní uživatele. Exploitace – Zneužití. Firewall – Sada bezpečnostních pravidel filtrujících komunikaci v síti. Hacking – Tento pojem je vhodné rozdělit na etický hacking a cracking. První zmíněná činnost označuje testování počítačového systému za účelem nalezení chyb a slabin, druhá pak jejich zneužití, obvykle pro osobní prospěch. Hub – Neboli rozbočovač, je síťový prvek přeposílající příchozí data na všechny porty. ICMP (internet control message protocol) – Protokol sloužící pro odesílání systémových zpráv, nejznámější z nich je ping, který se užívá k zjištění odezvy na cílové adrese.
Úvod a cíl práce
17
IP (internet protocol) adresa – Adresa počítače (nebo jiného zařízení) v síti, podle které router směruje pakety. Nejčastěji používané IP adresy jsou verze 4, ve formátu x.x.x.x, kde x označuje číslo v rozmezí 0-255. Modernější variantou jsou IP adresy verze 6, které jsou psány hexadecimálně. ISO/OSI – Je to referenční model popisující komunikaci v počítačových sítích v sedmi vrstvách. Komunikace mezi dvěma body v síti probíhá vždy na stejné vrstvě. Data putující z nejvyšší sedmé vrstvy se směrem k první vrstvě zapouzdřují a při cestě od první vrstvy k sedmé rozbalují. První vrstvu označujeme jako fyzickou, na ní jsou data ve formě napětí v kabelech. Druhou vrstvu nazýváme linková, blokům dat se zde říká rámce a šíří se pomocí přepínačů. Na této vrstvě se používají fyzické, neboli MAC adresy. Třetí, neboli síťová vrstva přeposílá data ve formě paketů. K tomu využívá směrovače. Adresuje se na ní pomocí IP adres. Čtvrtá vrstva se jmenuje transportní a jejím účelem je přenos dat pomocí protokolů TCP nebo UDP. Vrstvy 5 a 6 se nazývají relační a prezentační, první z nich má za cíl synchronizaci spojení, druhá pak převod dat z nebo do vrstvy sedmé, aplikační. Jak již vypovídá název, jde v této vrstvě o umožnění komunikace nejrůznějším počítačovým aplikacím. MAC (media access control) adresa – Adresa pro síťová zařízení používaná na druhé vrstvě modelu ISO/OSI. Je psaná hexadecimálně. MITM (man in the middle) – Neboli česky prostředník, je v kontextu počítačové bezpečnosti typ útoků, při kterých útočník odposlouchává komunikaci mezi dvěma body v síti, popřípadě ji pozměňuje. Může takto například odeslat uživateli falešný web internetového bankovnictví a získat tak údaje, které napadený uživatel použije pro přihlášení. Paket – Je blok dat přenášený po síti. Má zdrojovou a cílovou adresu. Port – Číslo od 1 do 65535, které při síťové komunikaci odlišuje jednotlivé aplikace. Proxy server – Hardware nebo aplikace figurující v roli prostředníka mezi klientem a serverem. Může být využit jako ochranný prvek pro kontrolu dat před jejich přijetím nebo jako nástroj pro podvržení falešných webových stránek útočníkem. Rack skříň – Speciálně konstruovaná skříň pro umístění síťových prvků jako jsou switche, routery a servery. Obvykle bývá uzamykatelná. Router – Neboli směrovač, je síťový prvek přeposílající pakety směrem k jejich cílové IP adrese, obvykle propojuje lokální síť s internetem. Snarfing – Odchytávání větších celků síťové komunikace, například souborů, mailů apod. Sniffing – Odchytávání paketů k analýze přeposílaných dat, popřípadě jejich zneužití. Spoofing – V kontextu počítačové bezpečnosti se jedná o vydávání se za jinou entitu. Tento pojem úzce souvisí s útoky typu man in the middle. Switch – Neboli přepínač, je síťový prvek propojující jednotlivá zařízení v místní síti.
18
Úvod a cíl práce
TCP (transimission control protocol) – Internetový protokol umožňující navázání spojení v transportní vrstvě modelu ISO/OSI za účelem přenosu dat. Navázání tohoto spojení se nazývá threeway handshake. VoIP (voice over IP) – Telefonování prostřednictvím internetu.
Zabezpečení podnikových sítí
19
2 Zabezpečení podnikových sítí Tato kapitola se bude věnovat obecnému úvodu do problematiky zabezpečení podnikových sítí malého až středního rozsahu.
2.1
Firemní síť
Firemní síť tvoří určité množství počítačů, serverů (popř. tiskáren a dalších zařízení) a síťových prvků. Základním kamenem bezpečnosti v takovéto síti je firewall, ten představuje sadu pravidel, kterými se musí řídit provoz v síti a filtruje nebezpečnou komunikaci tak, aby nedošlo k ohrožení pracovních stanic zaměstnanců a především firemních serverů. Příklad zapojení podnikové sítě je zobrazen na obrázku 2.
Obr. 2
Obecná topologie podnikové sítě malého rozsahu
20
2.2
Zabezpečení podnikových sítí
Typy firewallu
Základní rozdělení firewallů je na paketové filtry, stavové paketové filtry a aplikační brány. Paketové filtry Nejstarší typ firewallu pracující se sadou pravidel pro jednotlivé pakety. Filtruje se na základě čtyř typů pravidel: zdrojová adresa, cílová adresa a zdrojový a cílový port. Tento typ firewallu je nejrychlejší, ale má horší bezpečnost než ostatní typy. Stavové paketové filtry Zásadním rozdílem oproti paketovým filtrům je udržování informace o navázaných spojeních. To znamená, že přes filtrační pravidla musí procházet pouze pakety z nových spojení, mezitím co pakety z již navázaných spojení mohou projít firewallem bez jakéhokoliv zdržení. Tento typ firewallu představuje kompromis mezi rychlostí paketových filtrů a vysokým zabezpečením aplikačních bran. Aplikační brány Aplikační brány jsou nejpomalejší ze zmíněných typů firewallů. Je tomu tak proto, že vytvářejí dvě oddělená spojení na aplikační vrstvě modelu ISO/OSI. Toto oddělené spojení má za následek vysokou úroveň bezpečnosti. Tento typ firewallu už se díky své nedostačující rychlosti prakticky nepoužívá.
2.3
Nejčastější hrozby
Faktorů ohrožujících bezpečnost podnikových sítí je několik, většině z nich se dá ale velmi snadno předcházet, a to důsledným dodržováním bezpečného chování. Následující výčet není kompletním přehledem hrozeb, nýbrž výběrem těch nejběžnějších a nejčastěji zneužívaných. Neexistující ochrana Bohužel i v dnešní době se najde nemalé množství firem, které nepřikládají zabezpečení valný význam, a nejsou ochotny investovat prostředky do jakékoliv formy prevence, ať už se jedná o firewall, nebo dokonce antivirový software. Tyto systémy jsou pak samozřejmě zranitelné vůči nejrůznějším druhům útoků. Prvním krokem v takovémto případě je pak chybějící zabezpečení neprodleně začít používat. Neprovádění pravidelných aktualizací softwaru Pokud společnost bezpečnostní prvky využívá, ale neaktualizuje je (např. virová databáze u antivirového softwaru), je opět zranitelná. Útočníci totiž neustále přichází s novými formami napadání, je tedy nezbytné s nimi držet krok. Je důležité podotknout, že nestačí aktualizovat pouze bezpečnostní programy, nýbrž všechny, které jsou na počítačích ve firmě používány včetně doplňků v prohlížečích a záplat operačního systému. Pokud dojde k ukončení podpory ze strany výrobce softwaru, je nutné tento nahradit novou verzí, popř. vyhledat alternativu (příkladem budiž ukončení podpory operačního systému Windows XP, který byl hojně používán i v roce 2014). Nebezpečné chování zaměstnanců
Zabezpečení podnikových sítí
21
Pokud neopatrný zaměstnanec navštíví rizikovou stránku na internetu nebo například stáhne přílohu emailu zaslaného útočníkem, může nevědomky zabezpečení firemní sítě obejít a stát se tak původcem škod. Naštěstí dnešní antivirové programy jsou obvykle dost pokročilé na to, aby uživatele na nebezpečné chování upozornily. Důležité v tomto ohledu je i školení pracovníků ohledně bezpečného chování na internetu a na počítači celkově. Špatně nastavená práva zaměstnanců Další často opomíjená bezpečnostní hrozba je nesprávné nastavení politik a přístupových práv uživatelů v podnikové síti. Pokud není dodržováno striktní vymezení přístupu pouze autorizovaným uživatelům k cenným datům, může tato chyba být snadno zneužita zaměstnanci s nekalými úmysly. Sociální inženýrství Jedna z nejrozšířenějších hrozeb v dnešní době, proti které se velmi obtížně brání. Jedná se o využití sociálních dovedností za účelem získat z dané osoby hodnotnou informaci. Například při rozhovoru zjistit místo narození, což může být bezpečnostní otázka potřebná pro vyžádání „zapomenutého“ hesla. Bohužel neexistuje žádný spolehlivý prostředek na obranu proti takovéto manipulaci než prostá opatrnost zaměstnanců.
22
Penetrační testování
3 Penetrační testování 3.1
Definice
Penetrační test je metoda zhodnocení bezpečnosti počítačového systému, nebo sítě pomocí simulace útoku ze škodlivého zdroje (Cyber Security Center CERT-GOVMD, 2013).
3.2
Rozdělení testů podle míry automatizace
Selecký uvádí, že základní třídění penetračních testů se provádí podle míry automatizace testování a to následovně: Testy manuální Testy automatizované Testy semiautomatické Jako hlavní výhodu manuální testů spatřuje schopnost testera velmi efektivně interpretovat výsledky testů, a to i osobám bez bližší znalosti této oblasti. Jako hlavní nevýhody pak uvádí časovou a znalostní náročnost. Oproti tomu výsledky automatizovaných testů je podle něj těžší prezentovat v uživatelsky přívětivé formě, což je zde vynahrazeno výrazně nižší časovou náročností. Na závěr zmiňuje semiautomatické testy jako kompromis mezi výše zmíněnými formami a snahou o maximální využití výhod obou z nich (Selecký, 2012, s. 16).
3.3
Rozdělení testů podle úrovně znalostí o testovaném systému
Jako další uvádí Selecký dělení podle úrovně znalostí o testovaném systému a zmiňuje tyto tři kategorie: Black box testy White box testy Grey box testy Black box testy zde zmiňuje jako nejpoužívanější, jelikož simulují útočníka bez znalosti vnitřní struktury sítě či aplikace, odtud název black box. White box testy jsou pak jejich opakem. Simulovaný útočník zde má plné znalosti architektury a zdrojového kódu, a při testování probíhá analýza zdrojového kódu, který může být na základě těchto testů optimalizován. Podobně jako semiautomatické testování se grey box testy snaží o maximalizaci výhod black box a white box testů. Kombinují se zde znalosti systému (white box) a testy z pohledu útočníka (black box) (Selecký, 2012, s. 17).
Penetrační testování
3.4
23
Rozdělení testů podle pozice útočníka
Bezpečnost sítě můžeme testovat proti vnějším a vnitřním hrozbám, použité testy pro tyto varianty se dělí na: Externí Interní Externí testy simulují útoky ze sítě internet, obvykle se jedná o útoky s cílem poškodit firemní systémy, nebo vysadit z provozu webové stránky podniku (např. DoS útoky). Tyto testy jsou důležité především pro firmy, které jsou závislé na funkčnosti svých webových aplikací nebo na vysoké návštěvnosti svých internetových stránek. Každý úspěšný útok, který vyřadí tyto služby z provozu, pak má za následek ztrátu zisků úměrnou době, kterou zabere oprava napadených stránek do původního stavu. Sekundárním vlivem pak může být i ztráta důvěry zákazníků v bezpečnost služeb nabízených podnikem, a to obzvlášť pokud se týkají financí nebo cenných informací. Interní testy představují simulaci hrozeb ze strany útočníků s přístupem k lokální podnikové síti. Tyto útoky jsou méně časté nežli útoky z vnější sítě, ale jejich dopady mohou být mnohem vážnější pro poškozené podniky. Obvykle jsou původci těchto útoků samotní zaměstnanci dotyčné firmy, kteří se na její úkor chtějí obohatit, nebo pomstít za způsobenou křivdu (typicky výpověď). Jejich možnost přístupu do firemní sítě a k datům, která se na ní nacházejí, jim dává mnohem větší škálu možností oproti útočníkům ze sítě internet, kteří musí věnovat nepoměrné úsilí a prostředky k prolomení dobře nastaveného firewallu. Útočníci z interní sítě obvykle mají za cíl zisk hodnotných firemních nebo osobních dat spolupracovníků. Neméně nebezpečné ale mohou být i útoky za cílem kompletního vyřazení podnikových systémů.
3.5
Další dělení penetračních testů
Penetrační testy mohou být děleny také na destruktivní a nedestruktivní a oznámené a neoznámené. V naprosté většině případů je použité testování nedestruktivní, to znamená, že nalezené slabiny etický hacker nevyužije, aby způsobil opravdové poškození, a je oznámené správci firemní sítě a zaměstnancům.
3.6
Předpoklady penetračního testování
Penetrační testování je velice invazivní procedura a jeho provozování bez souhlasu testovaného podniku by bylo nelegální. Souhlas s napadením vlastní sítě je tím nejpodstatnějším rozdílem mezi white hat, neboli etickým hackingem, a black hat hackingem, který představuje obvykle útoky na zakázku nebo pro vlastní obohacení. Dalším rozdílem pak je samozřejmě zneužití nalezených bezpečnostních děr. Z těchto důvodů je potřeba, aby testovaná firma byla detailně seznámena s cílem a rozsahem testování a po obeznámení se všemi detaily poskytla souhlas k provedení penetračních testů ve stanoveném rozsahu. Pokud by testování pro-
24
Penetrační testování
běhlo bez tohoto souhlasu, došlo by k porušení § 230 zákona č. 40/2009 Sb., trestního zákoníku, který zní: Neoprávněný přístup k počítačovému systému a nosiči informací (1) Kdo překoná bezpečnostní opatření, a tím neoprávněně získá přístup k počítačovému systému nebo k jeho části, bude potrestán odnětím svobody až na jeden rok, zákazem činnosti nebo propadnutím věci nebo jiné majetkové hodnoty. (2) Kdo získá přístup k počítačovému systému nebo k nosiči informací a a) neoprávněně užije data uložená v počítačovém systému nebo na nosiči informací, b) data uložená v počítačovém systému nebo na nosiči informací neoprávněně vymaže nebo jinak zničí, poškodí, změní, potlačí, sníží jejich kvalitu nebo je učiní neupotřebitelnými, c) padělá nebo pozmění data uložená v počítačovém systému nebo na nosiči informací tak, aby byla považována za pravá nebo podle nich bylo jednáno tak, jako by to byla data pravá, bez ohledu na to, zda jsou tato data přímo čitelná a srozumitelná, nebo d) neoprávněně vloží data do počítačového systému nebo na nosič informací nebo učiní jiný zásah do programového nebo technického vybavení počítače nebo jiného technického zařízení pro zpracování dat, bude potrestán odnětím svobody až na dvě léta, zákazem činnosti nebo propadnutím věci nebo jiné majetkové hodnoty. (3) Odnětím svobody na šest měsíců až tři léta, zákazem činnosti nebo propadnutím věci nebo jiné majetkové hodnoty bude pachatel potrestán, spáchá-li čin uvedený v odstavci 1 nebo 2 a) v úmyslu způsobit jinému škodu nebo jinou újmu nebo získat sobě nebo jinému neoprávněný prospěch, nebo b) v úmyslu neoprávněně omezit funkčnost počítačového systému nebo jiného technického zařízení pro zpracování dat. (4) Odnětím svobody na jeden rok až pět let nebo peněžitým trestem bude pachatel potrestán, a) spáchá-li čin uvedený v odstavci 1 nebo 2 jako člen organizované skupiny, b) způsobí-li takovým činem značnou škodu, c) způsobí-li takovým činem vážnou poruchu v činnosti orgánu státní správy, územní samosprávy, soudu nebo jiného orgánu veřejné moci, d) získá-li takovým činem pro sebe nebo pro jiného značný prospěch, nebo e) způsobí-li takovým činem vážnou poruchu v činnosti právnické nebo fyzické osoby, která je podnikatelem. (5) Odnětím svobody na tři léta až osm let bude pachatel potrestán, a) způsobí-li činem uvedeným v odstavci 1 nebo 2 škodu velkého rozsahu, nebo b) získá-li takovým činem pro sebe nebo pro jiného prospěch velkého rozsahu.
Penetrační testování
3.7
25
Průběh penetračního testování
Penetrační testování sestává z několika kroků. Nejprve se určí cíl a rozsah testů, dále je potřeba získat co nejvíce informací o testované síti a nakonec probíhá simulace různých útoků s cílem nalezení slabin v zabezpečení sítě. 3.7.1
Určování cíle a rozsahu testování
První krok je důležitý pro určení následného průběhu testování. Firma, která si objedná testování má obvykle nějaké prioritní cíle, kterým pak tester věnuje větší pozornost. Určení cílů také snižuje finanční a časovou náročnost celého procesu. 3.7.2
Získávání informací o testované síti
Tento krok se liší podle zvoleného typu testování. Pokud testování probíhá metodou white box, tak to, že máme veškeré dostupné informace o síti je jedním z předpokladů testování touto metodou. Pokud testujeme metodou black box nebo gray box je tento krok velmi důležitý, neboť získané informace jsou klíčové pro samotné testování. Pod získáváním informací si můžeme představit vyhledávání veřejně dostupných údajů o firmě, jejích webových stránkách, apod., a také různé druhy skenování (skenování otevřených portů při externím testování, skenování provozu na lokální síti při interním testování). 3.7.3
Testování zabezpečení
V tomto kroku, který je jádrem celého testování, se pomocí určitých nástrojů a za využití informací z předchozí fáze snažíme dosáhnout cílů určených na začátku testování. Právě na základě těchto cílů se pak průběh testování výrazně liší, jelikož k různým cílům je zapotřebí různých metod a nástrojů.
3.8
Testovací nástroje
3.8.1
Informace o síti
Nmap Prvním nástrojem, který je určen pro skenování sítě, je Nmap (s grafickým rozhraním Zenmap). Tento program dovede identifikovat zařízení zapojená v síti, odhadnout jejich operační systém a vypsat seznam otevřených portů u daného zařízení včetně jména služby, která daný port používá. Testování probíhá tak, že uživatel zadá IP adresu cíle, popřípadě při skenování firemní sítě rozsah IP adres (pokud ho známe), a Nmap pak provede sken sítě a vrátí nám jeho výsledky. Nmap je volně dostupný nástroj.
26
Obr. 3
Penetrační testování
Grafické rozhraní Zenmap pro nástroj Nmap
Friendly pinger Alternativní variantou pro skenování sítě může být například program Friendly pinger. Stejně jako Nmap je volně dostupný, nabízí ale výrazně menší funkcionalitu. Jeho hlavním účelem je zmapovat aktivní zařízení v síti a možnost vytvořit grafickou topologii s vlastními poznámkami. Pokud k zařízením má uživatel potřebné oprávnění (jméno, heslo), může k nim přes tento nástroj i přistupovat.
Penetrační testování
Obr. 4
27
Příklad použití programu Friendly pinger v domácí síti
Softperfect Network scanner Softperfect Network scanner nabízí podobnou funkcionalitu jako výše zmíněný Friendly pinger. Opět umožňuje skenování lokální sítě s částečnou možností ovládání nalezených zařízení. Navíc podporuje práci se sdílenými místy v síti. Tento nástroj je stejně jako předchozí dva volně dostupný ke stažení.
28
Penetrační testování
Obr. 5
Použití programu Softperfect Network scanner v domácí síti
3.8.2
Nástroje pro prolomení hesel
Ncrack Ncrack je volně dostupná aplikace sloužící k testování síly hesel potřebných k přihlášení do cizího systému. Slabé heslo představuje velké bezpečnostní riziko z toho důvodu, že pokud útočník heslo prolomí, získá prakticky neomezený přístup k napadenému systému. Ncrack se používá pomocí příkazů v konzoli. Následující příkaz je příkladem použití aplikace. # ncrack 192.168.1.X -p 3389 -v -user admin –P hesla.txt Nejprve voláme aplikaci Ncrack a jako atributy zadáváme IP adresu cíle, testovaný port, přepínač -v, který ukazuje nalezená hesla v reálném čase, přepínač -user , za kterým následuje testované přihlašovací jméno a nakonec přepínač -P s cestou ke slovníku hesel. Právě slovník hesel je tou nejdůležitější součástí tohoto testu, jelikož na něm závisí šance na úspěch. Rychlým vyhledáváním hesla password list na internetu se dá najít kupříkladu seznam 1,493,677,782 hesel, který má velikost 15GB. Nejspolehlivější obranou proti prolomení hesla je používání hesla, které je dostatečně dlouhé, obsahuje kombinaci malých i velkých písmen a číslic, popř. pokud je to možné také speciální znak.
Penetrační testování
29
Medusa Alternativou aplikace Ncrack je například Medusa, která je rychlejší a zvládá útok na podstatně více služeb (22 oproti 7 u Ncracku). Její použití může vypadat následovně. # medusa -h 192.168.1.X -u admin -P hesla.txt -e ns –M ssh Jak lze vidět na tomto příkladu, použití je velmi podobné jako u Ncracku, zajímavým rozdílem může být alespoň přepínač -e ns, který zajistí, aby se prověřilo i prázdné heslo a heslo shodné s přihlašovacím jménem, typicky admin:admin. Hydra Třetím nástrojem pro prolamování hesel je Hydra. V době psaní tohoto textu se jednalo z uvedené trojice o jediný nástroj se stále aktivní podporou. Zároveň v jeho prospěch hovoří i nejvyšší rychlost a nejrozšířenější možnosti oproti předchozím dvěma aplikacím. Použití je opět podobné. # hydra -l admin –P hesla.txt rdp://192.168.56.X
Obr. 6 Porovnání nástrojů pro prolomení hesel Zdroj: Comparison of Features and Services Coverage, 2014
Z obr. 6 jde vidět rozdíl v podpoře uvedených nástrojů, kde Hydra podporuje více než dvojnásobek protokolů oproti Meduse.
30
Penetrační testování
Obr. 7 Porovnání rychlosti nástrojů pro testování hesel Zdroj: Comparison of Features and Services Coverage, 2014
I rychlostně se jeví Hydra jako nejefektivnější aplikace. Jelikož je stejně jako Medusa a Ncrack volně dostupná ke stažení, je v době psaní tohoto textu jasnou volbou pro otestování síly hesel ve firemní síti. Fcrackzip Tento nástroj je z mírně odlišné kategorie než předchozí tři. Slouží také k prolamování hesel, avšak ne k přístupu do cizího systému, nýbrž k získání přístupu do zaheslovaných zipových archivů. Použití je opět podobné. # fcrackzip -u -c a -l 6 -p aaaaaa archiv.zip V uvedeném příkladu vidíme několik různých přepínačů. Hned první -u slouží k tomu, aby nám Fcrackzip nevrátil více hesel, nýbrž pouze jedno správné. Přepínač -c je v tomto případě nastaven na hodnotu a, kterou říkáme programu, ať zkouší pouze malá písmena abecedy. Dalším přepínačem je -l s hodnotou 6, tímto uvádíme, že víme (nebo tušíme), že heslo k archivu má 6 znaků. Posledním přepínačem použitým v tomto příkladu je -p s hodnotou aaaaaa, který slouží jako startovní pozice pro program, tj. odkud má začít s testováním. Je zřejmé, že procedura bude úspěšná pouze v případě, že se heslo k archivu archiv.zip skládá ze šesti malých písmen abecedy. Přepínače tedy použijeme pouze v případě, že tyto informace známe, a to z toho důvodu, abychom uspořili co nejvíce času. Stejně jako u předchozích nástrojů můžeme i zde použít slovník hesel, který si buďto sami vytvoříme, nebo získáme například z internetu. Jak už bylo zmíněno výše, proti všem pokusům o prolomení hesla je nejsnazší se bránit nepoužíváním slovníkových hesel a snažit se o co nejpestřejší kombinací znaků. 3.8.3
Odchytávání síťové komunikace
Wireshark Wireshark je nejpoužívanějším programem sloužícím ke sledování provozu na lokální síti. Dokáže rozbalit zapouzdřené pakety a přečíst v nich přenášené informace. Výrobce uvádí, že dokonce dokáže zpětně přehrát VoIP hovor zachycený
Penetrační testování
31
v komunikaci. Abychom mohli sledovat komunikaci v síti, musíme buď přepnout síťovou kartu do tzv. promiskuitního módu, kdy bude zachytávat všechny pakety, ne jen ty určené pro ni, nebo použít některý z nástrojů pro přesměrování komunikace, jako například Arpspoof, který bude zmíněn níže.
Obr. 8
Grafické rozhraní programu Wireshark
Zhruba v první třetině okna programu Wireshark vidíme zachycené pakety, rozdělené podle zdrojové adresy, cílové adresy a protokolu. V druhé třetině okna pak vidíme všechny detaily zachyceného paketu, zde také při napadené komunikaci můžeme objevit přihlašovací jména a hesla. V poslední části okna pak můžeme prohlížet surová data tak, jak vypadají v počítači. Tcpdump Alternativou k Wiresharku může být například Tcpdump, který funguje v příkazovém řádku. Jelikož textové informace v tomto rozsahu jsou těžké na ruční zpracování, je nutné využívat filtrování pomocí různých přepínačů, kterých Tcpdump nabízí nespočet.
32
3.8.4
Penetrační testování
Sada penetračních nástrojů Dsniff
Balíček Dsniff obsahuje množství nástrojů pro napadení firemní sítě zevnitř. Jedná se o volně dostupnou sadu nástrojů, jejímž autorem je Dug Song. Následující text má za cíl přiblížit čtenáři některé z nich. Arpspoof Jedním z nejefektivnějších způsobů tzv. sniffování komunikace na lokální síti je arpspoofing. Jedná se podvržení záznamů v ARP tabulkách za cílem přeposílání paketů mezi „obětí“ a switchem přes útočníkův počítač. Jinými slovy jde o to, aby se útočník mohl vydávat v síti za jiné zařízení. Nástroj Arpspoof funguje na tom principu, že do sítě vyšle zprávu, která by v lidské řeči zněla zhruba takto: „Switch se nachází na adrese xx-xx-xx-xx-xx-xx (adresa útočníka).“ Tím docílí toho, že počítač oběti si tuto adresu uloží do tabulky jako switch a veškerou komunikaci bude směrovat na ni. Aby bylo podvržení kompletní, musí útočník vyslat ještě jednu zprávu, která by zněla přibližně: „Uživatel (oběť) se nachází na adrese xx-xx-xx-xxxx-xx (opět adresa útočníka).“ Nyní začne switch směrovat veškerou komunikaci určenou pro počítač oběti útoku přes počítač útočníka. Útočníkovi už stačí pouze zapnout na svém zařízení přeposílání paketů, tzv. packet forwarding, a může nerušeně odchytávat veškerou komunikaci mezi obětí a switchem.
Obr. 9
ARP tabulka před arpspoofingem
Na obrázku 9 vidíme, jak vypadá ARP tabulka oběti před zahájením arpspoofingu. Fyzická adresa switche je zde a0-21-b7-ac-b7-82. Na tuto adresu směřuje síťová karta oběti veškerou komunikaci. Fyzická adresa počítače, ze kterého bude veden útok je d4-3d-7e-dd-57-a8.
Penetrační testování
Obr. 10
33
První část ARP útoku
Na obrázku 10 vidíme, jak útočník podvrhnul ARP tabulku oběti tak, aby v ní vystupoval jako switch.
Obr. 11
Druhá část ARP útoku
Nyní útočník podvrhl ARP tabulku switche, ve které teď vystupuje místo stanice oběti.
Obr. 12
Povolení packet forwardingu
Obr. 13
Povolení packet forwardingu
Celý útok je zakončen povolením packet forwardingu, nyní už putuje veškerá komunikace mezi switchem a obětí přes útočníkův počítač, který může pomocí dalších nástrojů sledovat veškerou činnost napadeného počítače v síti.
34
Obr. 14
Penetrační testování
ARP tabulka po arpspoofingu
Pokud si nyní na napadeném počítači zobrazíme ARP tabulku, uvidíme, že fyzická adresa switche je nyní stejná jako adresa útočníka, tj. d4-3d-7e-dd-57-a8.
Obr. 15
Zachycené jméno a heslo po úspěšném arpspoofingu
Na závěr se můžeme podívat, že ze zachycené komunikace jdou vyčíst opravdu důležitá data, jako v tomto případě jméno a heslo při přihlašování z počítače oběti pomocí protokolu http. Pokud by se jednalo o šifrované spojení, musely by být nasazeny další nástroje pro dešifraci, to už ale není předmětem této práce.
Penetrační testování
35
Ideální obranou v případě malé podnikové sítě je použití statických ARP tabulek namísto dynamických. Následkem tohoto by každé zařízení mělo v síti pevně přiřazenou adresu a všechny pokusy o podvrh při arpspoofingu by byly zahazovány. U větších sítí by toto řešení bylo ale velmi náročné, proto by bylo výhodnější nasadit specializovaný software, který by dokázal případné pokusy o podvrh fyzických adres v síti rozeznat a zablokovat. Dnsspoof Dalším nástrojem balíku Dsniff je Dnsspoof, tato aplikace navazuje na předchozí arpspoofing a umožňuje útočníkovi nahradit webovou stránku, kterou navštíví oběť útoku, svojí kopií.
Obr. 16
Dnsspoofing
36
Obr. 17
Penetrační testování
Úspěšný podvrh webové stránky pomocí dnsspoofingu Zdroj: Sanders, 2010
Dnsspoofing je jedním z nejnebezpečnějších útoků v interní síti, pokud je prováděn osobou s patřičnými dovednostmi. Obrana proti němu je velmi náročná. Jako možné řešení se jeví použití DNSSEC, tedy systému DNS rozšířeném o asymetrickou kryptografii. Pokud využíváme DNS svého poskytovatele internetu, který DNSSEC nepoužívá, můžeme využít například volně použitelné DNS servery služby Cz.nic. (ODVR, 2014) Filesnarf, Mailsnarf, Msgsnarf, Urlsnarf Tyto čtyři nástroje dokáží zachytit určité části síťové komunikace. První z nich, Filesnarf dokáže ukládat odeslané soubory, Mailsnarf e-maily v protokolech POP3 a SMTP, Msgsnarf zprávy z protokolů instantních messengerů a Urlsnarf zachycené URL adresy. Macof Účelem nástroje Macof je otestovat bezpečnost síťového přepínače tím způsobem, že se ho pokusí zahltit takovým množstvím falešných paketů, že rezignuje na svou funkci switche a přepne se do obyčejného hub módu, popřípadě přestane přeposílat komunikaci úplně. První zmíněný stav se nazývá failing-open, druhý failingclose.
Penetrační testování
Obr. 18
37
Pokus o zahlcení switche utilitou Macof
Tcpkill, Tcpnice První zmiňovaný nástroj dovede přerušit navázané TCP spojení, kde pomocí přepínače -1..9 specifikujeme sílu útoku. Tcpnice dokáže zahlcovat navázané TCP spojení nevyžádanými pakety, obvykle ICMP, a tím jej zpomalovat. Sshmitm Tento nástroj umožňuje vytvořit proxy server pro SSH komunikaci přesměrovanou nástrojem Dnsspoof. Dovede odchytávat hesla a měnit informace v interaktivním spojení. Webmitm Podobně jako Sshmitm, vytváří Webmitm proxy server, avšak na rozdíl od SSH odchytává HHTP a HTTPS komunikaci. Dokáže tak například odchytit přihlašovací údaje a vyplněná pole zašifrovaná pomocí SSL. Webspy Dovede za pomoci prohlížeče Netscape zobrazovat činnost oběti útoku na internetu. To znamená, že Netscape bude automaticky „surfovat“ na stejných stránkách jako oběť v reálném čase. Netscape musí být zapnutý před zahájením útoku. 3.8.5
Kali linux
Kali linux je volně dostupná linuxová distribuce speciálně navržená pro penetrační testování, jejímž předchůdcem byl Backtrack linux. Kali linux obsahuje předinstalované programy pro penetrační testování, z nichž velká část již byla popsána v této práci. Kali linux není potřeba instalovat jako operační systém na pevný disk počítače, podporuje totiž možnost tzv. live CD, to znamená, že se dá spustit přímo z disku CD, na kterém je její obraz, nebo dokonce z USB disku. Tato linuxová distribuce je stále aktivně vyvíjena, poslední aktualizace v době psaní tohoto textu proběhla na konci srpna 2014, jednalo se o verzi 1.0.9. Kali linux je nástroj vyvíjený profesionály v oblasti penetračního testování, kteří provozují i kurzy v tomto oboru, který nazývají Offensive security, s možností získání certifikátů po jejich absolvování.
38
3.8.6
Penetrační testování
Další možnosti testování bezpečnosti sítě
Kromě speciálně určených nástrojů pro skenování a exploitaci sítě, je spousta dalších možností jak analyzovat bezpečnost sítě. Zabezpečení hardwaru Softwarové zabezpečení sítě je bez debaty významná část celkové bezpečnosti, ale určitě není radno zapomínat na zabezpečení síťové infrastruktury po fyzické stránce. Mezi hrozící nebezpečí v případě nedostatečného zabezpečení hardwaru spadá poškození, krádež či změna nastavení zařízení. Klíčové prvky pro chod sítě by tedy měly být zabezpečeny ideálně uzamknutím ve speciálním boxu, nebo místnosti, ke které budou mít přístup pouze zodpovědné osoby jako je správce sítě či pověřený technik. Nastavení politik v operačním systému Windows Často přehlížená součást operačního systému Windows jsou skupinové politiky. Jedná se o určitá pravidla, která určují, jak se musí uživatelé chovat. Příkladem budiž politiky ohledně hesel. Zde lze nastavit maximální stáří hesla, požadavky na složitost a maximální počet pokusů na jeho zadání při přihlašování do systému. Nastavení služeb v operačním systému Windows V nastavení služeb systému Windows můžeme u jednotlivých služeb zvolit, zda se budou spouštět automaticky, ručně, nebo vůbec. Můžeme takto omezit bezpečnostní rizika. Nastavení sdílení v lokální síti Další z řady bezpečnostních opatření, ke kterým není třeba žádný specializovaný software. Je důležité nastavit, jaká místa v síti mohou být sdílena, a kam naopak cizí uživatel nesmí mít přístup. Nastavení přístupových práv Posledním nastavením v operačním systému Windows, které zde bude zmíněno, je nastavení přístupových práv k souborům a adresářům. Jedná se o prostou kontrolu, zda jsou uživatelům správně nastavena práva typu čtení a zápis pro práci se sdílenými soubory a složkami.
Bezpečnostní audit podnikové sítě
39
4 Bezpečnostní audit podnikové sítě 4.1
Příprava
Bezpečnostní audit v rámci této bakalářské práce byl proveden u menší firmy v Ostravě, která vzhledem k citlivosti dat nebude jmenována. Tato firma se zabývá technickými návrhy ve speciálních počítačových programech, které vytváří jak pro firmy v České republice, tak v zahraničí. V tomto oboru společnosti dbají především na doporučení a reference ostatních podniků, které tyto služby využívají, proto se firma neobává případných ušlých zisků vzešlých z útoků na jejich webové stránky. Vzhledem k tomuto důvodu bylo s testovanou firmou domluveno, že bezpečnostní audit se bude týkat interního testování, konkrétně z pozice zaměstnance daného podniku, který by měl zájem ve firemní síti napáchat škody.
4.2
Topologie sítě
Síť tohoto podniku tvoří router poskytovatele, přes který je připojena firemní síť do sítě internet a na něj je napojen 24 portový gigabitový switch TL-SG1024D. V tomto switchi je zapojeno deset počítačů, dva servery s daty a dvě tiskárny. Na místních počítačích je nainstalován operační systém Windows 8.1. Na serveru 1 se nacházejí zálohy pracovních souborů, jedná se převážně o technické výkresy a grafické modely. Na serveru 2 se nacházejí podklady pro aktuální firemní zakázky a rozpracované pracovní soubory k těmto zakázkám.
40
Obr. 19
Bezpečnostní audit podnikové sítě
Topologie lokální sítě testované firmy
Bezpečnostní audit podnikové sítě
4.3
41
Metodika testování
Testování bylo prováděno z notebooku zapojeného do místní sítě ethernetovým kabelem. K dispozici byl také jeden z firemních počítačů pro roli oběti útoků. Na testovacím zařízení byl spuštěn Kali linux z live USB. Provedené testování spadá do kategorie interních testů. Z hlediska znalostí útočníka o síti se jedná o grey box testy, což odpovídá zaměstnanci, který by za dobu svého zaměstnání v podniku určitě měl alespoň částečný přehled o lokální síti. Navržený postup testování byl následovný: prvním krokem bude kontrola fyzického zabezpečení důležitých síťových prvků, dále kontrola nastavení politik, sdílení a přístupových práv v operačním systému Windows. Následovat bude kontrola aktualizací softwaru se zaměřením na antivirový program a aktualizace systému Windows. Poté provedeme sken sítě pro kontrolu otevřených portů. Dalším krokem bude audit přístupových hesel k oběma datovým serverům a na dvě pracovní stanice. Následně se pokusíme o útoky typu man in the middle, konkrétně o arpspoofing, dnsspoofing, macof a urlsnarfing.
4.4
Úvod k testování firemní sítě
Veškeré provedené úkony, včetně skenování sítě a její napadení pomocí speciálně určených nástrojů, byly předem schváleny majitelem i síťovým administrátorem firmy. Nalezené slabiny nebyly zneužity k žádnému nekalému účelu, pouze pro účely této práce. Případné opakování těchto procedur bez souhlasu majitele testované sítě může mít za následek až odnětí svobody, viz kapitola 3.6.
4.5
Fyzické zabezpečení síťových prvků
Nejdůležitější síťové prvky, router a switch, jsou uzamčeny ve speciální, tzv. rack skříni. Jeden z datových serverů je uzamčen ve speciální místnosti, ale problém nastává u druhého, tento je totiž umístěn v průchozí chodbě, kde na něj není výhled z místnosti, ve které sedí zaměstnanci. Mohl by se tedy stát potenciálním terčem fyzicky vedeného útoku. Riziko: Vysoké. Při případném poškození serveru 2 by mohlo dojít ke ztrátě klíčových dat pro práci zaměstnanců firmy, a tím i k vysokým finančním ztrátám. Poškození v tomto případě může být i neúmyslné, jelikož server není nijak zabezpečen. Návrh řešení: Přemístit server 2 do místnosti k prvnímu serveru, popř. pokud je umístění na stávající pozici odůvodněné, umístit jej do vlastní rackové skříně. Vyčíslení nákladů: ~200Kč za 20m ethernetový kabel / ~2500Kč za serverovou rackovou skříň
42
4.6
Bezpečnostní audit podnikové sítě
Nastavení zásad v systému Windows
Z politik byly kontrolovány hlavně zásady zabezpečení účtů. Zde byly nalezeny nedostatky, jelikož nebyly nastaveny žádné zásady pro bezpečnost hesel. Útočník tedy mohl zkoušet přihlašování doslova tak dlouho, dokud se mu nepovedlo. Stejně tak nebyly nastaveny požadavky na složitost hesla, ani na dobu platnosti, po které musí uživatel heslo změnit.
Obr. 20
Nastavení zásad hesla v operačním systému Windows
Bezpečnostní audit podnikové sítě
Obr. 21
43
Nastavení zásad uzamčení účtu v operačním systému Windows
Riziko: Vysoké. V tomto případě nebyla nastavení politik zabezpečení účtů věnována žádná pozornost, což by mohlo mít za následek prolomení účtů zaměstnanců firmy. Návrh řešení: Změnit zásady účtů následovně: o Heslo musí splňovat požadavky na složitost – změnit na povoleno o Maximální stáří hesla – změnit na 90 dnů o Minimální délka hesla – změnit na 8 znaků o Minimální stáří hesla – změnit na 7 dnů o Vynutit použití historie hesel – změnit na 3 hesel zapamatováno o Prahová hodnota pro uzamčení účtu – změnit na 3 chybných pokusů o přihlášení o Doba uzamčení účtu – změnit na 30 min. o Vynulovat čítač pro uzamčení účtu po – změnit na 30 min.
44
Bezpečnostní audit podnikové sítě
Obr. 22
Navrhované nastavení politik pro zásady hesel
Obr. 23
Navrhované nastavení politik pro uzamčení účtů
Bezpečnostní audit podnikové sítě
45
Vyčíslení nákladů: 0Kč Nastavení požadavků na bezpečnost hesel znamená, že heslo musí obsahovat znaky v alespoň třech kategoriích z dostupných čtyř, kterými jsou malá písmena, velká písmena, číslice a znaky (například !, $, #, %). Zároveň nastavuje minimální délku hesla na šest znaků. Maximální stáří hesla je doba, po jejímž uplynutí si musí uživatelé změnit své přihlašovací heslo. Navržené nastavení je 90 dní, dalo by se samozřejmě i zpřísnit například na 30 nebo 60 dnů. Toto nastavení má svůj význam v případě, že by útočník nějakým způsobem získal heslo oběti, pak by jej totiž nemohl využívat napořád, nýbrž jen do doby, než bude změněno. Minimální délka hesla se obecně ponechává na šesti znacích, ale jak jde dopředu vývoj nástrojů pro prolamování hesel, je potřeba hesla prodloužit. Toto nastavení s sebou nese ještě další výhodu, a to, že šestimístná hesla jsou jedny z nejčastějších, tedy pokud zvolíme délku jinou a útočník nastaví délku 6 jako parametr prolamovacího nástroje, tak se mu útok nezdaří. Minimální stáří hesla je doba, po kterou musí uživatelé heslo používat, než jej mohou znovu změnit. Toto nastavení úzce souvisí s další zmíněnou zásadou, ta by totiž bez minimálního stáří hesla prakticky postrádala význam, jelikož by se dala snadno obejít. Vynutit použití historie hesel znamená, že uživatel při změně hesla nemůže znovu použít stejné heslo, jako jedno z předchozích tří. Díky nastavenému minimálnímu stáří hesla se pak nedá historie pročistit několikanásobnou změnou hesla. Prahová hodnota pro uzamčení účtu nastavená na 3 pokusy s intervalem uzamčení 30 minut je klíčová politika pro zabezpečení účtu před útoky na prolomení hesla hrubou silou, které těží především z obrovského množství pokusů o přihlášení za co nejkratší čas.
4.7
Nastavení sdílení v systému Windows
Sdílení na pracovních stanicích v testované firemní síti bylo nastaveno správně. Problém nastal u serveru 1, kde se nachází osobní složka každého zaměstnance určená pro zálohování souborů. Tyto složky jsou ale přístupné všem ostatním pracovníkům firmy, jedná se tedy o určité bezpečnostní riziko, kdy útočník může zcela bez problémů zcizit zálohy všech zaměstnanců, nebo je odstranit. Riziko: Střední. Jelikož se jedná „pouze“ o zálohy, není zde riziko kompletního odstranění rozpracované zakázky, avšak v případě potřeby použití zálohy, která by byla útočníkem odstraněna, by nastal problém, který by se nejspíše odrazil ve finanční ztrátě podniku. Návrh řešení: Sdílení na pracovních stanicích zaměstnanců je nastaveno v pořádku, stejně tak nebyl nalezen problém na serveru 2. U serveru 1 by doporučeným postupem bylo zpřístupnit každému zaměstnanci pouze jeho osobní složku. Vyčíslení nákladů: 0Kč
46
4.8
Bezpečnostní audit podnikové sítě
Nastavení přístupových práv v systému Windows
Při kontrole nastavení přístupových práv byl objeven problém v nedostačujícím rozdělení skupin uživatelů sítě. Jsou zde použity pouze dvě základní skupiny uživatelů, jedna pro všechny zaměstnance firmy a druhá pro síťového administrátora. Toto rozdělení je nedostačující z toho důvodu, že zde není přihlíženo k odlišným pozicím zaměstnanců. Z toho plyne, že sekretářka nebo účetní firmy mají přístup ke stejným složkám jako pracovníci firmy, kteří v nich uchovávají důležitá data týkající se zakázek podniku, mohou tedy při případném útoku tohoto nedopatření využít ve svůj prospěch. Riziko: Střední. Nepředpokládáme, že by účetní nebo sekretářka firmy měly úmysl manipulovat s pracovními soubory zaměstnanců, ale pro komplexní zabezpečení bychom měli vždy počítat s nejhorší variantou, je tedy na místě možnému nebezpečí předejít. Návrh řešení: Vytvořit dvě nové skupiny uživatelů pro zmíněné zaměstnankyně firmy a nastavit jim odlišná přístupová práva než ostatním pracovníkům, kteří pracující na technických výkresech a grafických modelech uložených na serveru 2. Vyčíslení nákladů: 0Kč
4.9
Kontrola aktualizací softwaru
Kontrola aktualizací softwaru probíhala na dvou pracovních stanicích a obou serverech. Nebylo při ní nalezeno žádné pochybení, jelikož antivirový software měl povolené pravidelné aktualizace jednou denně a operační systém měl nastavenou úlohu, při které jednou týdně prováděl instalaci všech aktualizací a záplat. Výjimku pak tvořily kritické záplaty, které se instalují ihned, jakmile je to možné. Co se týká technického softwaru, který je klíčový pro práci tohoto podniku, má firma zakoupenou na každé pracovní stanici roční licenci, ve které jsou zahrnuty i aktualizace. Tyto licence pak každý rok obnovuje. Co se týče serverů, možnou hrozbou by se mohlo jevit využívání operačního systému Windows server 2003 na serveru 1, jelikož v brzké době bude u tohoto operačního systému ukončena podpora, konkrétně v červenci 2015. Riziko: Nízké. Jediným drobným nedostatkem by se dal nazvat interval, ve kterém se aktualizuje operační systém, jelikož během týdne kdy nebudou provedeny drobné aktualizace, by teoreticky mohl nastat problém s funkčností některých služeb. Další riziko není aktuální, ale po ukončení podpory operačního systému Windows server 2003 v červenci 2015 bude potřeba aktualizovat na novější verzi. Návrh řešení: Zkrátit interval v plánovači úloh na 3 dny. Do července 2015 zakoupit pro server 1 licenci Windows server 2012. Vyčíslení nákladů: 0Kč / 16312Kč během příštího půl roku
Bezpečnostní audit podnikové sítě
47
4.10 Skenování portů na serverech 1 a 2 Porty na serverech 1 a 2 byly skenovány nástrojem Nmap. Na serveru 1 bylo nalezeno velké množství otevřených portů, které by mohly představovat potenciální bezpečnostní rizika. Seznam hrozeb u jednotlivých portů byl vytvořen pomocí webového nástroje Port Lookup (Port Lookup, 2014). Tab. 1
Seznam otevřených portů na serveru 1
Port 25
Protokol Služba tcp smtp
Verze Microsoft ESMTP
42
tcp
wins
53
tcp
domain
Microsoft Windows Wins Microsoft DNS
80
tcp
http
88
tcp
kerberos-sec
135
tcp
msrpc
139
tcp
netbios-ssn
Rizika Ajan, Antigen, Barok, BSE, Email Password Sender - EPS, EPS II, Gip, Gris, Happy99, Hpteam mail, Hybris, I love you, Kuang2, Magic Horse, MBT (Mail Bombing Trojan), Moscow Email trojan, Naebi, NewApt worm, ProMail trojan, Shtirlitz, Stealth, Stukach, Tapiras, Terminator, WinPC, WinSpy, Laocoon, Nimda
ADM worm, Lion, w32.dasher.b, trojan.esteems.c, li0n, MscanWorm, MuSka52 Microsoft IIS webserver 711 trojan (Seven Eleven), AckCmd, Back End, Back Orifice 2000 Plug-Ins, Cafeini, CGI Backdoor, Code Red, Executor, God Message, God Message 4 Creator, Hooker, IISworm, MTX, NCX, Nimda, Noob, Ramen, Reverse WWW Tunnel Backdoor, RingZero, RTB 666, Seeker, WAN Remote, Web Server CT, WebDownloader, BlueFire, Duddie, Intruzzo, Latinus, Lithium, MscanWorm, NerTe, Optix Lite, Optix Pro, Power, Remote Shell, Scalper, Screen Cutter, Slapper, God Message Creator Microsoft Windows pwsteal.likmet.a kerberos-sec Microsoft Windows W32.Blaster.Worm, RPC W32/Lovsan.worm Chode, God Message worm, Msinit, Netlog, Network, Qaz,
48
Bezpečnostní audit podnikové sítě
Sadmind, SMB Relay, Fire HacKer, Nimda, Opaserv 389 445
tcp tcp
ldap microsoft-ds
464 593
tcp tcp
kpasswd5 ncacn_http
636 691
tcp tcp
tcpwrapped resvc
1026
tcp
msrpc
1027
tcp
ncacn_http
1043
tcp
msrpc
3268 3269 3389
tcp tcp tcp
ldap tcpwrapped microsoft-rdp
6001
tcp
ncacn_http
6002
tcp
ncacn_http
6004
tcp
ncacn_http
8081
tcp
http
Microsoft LDAP server Microsoft Windows 2003 microsoft-ds
Lioten, Randon, WORM_DELODER.A, W32/Deloder.A, W32.HLLW.Deloder, Sasser, w32.secefa.a, W32.ifbo.a, W32.spybot.ofn, W32.spybot.nps, W32.mytob.e, W32.spybot.khc, W32.mytob@mm, Trojan.Netdepix.b, Backdoor.rtkit.b, 32.Scane, W32.korgo.a, W32.hllw.lioten, Nimda
Microsoft Windows RPC over HTTP Microsoft Exchange routing server Microsoft Windows RPC
Microsoft Windows RPC over HTTP Microsoft Windows RPC Microsoft LDAP server
BDDT, Dark IRC, DataSpy Network X, Delta Remote Access, Dosh, Duddie, IRC Contact, Remote Explorer 2000, RUX The TIc.K ICKiller, Clandestine, DataSpy Network X, KiLo, UandMe Dosh
Microsoft Terminal Worm:Win32/Morto.A Service Microsoft Windows RPC over HTTP Microsoft Windows RPC over HTTP Microsoft Windows RPC over HTTP Microsoft IIS webserver W32.Bufei, trojan.danmec
Na serveru 2 byly otevřeny pouze čtyři porty, což je z hlediska zabezpečení mnohem lepší stav. Tab. 2
Port
Seznam otevřených portů na serveru 2
Protokol Služba
Verze
Rizika
Bezpečnostní audit podnikové sítě
135
tcp
msrpc
139
tcp
netbios-ssn
445
tcp
netbios-ssn
4343
tcp
http
49
Microsoft Windows RPC
W32.Blaster.Worm, W32/Lovsan.worm Chode, God Message worm, Msinit, Netlog, Network, Qaz, Sadmind, SMB Relay, Fire HacKer, Nimda, Opaserv Lioten, Randon, WORM_DELODER.A, W32/Deloder.A, W32.HLLW.Deloder, Sasser, w32.secefa.a, W32.ifbo.a, W32.spybot.ofn, W32.spybot.nps, W32.mytob.e, W32.spybot.khc, W32.mytob@mm, Trojan.Netdepix.b, Backdoor.rtkit.b, 32.Scane, W32.korgo.a, W32.hllw.lioten, Nimda
Apache SSL-only mode httpd
Riziko: Střední. Riziko napadení serveru je vyšší s každým otevřeným portem, avšak v kombinaci s kvalitním antivirovým programem, který dokáže vyfiltrovat škodlivá data, nemusí být bezpečnost serverů nutně narušena. Návrh řešení: Provést analýzu aplikací, které dané porty využívají. V případě, že nejsou potřebné pro chod serveru, porty uzavřít. Vyčíslení nákladů: 0Kč
4.11 Kontrola síly hesel Na testování hesel nebyly použity výše zmíněné nástroje, nýbrž bylo využito výhod grey box testování, jinými slovy, hesla nám byla poskytnuta správcem sítě. Testování probíhalo takovým způsobem, že se poskytnutá hesla otestovala oproti seznamu 64 miliónů hesel, který je volně ke stažení z internetu (CrackStation's Password Cracking Dictionary, 2014). Jelikož všechna použitá hesla splňují bezpečnostní zásady ohledně délky, nepoužívání slov ze slovníku a kombinace malých i velkých písmen a číslic, nebylo ani jedno heslo v tomto seznamu nalezeno. V tomto testu tedy nebyl nalezen žádný problém. Riziko: Nízké. Otestovaná hesla splňují standardy bezpečnosti. Spíše nežli prolomení hrubou silou, hrozí například jejich odcizení, pokud by si je zaměstnanec někam zapsal nebo pokud by se stal terčem sociálního inženýrství.
50
Bezpečnostní audit podnikové sítě
Návrh řešení: Hesla nikam nezapisovat, nesdělovat je třetím osobám. Vyčíslení nákladů: 0Kč
4.12 Arpspoofing Útoky typu man in the middle představují vysoké riziko pro uživatele lokální sítě. Mezi nejnebezpečnější z nich patří arpspoofing. Tento útok byl proveden zapojením notebooku s Kali linux do lokální sítě pomocí ethernetového kabelu, ze kterého byla následně podvržena fyzická adresa oběti a switche. Posledním krokem bylo zapnutí packet forwardingu na útočícím zařízení, po kterém jsme už mohli odchytávat veškerou komunikaci mezi switchem a počítačem oběti.
Obr. 24
IP adresa výchozí brány
Z obrázku 24 vidíme, že fyzická adresa oběti je 00-21-5a-75-ff-1b a výchozí brána se nachází na IP adresa 85.135.88.193.
Obr. 25
ARP tabulka oběti před útokem
Nyní se můžeme podívat, že před zahájením arpspoofingu, je fyzická adresa výchozí brány 00-0e-2e-a7-97-91.
Bezpečnostní audit podnikové sítě
Obr. 26
Arpspoofing oběti
Obr. 27
Arpspoofing switche
Obr. 28
ARP tabulka oběti po útoku
51
Jak lze vidět, podařilo se nám obelstít počítač oběti, který nás nyní považuje za výchozí bránu, stejně tak switch, který nám nyní přeposílá veškerou komunikaci určenou pro pracovní stanici oběti.
52
Bezpečnostní audit podnikové sítě
Obr. 29
Detekována duplikátní IP adresa pro dvě různé MAC adresy
Riziko: Vysoké. Tento typ útoku představuje velké nebezpečí, jelikož útočník takto získává přístup k celé komunikaci oběti na síti. Pomocí dalších nástrojů si z ní pak může vyfiltrovat cenné údaje jako například přihlašovací jména a hesla, platební údaje, emaily, komunikaci vedenou přes instantní messengery apod. Návrh řešení: Jelikož se u testovaného podniku jedná o síť malého rozsahu (10 počítačů, 2 servery a 2 tiskárny), je nejvhodnějším řešením nastavit každému zařízení v síti statickou ARP tabulku. Tím se znemožní podvržení záznamů o fyzických adresách. Vyčíslení nákladů: 0Kč
4.13 Dnsspoofing Při pokusu o dnsspoofing se nepovedlo docílit stoprocentního úspěchu, ale pouze částečného – tedy naslouchat dotazům na DNS server, ale bez odesílání falešných webových stránek. I tak by se dal tento útok označit za rizikový, jelikož samotné odposlouchávání činnosti na internetu může být pro útočníka hodnotné pro případné další útoky. Riziko: Vysoké. I přesto, že při testování sítě jsme nedosáhli správného výsledku, nedá se vyloučit, že zkušenější útočník by na našem místě uspěl, už jen proto, že obrana proti dnsspoofingu je z těch složitějších. Návrh řešení: V nastavení internetového připojení změnit preferovaný DNS server na 217.31.204.130 a alternativní DNS server na 193.29.206.206, což
Bezpečnostní audit podnikové sítě
53
jsou volně použitelné DNS servery podporující technologii DNSSEC provozované společností Cz.nic. Vyčíslení nákladů: 0Kč
4.14 Macof Dalším provedeným testem byl pokus o zahlcení switche nástrojem Macof za účelem jeho přepnutí do hub módu, kdy by přeposílal veškerou komunikaci na všechny uzly v síti, popřípadě komunikaci úplně ukončil. Tento test dopadl ze strany útočníka neúspěchem, neboť se switch ani opakovanými pokusy zahltit nepodařilo.
Obr. 30
Pokus o zahlcení switche nástrojem Macof
Riziko: Nízké. Návrh řešení: Nadále používat stejný switch. Vyčíslení nákladů: 0Kč
4.15 Urlsnarf Posledním provedeným testem byl urlsnarfing, tedy odchyt URL adres, na které během útoku oběť přistupovala. Tento test navazoval na odchycenou komunikaci nástrojem Arpspoof a stejně jako při arpspoofingu dopadl úspěšně pro útočníka, který mohl pohodlně sledovat, jaké webové stránky momentálně oběť navštěvuje.
54
Bezpečnostní audit podnikové sítě
Obr. 31
Pomocí nástroje Urlsnarf jsme mohli sledovat, na jaké weby oběť přistupuje
Riziko: Střední. Přestože samotné URL adresy nejsou vyloženě citlivými údaji, jdou z nich například zobrazit soukromé obrázky, které se oběti nahrávají do prohlížeče. Jedná se tedy o potenciální únik citlivých dat, která by mohla být zneužita. Návrh řešení: Tento útok navazuje na úspěšný odchyt komunikace nástrojem Arpspoof, obranou tedy zůstává použití statických ARP tabulek. Vyčíslení nákladů: 0Kč Stejně jako se nám v tomto testu povedlo úspěšně odchytávat URL adresy, mohli bychom použít další ze „snarfovacích“ nástrojů. V tomto stavu je tedy ohrožena prakticky veškerá činnost oběti, ať už se jedná o posílání mailů, souborů, či komunikaci přes instantní messengery.
4.16 Vyčíslení celkových nákladů Nástroje použité pro testování – 0Kč. Všechny použité nástroje jsou volně dostupné ke stažení. Fyzické zabezpečení hardwaru – 200Kč (levnější varianta) / 2500Kč (dražší varianta) Nastavení v systému Windows – 0Kč Aktualizace softwaru – 0Kč / 16312Kč (do července 2015) Zabezpečení na základě provedených skenů a útoků – 0Kč Celkové náklady na odstranění nalezených nedostatků – 200 až 18812Kč
Závěr
55
5 Závěr Téma této bakalářské práce jsem si zvolil z důvodu osobního zájmu o problematiku bezpečnosti počítačových sítí, abych získal praktický náhled do této oblasti. Jedním z nejobtížnějších kroků se ukázal být výběr firmy, u které by bylo možno provést bezpečnostní audit podnikové sítě, a to z toho důvodu, že se jedná o velice invazivní proceduru, při které může získat tester citlivé informace jak technického rázu (slabiny v zabezpečení sítě, hesla, atd.), tak i osobního, pokud se mu povede při testování zachytit například emailovou komunikaci. Dalším podstatným krokem bylo stanovení povoleného typu a rozsahu testování. Zde byl přístup auditovaného podniku velmi vstřícný a povolil interní testování, které je mnohem invazivnější, nežli testování externí, ale obvykle přináší mnohem zajímavější výsledky. V první části této práce jsem se seznámil s typickým zabezpečením a nejčastějšími hrozbami u podnikových sítí malého rozsahu, dále pak s problematikou penetračního testování a jeho rozdělením podle různých faktorů. Zohlednil jsem také právní stránku věci a upozornil na to, proč je důležité mít s penetračním testováním firemní sítě souhlas od pověřených osob. Dále jsem popsal tři základní kroky penetračního testování, a to určování cíle a rozsahu testů, získávání informací o síti a samotné testování bezpečnosti. Následoval popis dostupných testovacích nástrojů a jejich porovnání v různých kategoriích podle zaměření. Seznámil jsem se také s profesionální linuxovou distribucí speciálně určenou k provádění penetračních testů Kali linux, která obsahuje naprostou většinu testovacích nástrojů, a vybral ji z tohoto důvodu jako ideální volbu pro audit podnikové sítě. Samotné testování lokální sítě podniku pro mě bylo něčím úplně novým, ale o to poučnějším. Správce testované sítě nevěnoval dostatečnou pozornost nastavením v operačním systému Windows, a to jak v nastavení přístupových práv a sdílení souborů a složek v síti, tak u nastavení politik pro změnu hesla a neúspěšné pokusy o přihlášení. Kontrola používaného softwaru dopadla naopak velmi dobře, jelikož byl všechen na aktuální verzi a pravidelně aktualizován. Zde jsem pouze upozornil na blížící se konec podpory operačního systému Windows server 2003 a doporučil nákup licence nové verze během následujících šesti měsíců. Dále jsem provedl skenování portů na datových serverech firmy nástrojem Nmap a zmínil rizika spojená s otevřenými porty. Místo použití nástroje na prolomení hesel jsem si vyžádal od správce sítě hesla k několika počítačům a zkontroloval, zda se nacházejí v seznamu 64 miliónů hesel, který by jinak byl použit jako slovník pro tyto nástroje. Žádné z hesel ovšem nalezeno nebylo, takže jsem konstatoval jejich dostatečnou bezpečnost. Nejkritičtějším testem se ukázal být Arpspoofing, kde se mi podařilo bez problémů odchytávat síťovou komunikaci napadeného počítače a pomocí nástrojů Dnsspoof a Urlsnarf odchytávat URL adresy navštěvovaných webů. Stejným způsobem by mohl potenciální útočník odchytávat opravdu citlivé údaje jako přihlašovací jména a hesla, osobní zprávy a jiné. Vzhledem k velikosti testované sítě jsem navrhl jako řešení použití statických ARP tabulek,
56
Závěr
což by zabránilo podvržení fyzických adres v síti. Pokus o zahlcení switche a jeho přepnutí do hub módu nebyl úspěšný, jelikož používaný switch je dostatečně kvalitní a zvládá zpracovávat velké množství dat. Na závěr jsem vyčíslil celkové náklady na bezpečnostní opatření na částku 18812 korun, v případě, že by byla zakoupena rack skříň pro server 2 a licence operačního systému Windows server 2012 pro server 1. Tato práce bude poskytnuta testovanému podniku jako výstup bezpečnostního auditu a návrh na odstranění zjištěných nedostatků. Závěrem bych rád zmínil, že tato práce byla pro mě velmi přínosná, jelikož jsem si vyzkoušel penetrační testování v praxi a povedlo se mi úspěšně provést útoky typu man in the middle v reálné podnikové síti.
Literatura
57
6 Literatura Comparison of Features and Services Coverage. Thc.org [online]. 2012 [cit. 201501-04]. Dostupné z: https://www.thc.org/thchydra/network_password_cracker_comparison.html CrackStation's Password Cracking Dictionary. Crackstation.net [online]. 2014 [cit. 2015-01-04]. Dostupné z: https://crackstation.net/buy-crackstation-wordlistpassword-cracking-dictionary.htm Cyber Security Center CERT-GOV-MD. Penetration testing & Ethical Hacking [online prezentace]. 2013 [cit. 2014-05-18]. Dostupné z: http://www.slideshare.net/search/slideshow?searchfrom=header&q=penetr ation+testing ODVR. CZ.NIC. Nic.cz [online]. 2014 [cit. 2015-01-04]. Dostupné z: https://labs.nic.cz/en/odvr.html Port Lookup. Thedatalist.com [online]. 2014 [cit. 2015-01-04]. Dostupné z: http://lists.thedatalist.com/portlist/lookup.php SELECKÝ, Matúš. Penetrační testy a exploitace. 1. vyd. Brno: Computer Press, 2012, 303 s. ISBN 978-80-251-3752-9. Understanding Man-In-The-Middle Attacks: Part2: DNS Spoofing. SANDERS, CHRIS. Windowsecurity.com [online]. 2010 [cit. 2015-01-04]. Dostupné z: http://www.windowsecurity.com/articlestutorials/authentication_and_encryption/Understanding-Man-in-the-MiddleAttacks-ARP-Part2.html Zákon č. 40/2009 Sb., trestní zákoník. In: ASPI verze 2014 [právní informační systém]. Wolters Kluwer, ©2000-2014 [cit. 2015-01-04].