}w!"#$%&'()+,-./012345<ya

Podobné dokumenty
Základní principy obrany sítě II. Michal Kostěnec CESNET, z. s. p. o.

Problematika internetové bezpečnosti a obrany proti DDoS útokům. Ing. Tomáš Havlíček Produktový manažer

DoS útoky v síti CESNET2

Detekce volumetrických útoků a jejich mi4gace v ISP

Problematika internetové bezpečnosti a obrany proti DDoS útokům. Ing. Tomáš Havlíček Produktový manažer

Monitorování datových sítí: Dnes

SSL Secure Sockets Layer

metodický list č. 1 Internet protokol, návaznost na nižší vrstvy, směrování

Novinky ve FlowMon 6.x/FlowMon ADS 6.x

Analýza a zabezpečení počítačové sítě

Internet protokol, IP adresy, návaznost IP na nižší vrstvy

FlowGuard 2.0. Whitepaper

Firewally a iptables. Přednáška číslo 12

Kybernetické hrozby - existuje komplexní řešení?

Zabezpečení v síti IP

PB169 Operační systémy a sítě

Advanced IT infrastructure control: Do it better, safer, easier and cheaper. FlowMon ADS 3. Nová generace řešení pro analýzu provozu datové sítě

Flow monitoring a NBA

5. Směrování v počítačových sítích a směrovací protokoly

ISMS. Síťová bezpečnost. V Brně dne 7. a 14. listopadu 2013

Počítačové sítě pro V3.x Teoretická průprava II. Ing. František Kovařík

Provádí ochranu sítě před napadením (ochrana počítačů nestačí) Odděluje uživatele (prvek nespolehlivosti) od prvků ochrany

Budování sítě v datových centrech

Internet a zdroje. (ARP, routing) Mgr. Petr Jakubec. Katedra fyzikální chemie Univerzita Palackého v Olomouci Tř. 17. listopadu

1. Směrovače směrového protokolu směrovací tabulku 1.1 TTL

Jak ochráníte svoji síť v roce 2015? Michal Motyčka

FlowMon ADS 3. Nová generace řešení pro analýzu provozu datové sítě. Pavel Minařík

Flow Monitoring & NBA. Pavel Minařík

Bezpečnost sítí, Firewally, Wifi. Ing. Pavel Píše

Access Control Lists (ACL)

Bezpečnostní aspekty informačních a komunikačních systémů KS2

Analýza síťového provozu. Ing. Dominik Breitenbacher Mgr. Radim Janča

Telekomunikační sítě Protokolové modely

7. Aplikační vrstva. Aplikační vrstva. Počítačové sítě I. 1 (5) KST/IPS1. Studijní cíl. Představíme si funkci aplikační vrstvy a jednotlivé protokoly.

Představení Kerio Control

Přednáška 3. Opakovače,směrovače, mosty a síťové brány

Jak vybrat správný firewall. Martin Šimek Západočeská univerzita

GRE tunel APLIKA ˇ CNÍ P ˇ RÍRU ˇ CKA

X36PKO Úvod Protokolová rodina TCP/IP

Studentská unie ČVUT v Praze, klub Silicon Hill. 22. února Ondřej Caletka (SU ČVUT) IPv6 nové (ne)bezpečí? 22.

Technické aspekty zákona o kybernetické bezpečnosti

Jak se měří síťové toky? A k čemu to je? Martin Žádník

Fakulta elektrotechniky a informatiky Vysoká škola báňská - Technická univerzita Ostrava. Cvičení 5 POČÍTAČOVÁ OBRANA A ÚTOK - POU

VPN - Virtual private networks

Obsah. Úvod 13. Věnování 11 Poděkování 11

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

FlowMon Monitoring IP provozu

Protokoly: IP, ARP, RARP, ICMP, IGMP, OSPF

Routování směrovač. směrovač

MPLS MPLS. Label. Switching) Michal Petřík -

Téma bakalářských a diplomových prací 2014/2015 řešených při

Semestrální projekt do předmětu SPS

Projekt VRF LITE. Jiří Otisk, Filip Frank

4. Síťová vrstva. Síťová vrstva. Počítačové sítě I. 1 (6) KST/IPS1. Studijní cíl. Představíme si funkci síťové vrstvy a jednotlivé protokoly.

Bezpečnost vzdáleného přístupu. Jan Kubr

MPLS Penultimate Hop Popping

Firewall, mac filtering, address filtering, port forwarding, dmz. Ondřej Vojtíšek, Jakub Niedermertl

Bezpečnostní monitoring a detekce anomálií, případová studie botnet Chuck Norris. Petr Špringl springl@invea.cz

Protokol TELNET. Schéma funkčních modulů komunikace protokolem TELNET. Telnet klient. login shell. Telnet server TCP/IP.

Systémy pro sběr a přenos dat

Identifikátor materiálu: ICT-3-03

Směrování. static routing statické Při statickém směrování administrátor manuálně vloží směrovací informace do směrovací tabulky.

Evoluce RTBH v NIX.CZ. Petr Jiran NIX.CZ IT17 Praha

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Distribuované systémy a počítačové sítě

Správa sítí. RNDr. Ing. Vladimir Smotlacha, Ph.D.

FlowMon ADS praktické aplikace a případové studie. Pavel Minařík INVEA-TECH, a.s.

Služba ComSource Hybrid AntiDDoS aneb Pračka v Cloudu ISPA Forum 2015

Obsah. Část I Základy bezpečnosti...9 Kapitola 1 Základy obvodového zabezpečení Kapitola 2 Filtrování paketů...27

Co znamená IPv6 pro podnikovou informatiku.

DDoS útoky a jak se jim bránit

Technická specifikace zařízení

Zajištění kvality služby (QoS) v operačním systému Windows

6. Transportní vrstva

1 Protokol TCP/IP (Transmission Control Protocol/Internet Protocol) a OSI model

Y36SPS Bezpečnostní architektura PS

Technologie počítačových komunikací

Síťová vrstva. RNDr. Ing. Vladimir Smotlacha, Ph.D.

Základní principy obrany sítě

Projektování distribuovaných systémů Lekce 2 Ing. Jiří ledvina, CSc

Výzkum v oblasti kybernetické bezpečnosti

Architektura připojení pro kritické sítě a služby

Inovace bakalářského studijního oboru Aplikovaná chemie

Nasazení protokolu IPv6 v prostředí univerzitní sítě VŠB-TU Ostrava

POČÍTAČOVÉ SÍTĚ Metodický list č. 1

Možnosti IPv6 NAT. Lukáš Krupčík, Martin Hruška KRU0052, HRU0079. Konfigurace... 3 Statické NAT-PT Ověření zapojení... 7

Inovace bakalářského studijního oboru Aplikovaná chemie

OpenVPN. Uvedené dílo podléhá licenci Creative Commons Uved te autora 3.0 Česko. Ondřej Caletka (CESNET, z.s.p.o.) OpenVPN 3. března / 16

Y36SPS Bezpečnostní architektura PS

Y36PSI Protokolová rodina TCP/IP

Úvod - Podniková informační bezpečnost PS1-2

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Část l«rozbočovače, přepínače a přepínání

Počítačové sítě. Lekce 4: Síťová architektura TCP/IP

Průmyslová komunikace přes mobilní telefonní sítě. Michal Kahánek

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Projekt Turris Ondřej Filip 23 října 2014 CIF Praha

Firewall, IDS a jak dále? Flow monitoring a NBA, případové studie. Jiří Tobola INVEA-TECH

File Transfer Protocol (FTP)

Směrovací protokol OSPF s využitím systému Mikrotom. Ing. Libor Michalek, Ph.D.

Transkript:

Masarykova univerzita Fakulta informatiky }w!"#$%&'()+,-./012345<ya Aktivní obrana sítě pro potlačení kybernetických útoků Diplomová práce Bc. Martin Rábek Brno, jaro 2015

Místo této strany bude vložena kopie zadání. ii

Prohlášení Prohlašuji, že tato diplomová práce je mým původním autorským dílem, které jsem vypracoval samostatně. Všechny zdroje, prameny a literaturu, které jsem při vypracování používal nebo z nich čerpal, v práci řádně cituji s uvedením úplného odkazu na příslušný zdroj. Bc. Martin Rábek Vedoucí práce: doc. Ing. Pavel Čeleda, Ph.D. iii

Poděkování Děkuji doc. Ing. Pavlu Čeledovi, Ph.D. za cenné rady, náměty a zkušenosti, které mi při psaní práce poskytl. Dále děkuji Mgr. Milanovi Čermákovi za spolupráci a vedení projektu zabývajícího se aktivní obranou a implementací webové aplikace pro provádění aktivní obrany. Poděkovat chci i Mgr. Martinu Vizváry za pomoc během přípravy bezpečnostního scénáře pro Kybernetický polygon. Závěrečný dík patří mé manželce Veronice za podporu během studia a při psaní této práce. iv

Shrnutí Diplomová práce se věnuje návrhu a praktickému ověření metod pro aktivní obranu počítačové sítě a potlačení na ni vedených útoků. V teoretické části práce jsou charakterizovány útoky typu odepření služby (DDoS). Na základě analýzy metod používaných při obraně sítě bylo s využitím open-source nástrojů implementováno pět metod obrany sítě. Dále jsou popsány principy aktivní obrany počítačové sítě a webové aplikace, která je realizuje. Vybrané metody pro aktivní obranu sítě jsou experimentálně ověřeny ve virtualizovaném síťovém prostředí Kybernetického polygonu na dvou demonstračních DDoS útocích. Na závěr je srovnána účinnost použitých metod aktivní obrany sítě a jejich použitelnost v reální síti. v

Klíčová slova aktivní síťová obrana, DDoS útoky, filtrování provozu, omezování provozu, přesměrování provozu, firewall, RTBH, Flowspec, BGP, Open- Flow, Kybernetický polygon vi

Obsah 1 Úvod................................ 1 2 Charakteristika DDoS útoků.................. 3 2.1 Vývoj trendů DDoS útoků................. 3 2.2 Klasifikace DDoS útoků podle charakteru oběti..... 5 2.3 Síťové charakteristiky DDoS útoků............ 8 3 Charakteristika metod obrany počítačové sítě......... 11 3.1 Klasifikace metod obrany podle typu akce........ 12 3.2 Klasifikace metod obrany podle zařízení......... 20 4 Implementace metod obrany sítě................ 23 4.1 Nástroj iptables....................... 24 4.2 Nástroj Open vswitch.................... 26 4.3 Nástroj BIRD........................ 28 5 Aktivní obrana sítě a její implementace............ 33 5.1 Návaznost aktivní obrany sítě na monitorování sítě... 33 5.2 Principy aktivní obrany sítě................ 34 5.3 Návrh webové aplikace CPAND.............. 36 5.4 Přehled použití webové aplikace CPAND......... 42 6 Scénáře pro Kybernetický polygon............... 45 6.1 Scénář 1: Potlačení NTP DDoS útoku........... 46 6.2 Scénář 2: Potlačení HTTP DDoS útoku.......... 51 7 Vyhodnocení aktivní obrany sítě................ 57 7.1 Porovnání metod aktivní obrany sítě........... 57 7.2 Přínosy a budoucnost aktivní obrany sítě......... 66 8 Závěr............................... 69 Seznam literatury........................... 71 Přílohy 77 A Obsah přiloženého CD...................... 77 B Konfigurace sítě pro testování metod obrany......... 78 vii

1 Úvod Kybernetické útoky představují hrozbu pro Internet a jeho služby. Mezi příklady útoků patří například nakažení počítačů pomocí malware, útoky na autentizaci a v neposlední řadě útoky typu odmítnutí služby (DoS a DDoS). Účinnou obranou před útoky je jejich prevence, která snižuje nebo odstraňuje možnost provést útok. Protože prevence nedokáže ochránit před novými typy útoku, je vhodné provádět monitorování sítě a používat systém detekce útoku. Aby mohl být kybernetický útok potlačen, je nutné jej nejprve detekovat. Na základě detekce je možné útok potlačit. Mezi mechanismy obrany představené v této diplomové práci patří filtrování provozu, omezování nebo jeho přesměrování. Zatímco při filtrování dojde k úplnému zablokování zvoleného provozu útočníka, cílem omezování je snížit objem útočného provozu na únosnou mez. Pomocí přesměrování je možné provoz odeslat na vyhrazené zařízení, které provádí čištění provozu od útoků. Hlavním cílem diplomové práce je navrhnout a prakticky ověřit metody pro aktivní obranu počítačové sítě. V rámci projektu Bezpečnostního oddělení na Ústavu výpočetní techniky vznikla webová aplikace Centrální bod aktivní obrany (CPAND) pro realizaci aktivní obrany sítě. Tato aplikace představuje prostředek, pomocí kterého je možné navržené metody obrany provádět na síťových zařízeních. Jedná se o nový nástroj pro zvýšení ochrany před kybernetickými útoky. V rámci diplomové práce byly navrženy nové metody obrany sítě, které byly pomocí aplikace CPAND ověřeny. Byly prozkoumány a otestovány možnosti open-source síťových nástrojů (firewall, směrovač a přepínač) pro provádění obranných mechanismů. Tyto byly poté společně s aplikací nasazeny ve virtualizované síti prostředí Kybernetického polygonu. Na základě demonstrace dvou příkladů DDoS útoků byla porovnána efektivita a omezení jednotlivých metod aktivní obrany sítě. Diplomová práce se skládá z osmi kapitol a jedné přílohy. Ve druhé kapitole jsou charakterizovány DDoS útoky z pohledu síťové komunikace. Třetí kapitola je věnována charakteristice metod obrany počítačové sítě ze dvou hledisek. Obranné mechanismy jsou rozebrány podle typu prováděné akce a typu zařízení, které ji realizuje. V další kapitole jsou analyzovány a popsány metody pro obranu sítě. Pátá kapitola po- 1

1. Úvod pisuje principy aktivní obrany sítě a webovou aplikaci CPAND. V šesté kapitole jsou představeny dva bezpečnostní scénáře pro Kybernetický polygon, pomocí kterých byla aktivní obrana ověřena. Sedmá kapitola vyhodnocuje a porovnává účinnost použitých metod aktivní obrany. Dosažené výsledky jsou shrnuty v závěru práce. V příloze práce je uvedena konfigurace virtualizované sítě a nástrojů pro provádění metod aktivní obrany sítě CPAND. 2

2 Charakteristika DDoS útoků Cílem útoků typu odepření služby (Denial of Service, zkráceně DoS), je zamezení autorizovaného přístupu k systémovým zdrojům nebo zdržení operací a funkcí systému [1]. Při nasazení distribuované formy DoS útoku, dále DDoS útoky (Distributed Denial of Service), útočník využívá různý počet strojů, aby byl útok úspěšnější a pro oběť obtížněji zastavitelný. Pokud útočník při DoS/DDoS útoku uspěje, cílový stroj, služba nebo síť se stane nedostupnou. Pro organizaci v roli oběti může mít takový výpadek různé důsledky, jako např. finanční ztráty, odliv zákazníků, ztrátu reputace nebo právní dopady [2]. Ačkoliv se DDoS útoky objevily už v roce 1999, stále představují nejzávažnější hrozbu. Podle respondentů výzkumu společnosti Arbor Networks [3] patří mezi největší hrozby výpadek Internetu z důvodu útoku DDoS, neúmyslná ztráta dat a kompromitovaný stroj. Současné DDoS útoky jsou sofistikované, zesilují na počtu i síle [4]. Proto je důležité znát síťové charakteristiky (viz 2.3), aby bylo možné útoky detekovat a následně vhodným způsobem potlačit. 2.1 Vývoj trendů DDoS útoků Za první případ distribuovaného útoku odepřením služby se považuje incident z léta 1999, kdy se hackerovi podařilo způsobit dvoudenní výpadek počítačové sítě na Univerzitě Minnesota [2], [5]. Publicitu DDoS útokům přinesly v únoru 2000 útoky na známé Internetové služby (např. Yahoo, CNN a Amazon) [2],[6]. Jednalo se o DDoS útoky záplavou paketů (flooding attacks), které na několik hodin znepřístupnily servery, a tím způsobily napadeným firmám finanční ztráty ve výši 1,1 milionu dolarů [7]. Další útok v říjnu 2002 způsobil částečný výpadek 9 ze 13 hlavních DNS (Domain Name System) serverů poskytující službu pro překlad IP adres na jména [2], [8]. Při záplavových útocích bývá obvykle zneužívána síť botnetu skupiny propojených počítačů (tzv. boti) nakažených pomocí malware protože umožňuje zahltit oběť mnohem větším a narušujícím útokem (viz obrázek 2.1). Útočník stojící v pozadí botnetu nemusí být vystopovatelný, protože vlastní útok provádí na jeho povel právě boti. Jiné záplavové útoky (v únoru 2004 a v červenci 2009) byly vyvolány virem 3

2. Charakteristika DDoS útoků Mydoom, který instruoval tisíce nakažených počítačů k současnému přístupu na webové stránky oběti [2], [4], [8]. botnet hraniční směrovač oběť útočník uživatelé Typy provozu: legitimní nedostupný útočný povelující Obrázek 2.1: Schéma záplavového DDoS útoku s využitím botnetu S rozvojem útoků se začala měnit i motivace útočníků: vydírání (útočník požaduje platbu za ukončení útoku), špionáž (útok slouží pro odvedení pozornosti), odplata a sociální protest, ideologicky a politicky orientovaná kybernetická válka. Vlna DDoS útoků na společnosti Mastercard, PayPal, Visa a PostFinance v prosinci 2010 byla příkladem sociálního protestu. Tuto odplatu zorganizovala skupina Anonymous, jakmile uvedené společnosti přerušily finanční styky s organizací WikiLeaks. DDoS útoky byly také použity Ruskem během kybernetické války proti Estonsku a Gruzii [2], [8]. Dnešní DDoS útoky jsou sofistikované a jednoduché na provedení. Útoky záplavou pakety bývají nahrazovány útoky na aplikační úrovni, které nezahlcují síť, ale přímo službu. K tomu stačí zahltit oběť nižším počtem paketů a pro oběť je obtížnější útok automaticky detekovat a odvrátit. Postupně se zjednodušily i podmínky pro provedení útoků, protože útočníkům stačí si pronajmout levný botnet nebo použít volně dostupné aplikace generující DDoS útok, jako např. LOIC (Low Orbit Ion Cannon) a HOIC (High Orbit Ion Cannon) [2], [9]. Navzdory snahám o snížení počtu incidentů, DDoS útoky rostou rychle na své frekvenci a intenzitě. Zatímco v roce 2005 nejintenzivnější volumetrické útoky dosahovaly velikosti 5-8 Gbps, v roce 2010 to bylo již 100 Gbps a v roce 2014 byla překonána hranice 400 Gbps. Největší útoky využívaly UDP pakety cílené na služby NTP a DNS [3], [8]. 4

2. Charakteristika DDoS útoků 2.2 Klasifikace DDoS útoků podle charakteru oběti Existuje mnoho kritérií, pomocí kterých lze klasifikovat DDoS útoky. To je dáno zejména tím, že útoky obsahují více charakteristických vlastností. Na základě charakteru oběti lze DDoS útoky rozdělit do tří skupin zda je obětí síť, server nebo aplikace. V tabulce 2.1 jsou uvedeny příklady útoků pro zvolenou klasifikaci, dále rozdělenou podle typu útoku. oběť typ útoku příklad útoku síť server aplikace přímý odrazem zesílený TCP/IP SSL/TLS záplava pomalé UDP záplava, ICMP záplava NTP zesílený útok, Smurf útok NTP zesílený útok, Smurf útok TCP SYN záplava, TCP RST záplava HTTPS záplava, THC-SSL-DOS HTTP záplava, DNS záplava Slowloris útok, HTTP fragmentace Tabulka 2.1: Příklady útoků a jejich klasifikace dle oběti Útoky na síť jsou označované jako volumetrické útoky a využívají techniku záplavy pomocí paketů. Útočník se snaží využít celé dostupné přenosové pásmo oběti na jejím připojení k Internetu. Legitimní uživatel snažící se přistoupit ke službě u oběti pod útokem se setká s velmi pomalou nebo žádnou odezvou. Rozlišují se následující mechanismy vzniku záplavy sítě: Během přímé záplavy útočník generuje pakety, které se nezměněny přenáší sítí až k oběti (např. UDP a ICMP záplavy). Útoky založené na odrazu (též reflektivní, reflection-based) využívají podvržené IP adresy, čímž útočník skryje svou identitu a jako původce útoku označí nevinnou třetí stranu. Zesílené útoky (též amplifikační, amplification-based) umožňují útočníkům zahltit oběť více pakety, než kolik sám útočník vygeneroval. Uplatňují se podvržené IP adresy a příkladem útoků jsou NTP a DNS útoky [2], [8]. 5

2. Charakteristika DDoS útoků 2 3 1 Obrázek 2.2: Schéma NTP zesíleného útoku (zdroj: Arbor [3]) Kombinace odrazových a zesílených útoků patří k nejintenzivnějším útokům, např. DNS nebo NTP zesílené útoky (viz obrázek 2.2). K zesílení je použita služba nad protokolem UDP (např. zranitelný NTP server 1), které se útočník pomocí několika paketů 2 zeptá tak, aby vrátila odpověď s velkým množstvím paketů 3. Odraz spočívá v tom, že velká odpověď není zaslána útočníkovi (tj. odesílateli žádosti), nýbrž oběti (tj. podvrhne se IP adresa v žádosti odesílatele). Největší útoky sledované v rámci zprávy společnosti Arbor dosáhly 325,05 Gbps u protokolu NTP a 104,28 Gbps u protokolu DNS [2], [3], [8]. Útoky na server mají za cíl vyčerpat procesor nebo paměť serverů, aby způsobily odmítnutí služby. K tomu bývá obvykle využita zranitelnost serveru nebo zranitelný návrh komunikačních protokolů. Na tyto útoky nejsou náchylné pouze servery, ale jakákoliv stavová zařízení, jako např. firewall nebo systém prevence průniku (IPS). Rozlišují se následující dvě skupiny: Útoky na zranitelnosti TCP/IP zneužívají některé vlastnosti v návrhu protokolů. Obvykle se podvrhují kontrolní příznaky 6

2. Charakteristika DDoS útoků TCP protokolu, které slouží k udržování spojované komunikace. U TCP SYN záplavy je server zahlcen požadavky na ustanovení spojení z mnoha útočících zdrojů (které nikdy nebudou navázány), až je vyčerpána tabulka uchovávající údaje o stavu spojení. Dalším příkladem je TCP RST záplava. Na vzestupu jsou útoky na SSL/TLS, protokoly nad TCP/IP, které zajišťují šifrování síťové komunikace. TLS (Transport Layer Security) je nástupce dnes již končícího protokolu SSL (Secure Sockets Layer). Existují různé varianty, jako útoky na navázání či vyjednání šifrování (např. THC-SSL-DOS), útoky na stavovou tabulku nebo záplava v rámci šifrovaného provozu (např. HTTPS záplava). Útoky jsou založeny na následující asymetrii: server je kvůli výpočtům zatížen několikrát více, než kolik útočníka stojí vyvolat útok (např. patnáctkrát více v případě SSL/TLS navázání spojení). Obrana před těmito útoky bývá obtížná, protože vyžaduje inspekci SSL/TLS paketů [2], [3]. Útoky na aplikace jsou často používané útočníky z několika důvodů. Zaměřují se na zranitelné aplikace nebo protokoly (např. HTTP, DNS, SMTP), které obsahují vlastnosti vhodné pro způsobení odmítnutí služby. Jsou velmi sofistikované, protože nevyžadují tolik útočníků ani provozu jako volumetrické útoky na síť. Protože útok splývá s normálním provozem, není možné na úrovni monitorování toků bez analýzy paketů odhalit útočníka. DDoS útoky na aplikace se dají rozlišit na dvě skupiny: Záplavy na aplikační úrovni vyžadují méně provozu než na úrovni sítě. Nejpoužívanějším útokem je HTTP GET záplava, která zneužívá legitimní HTTP GET požadavky na webový server oběti. Při současné záplavě mnoha požadavky z více strojů dochází k vyčerpání aplikačních zdrojů serveru a odmítnutí služby. Dalším příkladem je DNS záplava, která se dá popsat jako UDP záplava na aplikační úrovni. Tzv. malé a pomalé útoky (low and slow attacks) využívají zranitelnosti aplikací tak, že i jediný útočník pomocí malého počtu paketů vyvolá odmítnutí služby. DDoS útoky mohou např. využívat pomalé HTTP GET nebo POST požadavky. Mezi tyto útoky patří Slowloris útok a HTTP fragmentace [2], [3], [8], [10]. 7

2.3 Síťové charakteristiky DDoS útoků 2. Charakteristika DDoS útoků Distribuovaná povaha útoků typu odepření služby a množství jejich variant má za následek velké obtíže při obraně [8]. Pro nasazení vhodné obrany je proto nutné znát klíčové síťové charakteristiky útoků, mezi které patří: na jaké vrstvy sítě se útočí, zda útočící stroj podvrhuje IP adresu, zda pakety obsahují jiné podvržené údaje, zda se jedná o spojované nebo nespojované útoky, jaký je počet útočících strojů, jaký je počet a velikost paketů. Základní charakteristikou DDoS útoků je vrstva sítě (dle OSI referenčního modelu), na kterou se útočí. Útoky na síť využívají obvykle vrstvy L3 a L4, proto se také nazývají infrastrukturní útoky. Naopak útoky na vrstvě L7 se nazývají aplikační útoky, protože zneužívají zranitelnosti aplikací nebo služeb (např. HTTP, NTP nebo DNS). Útoky na server využívají vrstvy L4 a L5/6, obvykle protokoly TCP a SSL/TLS [2], [3], [8]. Aby útočníci nebyli vystopovatelní, obvykle využívají podvržené zdrojové IP adresy nebo síť botnetu. Pakety mohou obsahovat podvržené zdrojové IP adresy dvojího typu: buď náhodné (i neexistující) IP adresy, nebo reálné IP adresy, které neměly s útokem nic společného. Pokud útočník využije k útoku botnet, nemusí maskovat svou IP adresu, protože ta nekomunikuje s obětí. Záplavu paketů totiž provádí množství cizích strojů v botnetu pod kontrolou útočníka. Příkladem útoků s podvrženou IP adresou jsou TCP SYN, ICMP, UDP nebo DNS záplava. U druhé skupiny DDoS útoků je nutné navázat spojení mezi útočníkem a obětí, proto není možné podvrhnout IP adresu. Příkladem je skupina HTTP útoků, mezi které patří HTTP GET, HTTPS záplava nebo HTTP fragmentace [10], [11]. DDoS útoky využívají i jiné formy podvrhnutí údajů v hlavičkách paketů, zejména podvržené příznaky TCP spojení. Jedná se buď o ne- 8

2. Charakteristika DDoS útoků validní údaje v hlavičkách vygenerovaných pomocí skriptů, nebo o záměrné manipulace s příznaky, které využívají zranitelností TCP/IP komunikace. Útoky z první skupiny využívají např. pakety s nastaveným příznakem ACK (slouží jako odpověď na žádost o navázání spojení), které přicházejí do sítě bez ustanoveného spojení. Druhá skupina zahrnuje útoky SYN, SYN-ACK nebo RST záplavu, které útočníkům umožňují zahltit tabulku stavů TCP spojení [10], [11]. U spojovaných útoků (connection-oriented) musí útočník nejprve navázat TCP spojení, než spustí DDoS útok. Tento typ útoků založených na TCP nebo HTTP provozu se používá proti serverovým a aplikačním zdrojům. V případě že TCP spojení není navázáno, jedná se o nespojovaný útok (connectionless), např. TCP SYN nebo RST záplava. Nespojované útoky bývají hlavně založené na protokolu UDP, který nevyžaduje ustanovení spojení, a tím jsou útoky snadněji provedeny. Výsledkem nespojovaného útoku bývá zahlcení síťových zdrojů, např. pomocí UDP nebo ICMP záplavy [2]. Počet útočících strojů bývá různý a závisí na použitém typu DDoS útoku. U infrastrukturních útoků zahlcujících síť bývá velký počet útočníků, a proto je nutné podvrhnout IP adresu nebo použít botnet. Při podvržení IP adresy jeden útočník dokáže simulovat velký počet útočících strojů. Je znám ale i případ botnetu Mariposa z roku 2010, který zahrnoval téměř 15,5 milionu unikátních IP adres z celého světa. Naproti tomu u aplikačních útoků bývá počet útočníků nízký např. pro provedení tzv. malých a pomalých útoků stačí jediný útočící stroj [2], [11]. Poslední rozebíranou vlastností DDoS útoků je počet a velikost paketů. Počet posílaných paketů se mění od velmi nízkých hodnot (např. HTTP fragmentace a HTTP GET útoků), přes střední (např. fragmentovaný ACK), až po velmi vysoké počty (např. UDP a DNS záplavy). Pakety mohou být různě veliké: UDP a DNS záplavy používají malé pakety, zatímco fragmentované útoky (ACK, UDP nebo ICMP) používají plnou velikost paketů, např. 1500 bytů [10]. Příklady DDoS útoků a jejich vybraných síťových charakteristik jsou shrnuty v tabulce 2.2. U sloupců rozebírajících počet útočníků, počet paketů a velikost platí následující zkratky: VM (velmi malý), M (malý), S (střední), V (velký), VV (velmi velký) [2], [8], [10]. 9

2. Charakteristika DDoS útoků útok na příklad útoku vrstva OSI protokol TCP protokol UDP port aplikace podvržená IP síť server aplikace podvržené TCP spojovaný útok počet útočníků počet paketů velikost paketů ICMP záplava 3 - - VV VV S UDP záplava 4 - - VV VV M NTP zesílení 7 123 - V VV S TCP SYN záplava 4 - V V M TCP RST záplava 4 - V V M THC-SSL-DOS 5/6 443 VM M M HTTPS záplava 7 443 M V M DNS záplava 7 53 VV VV M HTTP GET zápl. 7 80 M V S Slowloris útok 7 80 VM S M HTTP fragmentace 7 80 M VM M Tabulka 2.2: Příklady útoků a vybraných síťových charakteristik, kde hodnoty počtu/velikosti vyjádřené zkratkami mají následující význam: VM (velmi malý), M (malý), S (střední), V (velký), VV (velmi velký) 10

3 Charakteristika metod obrany počítačové sítě Efektivní obrana proti síťovým útokům zahrnuje prevenci, detekci a reakci. Důležitá je zejména prevence útoku, která vede ke zvýšení bezpečnosti sytému. Mezi příklady patří tzv. vstupní filtrování (ingress filtering) podvržených IP adres (viz BCP 38 [12]), zabezpečení síťových i koncových zařízení a zejména instalace záplat pro zneužitelné zranitelnosti. Kvůli novým zranitelnostem systémů a používaných protokolů je nutné počítat s tím, že i sebelepší preventivní mechanismy mohou být překonány. Proto je nutné věnovat při správě sítě pozornost detekci útoků [3], [8]. Pro detekci útoků se dají použít různé nástroje: NetFlow analyzátory, logy firewallu, IDS/IPS, SNMP nástroje a SIEM (Security Information and Event Management). Monitorování pomocí IP toků (Net- Flow nebo IPFIX) patří k efektivnímu a nejpoužívanějšímu způsobu detekce hrozeb ve vysokorychlostních páteřních sítích podle výzkumu [3] společnosti Arbor. IP toky poskytují informace z vrstev L3 a L4 OSI modelu, ale dnes se údaje rozšiřují i o aplikační data z úrovně L7 (používá již 35 % respondentů výzkumu) [3]. Cílem reakce nejčastěji bývá zablokovat útočníky [8]. Mezi nejpoužívanější techniky ke zmírnění útoků podle obrázku 3.1 patří IDMS (Intelligent DDoS mitigation systems), ACL (Access Control List), RTBH (Remotely Triggered Blackhole), firewall, IPS a FlowSpec [3]. Obrázek 3.1: Statistika technik ke zmírnění útoků (zdroj: Arbor [3]) 11

3. Charakteristika metod obrany počítačové sítě 3.1 Klasifikace metod obrany podle typu akce Techniky zmíněné na obrázku 3.1 se dají klasifikovat do dvou oblastí: podle typu akce a podle zařízení. Na základě typu akce se rozlišují tři základní skupiny: filtrování, omezování a přesměrování. Cílem filtrování je zablokovat útočníka, zatímco při omezování je provoz útočníka omezen na povolenou propustnost. Přesměrování se obvykle používá pro odeslání provozu na vyhrazené zařízení, na kterém proběhne čištění provozu [4]. Mezi základní, dále popsané obranné mechanismy patří ACL, firewall, QoS (kvalita služby), RTBH a FlowSpec. V tabulce 3.1 jsou představeny podporované typy akcí pro jednotlivé mechanismy. Základním parametrem akce používaným všemi mechanismy je IP adresa nemusí se jednat pouze o IP adresu zařízení, ale i o libovolnou síťovou IP adresu. Mechanismy ACL, firewall a FlowSpec dokáží specifikovat toky (L3/L4 údaje), na které se má vztahovat akce (na rozdíl od RTBH). mechanismus filtrování omezování přesměrování ACL * firewall QoS * RTBH FlowSpec Tabulka 3.1: Přehled akcí a obranných mechanismů (* pro omezování pomocí QoS je nutné použít ACL pro definování omezeného provozu) 3.1.1 Filtrování provozu Nejpoužívanějším typem obrany sítě je filtrování provozu (traffic filtering), protože umožňuje zablokovat útočníky. Mezi využívané mechanismy filtrování patří ACL/firewall, RTBH a FlowSpec. Filtrování pomocí ACL/firewallu ACL (Access Control List) patří dlouhodobě mezi nejpoužívanější prostředky obrany sítě v roce 2014 bylo druhým nejpoužívanějším filtro- 12

3. Charakteristika metod obrany počítačové sítě vacím mechanismem podle [3]. ACL je seznam pravidel, pomocí kterého je možné provádět filtrování na směrovači nebo přepínači. Jednotlivá pravidla mohou povolit nebo zakázat síťový provoz na základě charakteristik IP toku (tj. na úrovni L3/L4), jako např. zdrojová a cílová IP adresa, port TCP nebo UDP. Po vytvoření se ACL aplikuje na vstupní nebo výstupní směr (direction) a rozhraní (interface) zařízení [13], [14]. Při nasazení ACL se pro všechny pakety daného rozhraní a směru prochází seznam pravidel ze shora dolů. Paket je buď povolen, nebo zahozen, a to na základě první shody s pravidlem. Proto je důležité pořadí položek seznamu jakmile je nalezeno vyhovující pravidlo, další se už nezpracovávají. Pokud žádné pravidlo nevyhovuje, je paket u Cisco zařízení implicitně zahozen. Na podobném principu jako ACL funguje firewall, který umožňuje definovat si vlastní pravidla, např. Linuxový nástroj iptables (viz 4.1) [13], [14]. Teoreticky je možné mít až 250 000 pravidel ACL na Cisco zařízeních [15]. To však není v praxi možné, protože každé pravidlo ubírá značnou část paměti a procesoru pro své zpracování. Kombinace velkého počtu pravidel a mnoha paketů procházejících zařízením degraduje výkon zařízení. Z důvodu problematického škálování se proto ACL/firewall hodí pro menší seznamy pravidel. Ve výzkumném centru NERSC se v roce 2011 používalo 100-700 pravidel ACL denně, s maximálním počtem 1000 pravidel [16]. Další problém představuje přidání nebo odebrání pravidla, které obvykle vyžaduje vzdálené přihlášení na zařízení a změnu konfigurace. Podle [16] trvá přidání nového pravidla 5-8 sekund. Mezi nevýhody také patří nemožnost nasadit ACL na více rozhraních nebo zařízeních současně [4], [13], [14]. Filtrování pomocí RTBH Mechanismus RTBH (Remotely Triggered Blackhole, RFC 5635 [17]) oproti ACL řeší problém automatizovaného a vzdáleného nastavení pro potlačení síťových útoků. K filtrování je využito směrování do černé díry (blackhole), které spočívá v úpravě záznamu ve směrovací tabulce směrovače tak, že pro blokovanou IP adresu se jako příští skok uvede rozhraní Null0. Tím dojde k zahození všech paketů s danou cílovou IP adresou s minimálním vlivem na výkon směrovače (na rozdíl od procházení seznamu pravidel ACL) [4], [13], [18]. RTBH umožňuje vzdálenou propagaci změn směrovací tabulky, a to 13

3. Charakteristika metod obrany počítačové sítě pomocí protokolu BGP (Border Gateway Protocol). Díky tomu nedochází ke změně konfigurace zařízení. Protokol BGP je používán v Internetu pro výměnu směrovacích informací mezi autonomními systémy (AS). Každý AS zahrnuje skupinu směrovačů a podsítí, které jsou pod společnou správou např. síť Masarykovy univerzity je pod správou sdružení CESNET a má číslo AS 2852. Pokud je BGP používán v rámci AS, označuje se jako vnitřní BGP, ibgp (Interior BGP). Pro distribuci pravidel RTBH používá oznamovací stroj směrovač nebo jiný BGPd (BGP démon) stroj (např. nástroj BIRD, viz 4.3). Oznamovací stroj pomocí ibgp komunikuje s hraničními směrovači v síti, což umožňuje automatizovanou distribuci pravidel. Propagace pravidel je rychlá a závisí na nastavení intervalu odesílání ibgp zpráv. Podle studie [19] hraniční směrovače začaly zahazovat pakety s maximálním zpožděním 32 milisekund. Přidání a propagace filtrovacího pravidla podle [16] v produkčním prostředí trvá 0,75 sekundy [4], [13], [18], [20]. Rozlišují se dvě varianty RTBH podle toho, zda se filtruje na základě cílové IP adresy nebo zdrojové IP adresy. Původní varianta D- RTBH (Destination-based RTBH ) dovolovala filtrovat pouze podle cílové IP adresy. Z hlediska obrany sítě to znamená, že se filtruje celý provoz jdoucí na oběť. Záměrem bylo dočasně odpojit server oběti od Internetu a ulevit zatížené síti neřešilo se však, že server nezůstal online. To je nežádoucí způsob obrany, který filtruje i legitimní uživatele. Proto vznikla pokročilejší varianta S-RTBH (Source-based RTBH, která umožňuje blokovat přímo útočníky. Implementace S-RTBH závisí na technice urpf (Unicast Reverse Path Forwarding), která před rozhodnutím o směrování zkontroluje, zda pro zdrojovou IP adresu existuje záznam ve směrovací tabulce. Rozlišují se dva módy urpf, které se liší tím, kdy je paket přicházející na rozhraní zařízení zahozen: ve striktním (strict) módu je paket zahozen, pokud odpověď na základě směrovací tabulky nebude poslána na stejné rozhraní, ze kterého paket přišel, u volného (loose) módu je paket zahozen, pokud neexistuje žádná cesta k odesílateli paketu [13], [21]. Filtrování pomocí S-RTBH se dá použít pro potlačení DDoS útoku, jak je znázorněno na obrázku 3.2. Mechanismus se skládá ze tří kroků: 14

3. Charakteristika metod obrany počítačové sítě uživatelé útočníci hraniční směrovač 3 ibgp 2 1 BGPd oběť Typy provozu: legitimní povelující útočný blokovaný Obrázek 3.2: Mechanismus filtrování pomocí RTBH ➀ na BGPd stroji se nejprve nastaví pravidla filtrování pro každé pravidlo akce se přidá statická cesta obsahující IP adresu útočníka a příští skok Null0, ➁ nastavené statické cesty jsou distribuovány pomocí ibgp protokolu na hraniční směrovač, ➂ přijaté informace jsou na hraničním směrovači importovány do globální směrovací tabulky a pokud je nastaveno urpf, dochází k filtrování útočníků. RTBH přineslo možnost automatizovaného a distribuovaného filtrování IP adres na hranicích sítě, aniž by bylo nutné měnit konfiguraci zařízení. Podle experimentu výzkumného centra NERSC bylo na směrovač přidáno dva miliony cest do černé díry, než na zařízení došla paměť [16]. Protože je filtrování prováděno během rozhodování o směrování, zařízení není filtrováním zatíženo. RTBH pomocí BGP umožňuje komunitě předávat informace je-li to možné např. zákazník pošle informace o útočníkových IP adresách na směrovače poskytovatele Internetu, kde dojde k zablokování útoku [13], [14], [18], [21]. Při používání RTBH je nutné brát v úvahu několik nevýhod. Filtrování lze provádět pouze pomocí IP adres a není možné filtrovat na základě toků (např. portů). Pravidla se instalují přímo do globální směrovací tabulky a mohou vytvářet problémy se směrováním. Ačkoliv nelze pomocí RTBH omezit provoz, lze pravidla kromě filtrování využít i pro přesměrování provozu (viz 3.1.3) [14], [18], [21]. 15

3. Charakteristika metod obrany počítačové sítě Filtrování pomocí FlowSpec Metoda FlowSpec (Flow Specification, RFC 5575 [22]) představuje další mechanismus pro zmírnění síťových útoků. FlowSpec podobně jako RTBH používá BGP pro vzdálenou distribuci pravidel. Používá však nové kódování BGP NLRI (Network Layer Reachability Information), pomocí kterého je možné přenášet přímo v rámci zpráv BGP protokolu informace o tocích a typu akce (filtrování, omezování nebo přesměrování provozu) [18], [22]. Filtrování pomocí FlowSpec probíhá tak, že na oznamovacím zařízení se definuje BGP zprávy obsahující pravidla (např. IP adresa útočníka a port serveru) a typ akce filtrování (povel discard). Pravidla jsou distribuována mezi více směrovačů současně, kde jsou zpracovány a aplikovány. Implementační detaily však nejsou přesně definované FlowSpec specifikuje pouze co se má udělat, nikoliv jak a proto se mechanismy filtrování mohou lišit mezi výrobci [18]. FlowSpec kombinuje vlastností ACL (filtrovací kritéria na úrovni toků) a RTBH (distribuce pomocí BGP), čímž umožňuje nastavovat pravidla pro filtrování na více směrovačích současně. Nevýhodou Flow- Spec je, že standard musí být podporován výrobcem a hardwarem směrovače (např. Juniper od roku 2009, Cisco od roku 2014). Ani opensource programy pro směrování, jako např. BIRD nebo Quagga, dosud FlowSpec nepodporují [4], [18]. 3.1.2 Omezování provozu Druhým typem obrany sítě je omezování provozu (rate limiting nebo throttling). Cílem je omezit provoz útočníka na určitou stanovenou mez, a přitom na rozdíl od filtrování ponechat konektivitu. Pro mezní hodnotu je možné použít buď počet paketů, nebo šířku pásma. Omezování je vhodné jako prvotní automatická reakce a může sloužit pro zpomalení útoku (např. hádání SSH hesel). Popsány jsou mechanismy omezování provozu pomocí firewallu, kvality služby QoS a FlowSpec [4], [8]. Omezování pomocí firewallu První možností pro omezení provozu je definovat maximální propustnost provozu na základě počtu paketů. Tuto možnost nabízí některé firewally, např. nástroj iptables (viz 4.1). Nastavení je podobné jako 16

3. Charakteristika metod obrany počítačové sítě u filtrování firewallu pomocí ACL. U pravidla se pouze definují následující hodnoty: limit určuje maximální mez pro počet paketů za zvolené časové období (sekunda, minuta, hodina nebo den), pakety nad tuto mez se pomocí implicitního nebo explicitního pravidla budou filtrovat, limit-burst definuje hodnotu, po jejíž překonání bude vynuceno omezování provozu definované hodnotou limit [23]. Omezování pomocí QoS Druhou možností pro omezování provozu je použít šířku pásma (bandwidth). Tuto možnost podporuje mechanismus QoS (Quality of Service, kvalita služby), který je součástí síťových zařízení. QoS řeší možnosti pro zlepšení kvality síťových služeb a poskytuje komplexní mechanismy pro nastavení šířky pásma, omezení ztráty dat, obcházení a správu zahlcení sítě, tvarování provozu a nastavení priority provozu. K omezováním provozu pomocí QoS se používá algoritmus Token Bucket (kyblík s tokeny), se kterým souvisejí dvě techniky: traffic shaping (tvarování provozu) slouží pro zpomalení provozu, aby nepřesáhl definovanou šířku pásma pakety, které přesáhly mez, budou odeslány později, až nebude pásmo vytížené, traffic policing (zahazování provozu) všechny pakety, které přesáhnout stanovenou mez, jsou filtrovány [24]. Pro omezování provozu útočníka na stanovenou mez s filtrováním nadlimitního provozu je nutné použít metodu traffic policing. V konfiguraci zařízení se vytváří politika omezování provozu, pro kterou se nastaví následující hodnoty: rate mezní hodnota pro omezování v bitech za sekundu, burst-normal hodnota kyblíku (bucket) v bytech, po vyčerpání dojde k omezování provozu pomocí hodnoty rate, burst-max hodnota druhého kyblíku v bytech, pomáhá zpomalit vyčerpání prvního kyblíku, 17

3. Charakteristika metod obrany počítačové sítě exceed-action drop definuje filtrování pro nadlimitní provoz, směr (direction) a rozhraní (interface) zařízení, na které bude omezování provozu aplikováno, seznam ACL pro zvolení provozu, který má být omezen. Ačkoliv lze QoS v kombinaci se seznamem ACL použít pro omezování provozu, stanovená mez se vztahuje na celý provoz vyhovující zadanému ACL. Není možné přidělit pevnou mezní hodnotu pro každého útočníka, na rozdíl od omezování pomocí firewallu. Nastavení QoS bývá pouze lokální, a proto vyžaduje podobně jako ACL vzdálené přihlášení na zařízení a změnu konfigurace. Omezování pomocí FlowSpec Mechanismus FlowSpec je možné použít pro vzdálené nastavení omezování provozu pomocí QoS. Podobně jako u filtrování pomocí FlowSpec se na oznamovacím stroji vytvoří BGP zpráva obsahující pravidla popisující provoz, který bude omezen. Jako typ akce se zvolí omezování provozu a uvede se parametr mezní hodnoty v bytech za sekundu [22]. Tato pravidla se pomocí protokolu BGP distribuují mezi směrovače, na kterých se provedou patřičná nastavení. Díky mechanismu FlowSpec tak není nutné nastavovat konfigurace manuálně a na více zařízeních. 3.1.3 Přesměrování provozu Třetím typem obrany sítě je přesměrování provozu (traffic redirection). Cílem je přesměrovat provoz na specializované zařízení, kde bude provoz zbaven útočníkových toků. Tento proces se nazývá čištění (scrubbing) a zařízení (viz 3.2.3) se označuje jako čistička provozu (scrubber) nebo IDMS (Intelligent DDoS mitigation system). Filtrování na specializovaném zařízení umožňuje lépe potlačit síťové útoky a navíc nedochází k zatěžování síťových zařízení na lince. Přesměrování volumetrického DDoS útoku do cloudu umožňuje distribuci zatížení pro lepší zvládnutí útoku. Mezi další případ použití přesměrování patří tzv. výlevky (sinkholes), které absorbují útok, zatímco bude provedena jeho analýza. Mechanismy RTBH nebo FlowSpec umožňují vzdálené nastavení přesměrování provozu na síťových zařízeních [3], [4], [13]. 18

3. Charakteristika metod obrany počítačové sítě Přesměrování pomocí RTBH Mechanismus RTBH může být kromě filtrování provozu použit i pro přesměrování provozu. Za tím účelem se v rámci BGP zpráv nebude posílat jako příští skok rozhraní Null0 (filtrování), ale IP adresa zařízení, na který bude provoz přesměrován. Vložení nových cest do směrovací tabulky pomocí BGP se označuje jako BGP injection. Změna globální směrovací tabulky sice umožňuje přesměrovat provoz na základě cílové IP adresy do čističky provozu (scrubber), ale komplikuje návrat vyčištěného provozu. Pro doručení původnímu odesílateli je proto nutné použít jednu z následujících technik: tunely mechanismus GRE (Generic Routing Encapsulation) se použije pro tunelování provozu mezi síťovými zařízeními, lokální směrovací tabulka pomocí VRF VPN (Virtual Routing and Forwarding Virtual Private Networks) se pro směrování použije druhá směrovací tabulka, která nebude obsahovat cesty sloužící pro přesměrování provozu, předání provozu na úrovni L2 [14], [21]. Mechanismus obrany přesměrováním provozu pomocí RTBH je popsán na obrázku 3.3: ➀ na BGPd stroji se přidá se nová statická cesta s cílovou IP adresou oběti, která bude mít příští skok IP adresu čističky provozu, útočníci hraniční směrovač ibgp 2 1 BGPd oběť uživatelé 3 5 Typy provozu: legitimní povelující útočný blokovaný 4 čistička provozu Obrázek 3.3: Mechanismus přesměrování pomocí RTBH 19

3. Charakteristika metod obrany počítačové sítě ➁ cesty jsou distribuovány pomocí ibgp na hraniční směrovač, ➂ přijaté informace jsou na hraničním směrovači importovány do globální směrovací tabulky, čímž dochází k přesměrování veškerého provozu určeného oběti do specializovaného zařízení, ➃ čistička provozu provádí analýzu provozu, filtrování útoků a legitimní provoz posílá zpět na směrovač, ➄ směrovač používá VRF a pomocí druhé směrovací tabulky odesílá vyčištěný provoz původnímu příjemci. Výhodou přesměrování pomocí RTBH je snadná konfigurace pravidel a jejich distribuce mezi směrovače. Nevýhodou je zásah do globální směrovací tabulky, který vyžaduje použití některé techniky (např. VRF) pro návrat provozu původními příjemci [14]. Přesměrování pomocí FlowSpec Metoda FlowSpec vylepšuje možnosti přesměrování oproti mechanismu RTBH. Zaprvé je možné přesměrovávat přímo toky, nejen celý provoz na základě cílové IP adresou. Čističky provozu pak nemusí analyzovat celkový provoz, ale pouze podezřelé toky (např. pouze HTTP provoz při specifikaci cílového portu 80). Dále se přímo ve zprávě BGP NLRI určí číslo cílové VRF směrovací tablky, takže se nemění globální směrovací tabulka. To odstraňuje komplikaci u mechanismu RTBH spojenou s návratem provozu příjemci [22], [25]. 3.2 Klasifikace metod obrany podle zařízení Obranné mechanismy mohou být nasazeny na různých místech sítě. Některé jsou nasazovány blíže k oběti útoku, protože útoky bývají detekovány až v síti oběti. Čím blíž k oběti jsou volumetrické DDoS útoky filtrovány, tím více legitimních paketů se z důvodu přetížení nestačí linkou odeslat. Proto se doporučuje provádět obranu sítě co nejblíže k útočníkovi, např. na hraničních směrovačích nebo u poskytovatele Internetu [4], [8]. V tabulce 3.2 jsou uvedeny zařízení používané pro potlačení síťových útoků: firewally, IPS, směrovače, přepínače a specializovaná zařízení. Každé zařízení může být v síti zapojeno jedním z následujících způsobů: 20

3. Charakteristika metod obrany počítačové sítě v lince (in-line) zařízení je přímo zapojené v síti a je možné přímo potlačit útočný provoz, mimo linku (out-of-path) zařízení je zapojené mimo hlavní linku a provádí čištění části provozu, který je na něj přesměrován [26]. síťové zařízení v lince mimo linku IPS firewall směrovač přepínač čistička provozu cloud Tabulka 3.2: Přehled síťových zařízení používaných pro obranu sítě a jejich zapojení v síti 3.2.1 Firewally a IPS Firewally a IPS jsou základní zařízení pro obranu sítě. Firewally oddělují vnější síť od demilitarizované zóny a vnitřní sítě a kontrolují přenos dat. Používají se pro plnění definovaných bezpečnostních politik, např. zabránění neautorizovaného přístupu k určitým datům. Moderní stavové firewally mohou obsahovat ACL a provádět stavovou nebo aplikační analýzu provozu. Dále mohou poskytovat překlad vnitřních adres na vnější pomocí mechanismu NAT (Network Address Translation), čímž dojde ke skrytí lokálních IP adres vnějším útočníkům [14], [27]. Systémy detekce průniku IPS (Intrusion Prevention Systems) umožňují na základě anomálií nebo signatur detekovat útočníky a zablokovat je. Přesto je nutné počítat s tím, že tato zařízení nedokáží zabránit všem útokům, jako např. sofistikované útoky na aplikační úrovni [14], [27]. Oba typy zařízení mají několik charakteristických vlastností, které je činí zranitelné na DDoS útoky. Jedná se o stavová zařízení, které si pro analýzu síťového provozu udržují tabulku spojení. V případě záplavového útoku může dojít k vyčerpání zdrojů zařízení. Tato zařízení bývají zapojena tzv. v lince, aby mohla filtrovat provoz. Pokud dojde 21

3. Charakteristika metod obrany počítačové sítě k výpadku takto zapojeného zařízení, má to za následek přerušení linky, a tudíž i sítě. Proto se některé útoky soustředí přímo na IPS nebo firewally [2], [27]. 3.2.2 Směrovače a přepínače Pro obranu sítě lze využít síťová zařízení, jako směrovač nebo přepínač. Tato zařízení mohou podporovat metody obrany představené v sekci 3.1, jako např. ACL, RTBH a FlowSpec. Směrovače hrají klíčovou roli při obraně, protože umožňují přístup z Internetu do sítě. Pokud je např. volumetrický DDoS útok zastaven na hranici sítě, nebude docházet k zatížení vnitřní sítě. Mělo by se však dbát na to, aby obranný mechanismus nadměrně nezatěžoval zařízení, jehož hlavní funkcí je zajišťovat síťovou dostupnost. V takovém případě je vhodnější použít zařízení pro přesměrování na specializované zařízení, kde proběhne potlačení útoku [25], [26]. 3.2.3 Specializovaná zařízení Specializovaná zařízení umožňují detekci i potlačení síťových útoků. Označují se jako čističky provozu (scrubbers), případně IDMS (Intelligent DDoS Mitigation Systems). Jedná se o pokročilé IPS zařízení, které se dají zapojit přímo do linky nebo mimo ni. Výhodou zapojení mimo linku je, že zařízení analyzují pouze menší část podezřelého provoz, který je na něj přesměrován. Zařízení DefensePro [28] od společnosti Radware poskytuje ochranu sítě a serveru (včetně záplavy HTTP a SSL útoků), kontrolu zranitelností, řízení přístupu pomocí ACL a nástroje pro správu. Dalším příkladem je zařízení Pravail Availability Protection System [29] od společnosti Arbor Networks. Pro zvládnutí náročnějších útoků se dá využít i distribuovaných cloudových služeb. Mezi nevýhody patří zejména cena specializované zařízení nebo služby v cloudu [2], [14], [27]. 22

4 Implementace metod obrany sítě V předchozí kapitole byly analyzovány metody používané při obraně počítačové sítě, které zahrnují filtrování, omezování a přesměrování provozu. V této kapitole jsou popsány principy vybraných obranných mechanismů, které byly implementovány pomocí open-source nástrojů. Mezi testované nástroje patří firewall iptables, přepínač Open vswitch a směrovací démon BIRD. Funkce těchto nástrojů, podporované metody obrany a způsob jejich nastavení je shrnuta v tabulce 4.1 nástroj funkce filtr. omez. přesm. nastavení iptables firewall SSH Open vswitch přepínač OpenFlow BIRD směrovač BGP Tabulka 4.1: Topologie sítě pro testování metod obrany sítě Nastavení obranných mechanismů bylo ověřeno ve virtuální síťové topologii uvedené na obrázku 4.1, vytvořené pomocí nástroje Virtual- Box [30]. Základem sítě jsou dva linuxové směrovače bird1 a bird2, které si vyměňují směrovací tabulky pomocí BGP protokolu. Zařízení bird3 představuje oznamovací zařízení pro vzdálené nastavení nástrojů BIRD a Open vswitch na směrovači bird2. Úplná konfigurace směrovačů je uvedena v příloze B. 10.1.1.11 10.1.5.11 10.1.4.20 controller host1 10.1.2.11 bird1 BGP eth3 eth1 bird2 eth2 ibgp bird3 10.1.4.11 host2 host3 Obrázek 4.1: Topologie sítě pro demonstraci obrany sítě 23

4.1 Nástroj iptables 4. Implementace metod obrany sítě Nástroj iptables [31] je firewall v Linuxu konfigurovatelný přes příkazový řádek. Je založený na frameworku netfilter, v linuxovém jádru obsaženém od verze 2.4, který poskytuje podporu pro filtrování paketů a překlad síťových adres (NAT) a portů (NAPT). Pomocí iptables byly implementovány dvě metody obrany sítě: filtrování provozu a omezování provozu na základě počtu paketů. V pravidlech obranných mechanismů lze definovat údaje na úrovni toků (např. zdrojovou IP adresu, protokol TCP a cílový port). Při použití rozšíření (extensions) je možné specifikovat i MAC adresu nebo údaje na aplikační úrovni. Na rozdíl od nástrojů Open vswitch a BIRD není možné distribuovat pravidla jinak, než pomocí vzdálené konfigurace zařízení s využitím protokolu SSH (Secure SHell). 4.1.1 Filtrování provozu pomocí firewallu Firewall iptables pro filtrování provozu lze nastavit podobným způsobem jako ACL seznamy u Cisco zařízení (viz 3.1.1). K filtrování jsou využívány seznamy pravidel, které se nastaví na vstupní nebo výstupní směr rozhraní zařízení. Například na obrázku 4.2 v bodě 1 je ukázáno, že pakety přicházející na rozhraní eth2 budou filtrovány podle pravidel v seznamu eth1-in. Seznamy se procházejí sekvenčně, dokud není pravidla eth1-in směrovací tabulka tabulka toků iptables 1 směrování 2 přepínání 3 host1 eth1 br0 eth2 host3 bird2 zahoď paket Obrázek 4.2: Schéma zpracování paketů komunikace mezi počítači host1 a host3 s ohledem na odlišná místa možného filtrování paketů: při vstupu na rozhraní pomocí iptables 1, během směrování s využitím údajů z nástroje BIRD 2 a při přepínání pomocí Open vswitch 3 24

4. Implementace metod obrany sítě pro údaje v paketu nalezena shoda s některým pravidlem. Pokud je nalezeno pravidlo s akcí zahoď, jsou pakety zahazovány. Po dosažení konce seznamu se paket povolí (nebo zahodí) na základě specifikované politiky. Při filtrování pomocí iptables je nutné počítat s tím, že větší seznamy pravidel budou mít negativní vliv na zátěž zařízení. Následuje přehled příkazů prováděných z příkazové řádky souvisejících s filtrováním útočníka na zařízení bird2: příprava nastavení vytvoření ACL řetězce pravidel a jeho aplikování na rozhraní): # iptables -N acl_eth1_filter # iptables -I FORWARD --in-interface eth1 -j acl_eth1_filter přidání pravidla pravidlo pro filtrování zdrojové IP adresy je vloženo na začátek ACL řetězce: # iptables -I acl_eth1_filter -s 10.1.1.11/32 -j DROP odstranění pravidla pravidlo je smazáno z ACL řetězce: # iptables -D acl_eth1_filter -s 10.1.1.11/32 -j DROP zobrazení pravidel pomocí výpisu všech pravidel ACL řetězce: # iptables -L acl_eth1_filter -n Chain acl_eth1_filter (1 references) target prot opt source destination DROP all -- 10.1.1.11 0.0.0.0/0 4.1.2 Omezování provozu pomocí firewallu Firewall iptables kromě filtrování dovoluje definovat omezování provozu na základě počtu paketů. Hodnota propustnosti je dána hodnotami limit N (počet paketů za sekundu, které budou zachovány) a limit-burst M (počet povolených paketů po překonání limitu). Pro nastavení a ověření omezování provozu se používají podobné příkazy jako v případě filtrování: příprava nastavení používá stejné příkazy jako u filtrování, pouze se změní název seznamu pravidel na acl_eth1_limit 25

4. Implementace metod obrany sítě přidání pravidel omezování funguje tak, že se nejprve propustí 2-4 pakety za sekundu a zbylé pakety jsou zahozeny: # /sbin/iptables -I acl_eth1_limit -s 10.1.1.11/32 -j DROP # /sbin/iptables -I acl_eth1_limit -m limit --limit 2/s --limit-burst 2 -s 10.1.1.11 -j ACCEPT odstranění pravidel: # /sbin/iptables -D acl_eth1_limit -s 10.1.1.11/32 -j DROP # /sbin/iptables -D acl_eth1_limit -m limit --limit 2/s --limit-burst 2 -s 10.1.1.11 -j ACCEPT zobrazení akcí: # /sbin/iptables -L acl_eth1_limit -n Chain acl_eth1_limit (1 references) target prot opt source destination ACCEPT all -- 10.1.1.11 0.0.0.0/0 limit: avg 2/sec burst 2 DROP all -- 10.1.1.11 0.0.0.0/0 4.2 Nástroj Open vswitch Open vswitch [32] je softwarový přepínač, který vylepšuje možnosti posílání paketů v linuxovém systému. Bez použití Open vswitch linuxový můstek provádí předávání paketů v režimu jádra. Vylepšení spočívá v úplné náhradě původního linuxového předávání paketů a rozdělení úkolů mezi jádro a uživatelskou oblast. Zlepšením je, že k vyhodnocení pravidel dochází v uživatelské oblasti. Nástroj je dále využíván ve virtuálním prostředí (např. Xen, KVM, VirtualBox) a systémech správy virtualizace (např. OpenStack, OpenNebula) [33]. Open vswitch umožňuje linuxovému stroji stát se částí tzv. softwarově definovaného sítě (SDN), a to díky vzdálenému ovládání pomocí protokolu OpenFlow. Počítač v roli ovladače (controller) dokáže posílat OpenFlow příkazy pro změnu pravidlel v tabulce toků pro přeposílání paketů, což lze použít pro nastavení filtrování provozu. Původně se zdálo, že bude možné provádět také omezování provozu na základě 26

4. Implementace metod obrany sítě kvality služby QoS. Podporováno je však pouze tvarování provozu (traffic shaping, nikoliv zahazování nadlimitního provozu (traffic policing). Open vswitch zahrnuje několik nástrojů, např. ovs-vsctl umožňuje konfiguraci přepínače a ovs-ofctl slouží pro posílání OpenFlow povelů. 4.2.1 Filtrování provozu pomocí firewallu Open vswitch obsahuje integrovaný firewall, který poskytuje široké možnosti v pravidlech filtrování podobně jako iptables. Zároveň je možné jej vzdáleně ovládat pomocí OpenFlow příkazů posílaných z ovladače (též oznamovacího zařízení), jehož funkci na obrázku 4.2 plní bird3. Filtrování na zařízení bird2 provádí Open vswitch na můstku (bridge) br0 3, který seskupuje více fyzických nebo virtuálních rozhraní (např. eth2). Následuje přehled příkazů volaných z příkazového řádku zařízení bird3 (resp. bird2), které provádějí filtrování útočníka na bird2: příprava nastavení (bird2) povolení vzdáleného ovládání síťového můstku br0 všem zařízením posílající OpenFlow příkazy na port 6633 (pro zvýšení bezpečnosti lze uvést IP adresu ovladače a šifrovat komunikaci pomocí SSL/TLS protokolu): # ovs-vsctl set-controller br0 ptcp:6633 přidání pravidla pravidlo označené kódem (cookie) 0x666 je posláno na přijímací zařízení bird2: # ovs-ofctl add-flow tcp:10.1.4.1:6633 priority=5,cookie =0x666,idle_age=0,ip,nw_src=10.1.2.11,actions=drop odstranění pravidla pravidlo je smazáno z přijímacího zařízení: # ovs-ofctl del-flows tcp:10.1.4.1:6633 ip,nw_src =10.1.2.11 zobrazení pravidla výpis pravidel tabulky toků s kódem 0x666: # ovs-ofctl dump-flows tcp:10.1.4.1:6633 grep cookie=0 x666 cookie=0x666, duration=25.170s, table=0, n_packets=3, n_bytes=294, idle_age=22, priority=5,ip,nw_src =10.1.2.11 actions=drop 27

4.3 Nástroj BIRD 4. Implementace metod obrany sítě Nástroj BIRD (BIRD Internet Routing Daemon [34]) rozšiřuje možnosti směrování (např. dynamické protokoly OSPF a BGP) u Linuxu a některých BSD systémů. BIRD vznikl jako studentský projekt v roce 1999 a od roku 2008 je dále rozvíjen a sponzorován společností CZ.NIC. Nástroj je používaný např. společnostmi LINX, Netflix a amsix [35]. Pomocí nástroje BIRD je možné vytvořit softwarový směrovač, který dokáže komunikovat s ostatními (komerčními) směrovači v síti, objevit síťovou topologii a počítat směrovací tabulky. Program může být dále použit jako směrovací server pro posílání BGP zpráv [36]. Mezi základní koncepty programu patří cesty, protokoly, tabulky a filtry: cesty (routes) obsahují prefix cílové sítě, rozhraní a cíl, cesty jsou generovány pomocí protokolů (protocols) zahrnují směrovací protokoly (BGP, OSPF a RIP) a jiné zdroje (statické, kernelové, přímo připojené cesty), cesty se ukládají do směrovacích tabulek (tables), které je možné synchronizovat s jinými tabulkami nebo kernelovou tabulkou, programovatelné filtry (filters) ovlivňují cesty posílané mezi protokoly a tabulkami (přijetí, zamítnutí nebo změna cesty). Nástroj BIRD používá pro nastavení konfigurační soubor /etc/bird/bird.conf a po spuštění běží jako služba bird na pozadí. Interaktivní program birdc poskytuje uživateli na příkazovém řádku dohled nad běžící službou a možnost vypisovat informace o cestách a protokolech. Pro obranu sítě byly otestováno filtrování a přesměrování provozu pomocí mechanismu RTBH. BIRD dokáže z linuxového stroje vytvořit oznamovací BGPd zařízení, které distribuuje pravidla pomocí BGP protokolu mezi libovolný počet naslouchajících směrovačů. Mezi nevýhodu oproti jiným možnostem filtrování patří použití pouze cílové IP adresy v pravidlech akce. Pro filtrování na základě zdrojové IP adresy je nutné na zařízení nastavit mechanismus urpf (unicast reverse path filtering). BIRD v současné době neumí standard BGP FlowSpec, pomocí kterého by se daly distribuovat i jiné L3/L4 údaje v pravidlech akcí. 28

4.3.1 Filtrování provozu pomocí RTBH 4. Implementace metod obrany sítě RTBH poskytuje efektivnější způsob filtrování provozu než v ACL, protože filtrování probíhá během směrování paketů. Pravidla filtrování se importují do směrovací tabulky (2 na obrázku 4.2), a to formou cest do černé díry (Null0 ). Bylo ověřeno, že pomocí nástroje BIRD lze emulovat jak oznamovací, tak přijímací směrovač. Díky použití urpf je možné filtrovat pakety i na základě zdrojových IP adres. Ačkoliv nástroj využívá statické konfigurační soubory, v rámci diplomové práce byl implementován dynamický způsob přidávání pravidel pro filtrování. Výhodou metody je možnost filtrování na základě zdrojové (s využitím urpf) nebo cílové IP adresy a interoperabilita např. s Cisco směrovačem. Nevýhodou však je, že není možné specifikovat formu pravidla jinak než s využitím IP adres. Následuje přehled příkazů volaných z příkazového řádku zařízení bird3 (resp. bird2), které provádějí filtrování útočníka na bird2: příprava nastavení (bird2): nastavení volného (loose) urpf umožňuje provádět RTBH filtrování na základě zdrojových adres útočníků: # sysctl -w net.ipv4.conf.all.rp_filter=2 net.ipv4.conf.all.rp_filter = 2 konfigurace nástroje BIRD zahrnuje vytvoření statické cesty 192.0.2.1/32 vedoucí do černé díry a BGP protokolu BGP-BIRD3, který importuje všechny cesty z oznamovacího stroje bird3, příprava nastavení (bird3) dynamické přidávání pravidel je založena na importu statických cest do černé díry z kernelové tabulky, které se propagují je přes BGP protokol BGP-BIRD2 na přijímací stroj bird2, přidání pravidla (bird3): # ip route add blackhole 10.1.1.11 odstranění pravidla (bird3): # ip route del blackhole 10.1.1.11 29

4. Implementace metod obrany sítě zobrazení akcí (bird3) první příkaz umožňuje vypsat importované statické cesty vedoucí do černé díry, druhý slouží pro ověření spojení s přijímacím směrovačem: # birdc show route grep blackhole 10.1.1.11/32 blackhole [kernel1 12:54:06] * (10) # birdc show proto BIRD2 name proto table state since info BIRD2 BGP master up 10:44:28 Established zobrazení akcí (bird2) vypsání části směrovací tabulky, která nyní obsahující importovanou cestu do černé díry: # birdc show route 10.1.1.0/24 via 10.1.3.1 on eth1 [BIRD1 11:58:38] * (100) [AS100i] 10.1.1.11/32 blackhole [BIRD3 14:32:21 from 10.1.4.20] * (100/-) [i] 192.0.2.1/32 blackhole [static1 11:38:45] * (200) 4.3.2 Přesměrování provozu pomocí RTBH Pomocí mechanismu RTBH lze provádět přesměrování nastaví-li se adresa příštího skoku, která neodkazuje do černé díry. Díky tomu je možné použít BIRD pro přesměrování na vyhrazené zařízení, na kterém proběhne filtrování provozu. Protože je však RTBH pravidlo importováno do globální směrovací tabulky zařízení, není možné bez dalších úprav vrátit upravený (vyčištěný) provoz původnímu příjemci. K tomuto účelu byla nasazena metoda VRF (Virtual Routing and Forwarding), která využívá lokální směrovací tabulku. Na obrázku 4.3 je schematicky zachycena komunikace mezi počítači host1 a host3. V platnosti je akce pro přesměrování provozu cílové IP adresy host3 na IP adresu controller. Komunikace začíná odeslání zprávy z počítače host1 (modré šipky). Na rozhraní eth1 1 zařízení bird2 se nejprve rozhoduje na základě globální směrovací tabulky, kam se mají směrovat pakety pro host3. Tato tabulka obsahuje cesty, aby byly pakety směrovány přes rozhraní eth3 na controller. Pokud na tomto počítači není provoz filtrován, vrací se zpět na rozhraní eth3 2 zařízení bird2. Při rozhodování o směrování je dotázána lokální směrovací tabulka, která již neobsahuje cestu pro přesměrování provozu. 30

4. Implementace metod obrany sítě controller eth3 směrování 2 host3? lokální směrovací tabulka via eth2 bird2 host1 eth1 směrování 1 host3? host1? globální směrovací tabulka via eth3 via eth1 3 eth2 směrování host3 Obrázek 4.3: Schéma zpracování paketu a přesměrování provozu Pakety jsou směrovány skrze rozhraní eth2 na host3. Odpověď počítače host2 (oranžové šipky) přichází na rozhraní eth2 3 a pakety jsou směrovány přímo přes rozhraní eth1 příjemci zprávy. příprava nastavení (bird2) zahrnuje následující kroky: definování nové lokální směrovací tabulky reinject v souboru /etc/iproute2/rt_tables nastavení a ověření, že se pakety příchozí na rozhraní eth3 budou řídit podle lokální směrovací tabulky reinject: # ip rule add iif eth3 pref 10 lookup reinject # ip rule list 0: from all lookup local 10: from all iif eth3 lookup reinject 32766: from all lookup main 32767: from all lookup default konfigurace nástroje BIRD (bird2) pro správné směrování vráceného vyčištěného provozu není použita globální směrovací tabulka, ale lokální tabulka reinject. Ta je synchronizovaná s globální směrovací tabulkou a jsou z ní odstraněny cesty importované z oznamovacího stroje bird3. příprava nastavení (bird3) konfigurace nástroje BIRD: načti z kernelové tabulky statické směrovací informace o statických cestách pro přesměrování provozu, 31

4. Implementace metod obrany sítě propaguj cesty přes BGP protokol BGP-BIRD2 na přijímací stroj bird2. přidání pravidla: # ip route add 10.1.1.11/32 via 10.1.5.11 dev eth1 proto static onlink odstranění pravidla: # ip route del 10.1.1.11/32 via 10.1.5.11 dev eth1 proto static onlink zobrazení akcí (bird3) vypsání importovaných cest pro přesměrování a ověření spojení s přijímacím směrovačem BGP-BIRD2: 1 # birdc show route grep -v blackhole 2 10.1.4.11/32 via 10.1.5.11 on eth1 [kernel1 15:45:36] * (10) 3 # birdc show proto BGP-BIRD2 4 name proto table state since info 5 BIRD2 BGP master up 14:40:05 Established zobrazení akcí (bird2) směrovací tabulka obsahuje importovanou cestu pro přesměrování provozu (3), která nahrazuje původně používanou cestu (2) pro IP adresu 10.1.4.11/32: 1 # birdc show route 2 10.1.4.0/24 dev br0 [direct1 15:16:55] * (240) 3 10.1.4.11/32 via 10.1.5.11 on eth3 [BIRD3 16:22:12 from 10.1.4.20] * (100/0) [i] 32

5 Aktivní obrana sítě a její implementace Aktivní obrana sítě umožňuje potlačit kybernetické útoky na základě detekce útoku. Koncept byl testován v projektu bezpečnostního oddělení Ústavu výpočetní techniky Masarykovy univerzity (ÚVT MU) v letech 2008-2012 [37]. V rámci navazujícího projektu jsem se v letech 2013-2015 podílel na rozvinutí aktivní obrany sítě tak, aby byly využity data získané monitorováním sítě pomocí IP toků. Praktickým výstupem projektu je webová aplikace CPAND (Centrální bod aktivní obrany), které poskytuje uživatelské prostředí pro správu aktivní obrany sítě. Aplikace umožňuje automaticky i manuálně provádět metody obrany, aby na síťových zařízeních mohlo dojít k potlačení kybernetického útoku. V této kapitole jsou definovány principy aktivní obrany. Na to navazuje popis klíčových částí návrhu a implementace webové aplikace CPAND. Jedná se o prvotní implementaci aplikace schopné provádět aktivní obranu sítě, na kterou lze v budoucnu navázat a rozšířit ji. Aplikace byla použita v praktické části diplomové práce jako prostředek pro realizaci obranných mechanismů. Z licenčních důvodu není zdrojový kód aplikace součástí diplomové práce, protože výsledky projektu (veřejné zakázky) nemohou být volně šířeny. 5.1 Návaznost aktivní obrany sítě na monitorování sítě Pomocí NetFlow/IPFIX toků je možné provádět monitorování i ve vysokorychlostních sítích [38], což umožňuje detekovat útoky v reálném čase. IP toky poskytují informace z vrstev L3 a L4 OSI modelu. Konkrétně kdo komunikoval s kým, jak dlouho, jaký použil protokol a kolik dat přenesl. Na obrázku 5.1 je zobrazen vývoj využívání informací získaných informací z IP toků: účtování řešení bezp. incidentů detekce útoků aktivní obrana 1 pasivní využití 2 aktivní využití Obrázek 5.1: Vývoj využití informací získaných z IP toků 33

5. Aktivní obrana sítě a její implementace ➀ Pasivní využití se vyvíjelo následovně: (a) účtování sítě a jejich služeb (accounting) agregací získaných informací na základě IP adres poskytovatel Internetu určoval počet přenesených dat u každého zákazníka, (b) řešení bezpečnostních incidentů (incident handling) pomocí toků je možné zachytit, uložit a analyzovat síťový provozu za účelem objevení zdroje útoku nebo bezpečnostního incidentu, (c) detekce útoků a anomálií, ADS (anomaly detection system) umožňuje provádět automatickou detekci kybernetických útoků a anomálií v reálném čase. ➁ Aktivní využití má za cíl detekované útoky automaticky potlačit. K tomu má sloužit aktivní obrana sítě (active network defense). Na základě informací o detekovaném útoku dojde aktivně k automatické změně nastavení obranných mechanismů v síti. 5.2 Principy aktivní obrany sítě Koncept aktivní obrany sítě zahrnuje možnostmi ochrany sítě před kybernetickými útoky. Termín vyjadřuje automatizovaný (aktivní) přístup pro nastavení obranných mechanismů, nikoliv obranu formou protiútoku. Aktivní obrana se skládá ze dvou kroků (viz obrázek 5.2): ➀ detekce útoku zdrojem dat může být SIEM (management bezpečnostních informací a událostí), ADS nebo operátor, ➁ automatizované nastavení obrany na vhodném síťovém zařízení (např. směrovač, přepínač nebo firewall). SIEM uživatel ADS 1 detekce útoku 2 nastavení obrany firewall směrovač přepínač Obrázek 5.2: Koncept schématu aktivní obrany sítě 34

5. Aktivní obrana sítě a její implementace Aktivní obrana umožňuje proměnit systém detekce průniku (např. ADS založený na IP tocích) na systém schopný potlačit kybernetické útoky. Dále je používána následující terminologie: akce aktivní obrany nastavení obrany pro potlačení útoku, typ akce aktivní obrany dělí se podle metody obranného mechanismu na filtrování, omezování a přesměrování provozu, druh akce aktivní obrany závisí na způsobu vyvolání akce: automatická akce akce vyvolaná automaticky na základě přijaté detekce útoku, manuální akce akce vyvolaná na povel uživatele, zařízení aktivní obrany zařízení, na kterém je možné pomocí skriptovacího jazyka nastavit akce aktivní obrany, nasazená akce aktivní obrany nastavený obranný mechanismus na zařízení aktivní obrany. Akce mohou ovlivňovat různou část provozu, a to na základě údajů v pravidlech akce (např. zdrojová nebo cílová IP adresa, porty). Údajem akce přitom nemusí být pouze IP adresa koncového zařízení, ale celá podsíť. Akce se nastavují na zařízeních aktivní obrany, které provádí potlačení síťových útoků. Pokud je nutné měnit konfiguraci zařízení (např. u nástroje iptables), je k tomu vhodné použít vzdálený přístup pomocí protokolu SSH. Dalším aspektem aktivní obrany je schopnost automaticky vybrat správné zařízení aktivní obrany pro zastavení útočníka. K efektivnímu zastavení útoku se doporučuje nasadit akci co nejblíže k útočníkovi, aby útočníkův provoz zbytečně neprocházel síťovými zařízeními. Útočník se dá klasifikovat, podle toho, zda pochází z vnější nebo vnitřní sítě: vnější útočník by měl být ovlivněn akcí na hraničním směrovači spravované sítě, vnitřní útočník by měl být ovlivněn na nejbližším přepínači nebo směrovači, jinak není možné zabránit útokům ve vnitřní síti. 35

5. Aktivní obrana sítě a její implementace 5.3 Návrh webové aplikace CPAND V rámci projektu Bezpečnostního oddělení ÚVT MU byly principy aktivní obrany sítě implementovány formou webové aplikace CPAND (Centrální bod aktivní obrany). V této sekci jsou představeny klíčové části návrhu a implementace této aplikace, na jejímž vývoji jsem se hlavní měrou podílel. Jedná se o prvotní realizaci principů aktivní obrany sítě a díky praktickému nasazení aplikace může být tento koncept dále rozvíjen. 5.3.1 Analýza požadavků Cílem projektu bylo zvýšit ochranu sítě pomocí automatického potlačení detekovaných kybernetických útoků. Spouštěcím mechanismem akcí aktivní obrany mají být události o útoku (events) reportované aplikací SIEM (management bezpečnostních informací a událostí). Uživatel aplikace má být schopen nastavit, pro které typy událostí bude provedena automatická akce, jaký bude typ akce (filtrování nebo omezování provozu) a délku platnosti akce. U automatických akcí bude preferováno omezování provozu. Zároveň má být uživatel aktivní obrany sítě schopen provést manuální akci na zadaném nebo automaticky zvoleném zařízení. Uživatel má dále mít přehled o aktuálně nasazených akcích a možnost je zrušit před uplynutím platnosti akce. Obranný mechanismus pro potlačení útoku má být nasazen na vhodném síťovém zařízení. Toto zařízení aktivní obrany není fyzickou součástí stroje s aplikací SIEM, ale je dostupné z lokální sítě. Z tohoto důvodu musí být zařízení konfigurovatelné vzdáleně. Zadavatel projektu blíže nespecifikoval typ a výrobce zařízení použitého pro obranu sítě, proto musí být poskytnuta možnost rozšířit typ podporovaných zařízení aktivní obrany. 5.3.2 Návrh částí aplikace CPAND Na základě analýzy požadavků bylo rozhodnuto, že aktivní obrana sítě bude implementována pomocí samostatné webové aplikace. Ta poskytne rozhraní pro uživatele a zároveň zprostředkuje nastavení akcí na zařízeních aktivní obrany. Navržená aplikace se skládá z několika částí, které jsou znázorněny na obrázku 5.3: 36

5. Aktivní obrana sítě a její implementace aplikace uživatel 2 front-end 4 databáze 6 časovač SIEM 5 zpracování události 1 back-end 3 moduly zařízení Obrázek 5.3: Návrh částí webové aplikace CPAND a interakcí mezi nimi ➀ back-end představuje hlavní část aplikace, která zpracovává požadavky na vytvoření nebo odstranění akcí aktivní obrany a po jejich provedení aktualizuje v databázi tabulku nastavených akcí, ➁ front-end poskytuje grafické rozhraní pro uživatele a umožňuje vytvářet a odstranit akce, spravovat zařízení aktivní obrany aj., ➂ moduly umožňují automatizované nastavení obranných mechanismů na zařízeních aktivní obrany, ➃ databáze ukládá informace, např. o akcích a zařízeních, ➄ zpracování události umožňuje vyvolat automatickou akci na základě přijaté události aplikace SIEM, ➅ časovač kontroluje na základě údajů v databázi časový limit akce po vypršení času je odeslán požadavek na odstranění akce. Aby bylo možné podporovat různá zařízení aktivní obrany sítě, uživatel aplikace CPAND může přidávat vlastní moduly 3. Díky tomu je dosažena nezávislost aplikace na typu ovládaného zařízení aktivní obrany. Další výhodou je zapouzdření funkcionality nastavení obranných mechanismů v rámci modulů. Pro každý typ nebo výrobce zařízení (např. Cisco, firewall iptables) má vzniknout specifický modul, který umožní provede akce aktivní obrany. Back-end 1 nejprve zpracuje požadavky na vyvolání akce a poté volá funkce modulů 3. Po vykonání příslušné akce modulem (např. filtruj zadaného útočníka) back-end pomocí návratové hodnoty určí, zda byla akce nasazena. 37

5.3.3 Zpracování akcí aktivní obrany 5. Aktivní obrana sítě a její implementace Automatické a manuální akce aktivní obrany se liší svým zpracováním. Pro vyvolání manuální akce uživatel vyplňuje údaje týkající se útočníka, oběti, typu akce, časového trvání a použití portů v akci. Naproti tomu automatická akce využívá údaje získané z události aplikace SIEM, které však obsahují pouze identifikátor události, zdrojové a cílové údaje. Aby aplikace CPAND věděla, co má s těmito údaji udělat, musí uživatel nejprve v aplikaci vytvořit tzv. definici akce. Nejprve se vyplní údaje o typu akce, časovém trvání a použití portů. Dále definice akce obsahuje identifikátor události, hodnotu minimálního rizika pro vytvoření akce a zda zdrojové/cílové údaje v události odpovídají útočníkovi. Na obrázku 5.4 jsou schematicky znázorněny odlišenosti ve zpracování automatické akce 2 a manuální akce 3. Automatická akce 2 bude provedena při splnění následujících podmínek: existuje definice akce (viz 1) pro daný identifikátor události, riziko události musí být vyšší rovno hodnotě v definici akce. Pro oba typy akcí jsou poté připraveny údaje a je automaticky vybráno zařízení aktivní obrany, na kterém bude akce nastavena. Automatický výběr se neprovádí, pokud uživatel v manuální akci zvolil zařízení. uživatel 1 2 SIEM uživatel 3 ulož definici akce zpracuj událost příprava údajů databáze NE existuje definice akce? ANO vybráno zařízení? NE ANO NE dostatečné riziko? automaticky vyber zařízení akce nebude provedena ANO nastav akci na zařízení Obrázek 5.4: Schéma zpracování manuální a automatické akce 38

5.3.4 Zařízení aktivní obrany 5. Aktivní obrana sítě a její implementace Dalším klíčovou částí návrhu aplikace bylo určit, pomocí jakých údajů definovat zařízení aktivní obrany, aby bylo možné provádět automatický výběr zařízení. Na základě obecných požadavků byla v projektu zkoumána obrana sítě pomocí přepínače Cisco, firewallu Cisco ASA a linuxového firewallu iptables. Cisco zařízení pro filtrování a omezování provozu používají seznamy ACL, které se používají per rozhraní i směr. Podobně lze nastavit i firewall iptables, který také používá seznamy pravidel. Back-end aplikace tudíž musí modulům Cisco a iptables předat správné rozhraní (např. eth1) i směr (např. vstupní, input). Aby bylo možné splnit tyto požadavky, bylo navrženo a implementováno následující řešení. Definice zařízení aktivní obrany se v aplikaci skládá z následujících údajů: jednoznačný název zařízení, IP adresa zařízení, spravovaný rozsah sítě, jedno zvolené rozhraní na zařízení, modul aktivní obrany a přihlašovací údaje. Pro jedno fyzické zařízení zahrnují více rozhraní musí v aplikaci vzniknout několik logických zařízení, kde každé představuje konkrétní rozhraní daného fyzického zařízení. Platí, že všechna logická zařízení, která mají stejnou IP adresu, tvoří jedno fyzické zařízení. Směr na rozhraní se v definici zařízení neukládá, ale vypočítává se v závislosti na akcích, které se mají na zařízení nasadit. Aby bylo možné provádět automatický výběr zařízení a volbu směru na rozhraní, byla specifikována podmínka tzv. hierarchického návrhu sítě, pro který platí: každé síťové zařízení spravuje určitou síť, zařízení spravující stejnou síť jsou rovnocenné (např. dva hraniční směrovače), síť spravovaná jedním zařízením spadá do sítě spravované druhým zařízením (např. hraniční a vnitřní směrovač). Na obrázku 5.5 je zobrazena vnitřní síť obsahující dva směrovače R1 a R2, tři počítače A, B, C, dále pak vnější síť obsahující počítač E. Vnitřní síť splňuje požadavky kladené na hierarchickou síť, protože rozhraní eth2 a eth3 zařízení R1 vedou do sítí 10.10.1.0/24 a 10.10.2.0/24, které jsou podřazené síti 10.10.0.0/16. Na obrázku je zobrazeno fyzické zařízení R1, které je tvořeno třemi logickými zařízeními 1, 2 a 3. 39

5. Aktivní obrana sítě a její implementace 10.10.1.10 A B 10.10.1.20 C 10.10.20.30 10.10.1.0/24 R2 eth2 2 3 eth3 10.10.2.0/24 R1 eth1 1 E 11.11.10.20 10.10.0.0/16 vnější síť Obrázek 5.5: Příklad topologie hierarchické sítě Směr na rozhraní lze odvodit na základě IP adresy akce a znalosti hierarchického návrhu, např. akce pro uživatele E na rozhraní eth1 1 bude mít vstupní směr (input), protože provoz uživatele E vstupuje do R1, akce pro uživatele E na rozhraní eth2 2 bude mít výstupní směr (output), protože provoz uživatele E opouští R1. 5.3.5 Automatický výběr zařízení aktivní obrany Na základě hierarchického návrhu sítě byl navržen a implementován algoritmus NajdiZařízení, který pro akce automaticky vybere optimální zařízení. Tento algoritmus pracuje se strukturou haše všech definovaných zařízení. Aplikace pro každou zdrojovou IP adresu útočníka v akci (resp. cílovou, pokud není vyplněna) provede porovnání se spravovanými sítěmi všech zařízení. Na konci algoritmu je nalezeno optimální vnitřní zařízení (inner, IP adresa akce náleží do spravované síti) nebo vnější zařízení (outer, IP adresa akce nespadá do spravované sítě). Po vytvoření zařízení 1, 2 a 3 podle obrázku 5.5 byla vytvořena manuální akce pro filtrování útočníků B, C a E, která ověřila správnost algoritmu. Útočník B je filtrování na rozhraní eth2 2 (výstupní směr), útočník C na rozhraní eth3 3 (výstupní směr) a vnější útočník E na rozhraní eth1 1 (vstupní směr). Je nutné počítat s tím, že filtrování útočníka B nedokáže zabránit útokům na oběť A. Za tímto účelem by v aplikaci muselo být definováno zařízení R2, které je blíž k útočníkovi. 40

5. Aktivní obrana sítě a její implementace vstup : množina hašů Dev o velikosti n 1, hledaná IP adresa ip výstup: množina hašů F nd(dev) nalezených zařízení 1 Vyber zařízení dev Dev[0]; 2 Inicializuj F nd(net, devs) dev(net, id); 3 if ip dev(net) then 4 F nd(position) inner ; 5 else 6 F nd(position) outer ; 7 end 8 for i 1 to n 1 do 9 Vyber zařízení dev Dev[i]; 10 if ip dev(net) then // síť obsahuje ip 11 if F nd(position) = inner then 12 if F nd(net) = dev(net) then 13 F nd(devs) F nd(devs id); 14 else if dev(net) F nd(net) then 15 F nd(net, devs) dev(net, id); 16 else 17 F nd(net, devs) dev(net, id); 18 F nd(position) inner ; 19 end 20 else // síť neobsahuje ip 21 if F nd(position) = outer then 22 if F nd(net) = dev(net) then 23 F nd(devs) F nd(devs id); 24 else if dev(net) F nd(net) then 25 F nd(net, devs) dev(net, id); 26 end 27 end Algoritmus NajdiZařízení: výběr optimálního zařízení aktivní obrany 41

5. Aktivní obrana sítě a její implementace 5.4 Přehled použití webové aplikace CPAND Po představení klíčových částí návrhu aplikace CPAND bude stručně představeno její používání. Webová aplikace byla implementována a nasazena v rámci projektu Bezpečnostního oddělení ÚVT MU. Aplikace byla naprogramována pomocí skriptovacího jazyku Perl a pro ukládání dat byla použita databáze MySQL. Po ukončení vývoje a projektového testování byla aplikace nasazena na specializovaném hardwarové zařízení. Díky napojení aplikace na SIEM byly ověřeny automatické akce pro potlačení kybernetických útoků v reálném čase. Akce aktivní obrany byly otestovány na dvou základních modulech pro zařízení Cisco ASA a linuxový firewall iptables. Díky těmto modulům bylo ověřeno nasazení filtrování provozu a omezování provozu v lokální síti. 5.4.1 Stručný přehled aplikace CPAND Aplikace CPAND se skládá z několika webových stránek, přístupných z hlavního menu aplikace: úvodní obrazovka (Dashboard) poskytuje informace o nastavených akcích a výpisy informací z log souborů, v nabídce akce (Actions) je možné spravovat definice automatických akcí aktivní obrany a vytvářet manuální akce (5.6), nabídka zařízení (Devices) slouží ke správě definic zařízení a ke správě akcí nastavených na zařízeních (vložení a odstranění akce, zobrazení nastavení a odstranění všech akcí, viz obrázek 5.7), v nabídce logy (Logs) může uživatel prohlížet informace o akcích a o aplikaci, které se ukládají do dvou souborů logu, nabídka konfigurace (Configuration) umožňuje uživatelům nahrávat nové moduly aktivní obrany, dávat vybrané IP adresy na whitelist a zobrazit uživatele přistupující do aplikace. Manuální akci aktivní obrany lze vytvořit dvěma způsoby. Jednodušším možností, dostupnou přes nabídku Actions/Perform an action (akce/vykonat akci, viz obrázek 5.6), je nasadit akci na automaticky 42

5. Aktivní obrana sítě a její implementace Obrázek 5.6: Ukázka webové aplikace: vyplnění manuální akce zvolené zařízení aktivní obrany. Alternativně může uživatel vložit manuální akci na předem zvolené zařízení, a to pomocí nabídky Devices/Devices actions/add device action (zařízení/akce zařízení/přidat akci na zařízení). Při vyplnění manuální akce uživatel vkládá následující údaje: IP adresu útočníka (příp. port), IP adresu oběti (příp. port), zda se mají použít porty nebo ne, typ akce (např. Block pro filtrování), časové trvání akce v minutách (0 znamená neomezenou akci). Pokud uživatel nepotřebuje specifikovat zdrojovou nebo cílovou IP adresu, může do daného pole napsat 0.0.0.0. V současné implementaci platí, že pokud je zadaná IP adresa útočníka jiná než 0.0.0.0, pak se místo zadané IP adresy oběti pro akci použije 0.0.0.0. V případě detekovaného útoku je totiž žádoucí, aby útočník nemohl útok provést i na jiný stroj ve spravované síti. Na obrázku 5.6 je uveden příklad vytvoření akce pro filtrování veškerého provozu útočníka s IP adresou 11.11.11.11 po neomezenou dobu. Po odkliknutí požadavku na provedení akce bude automaticky nalezeno nejvhodnější zařízení pro filtrování útočníka a akce na něm bude nasazena. Uživatel webové aplikace může ověřit stav akce i její nasazení, příp. odstranit nastavené akce, viz obrázek 5.7. 43

5. Aktivní obrana sítě a její implementace Obrázek 5.7: Ukázka webové aplikace: přehled nastavených akcí 5.4.2 Využití aplikace v diplomové práci Aktivní obrana byla nasazena ve virtuálním prostředí v rámci dvou scénářů pro Kybernetický polygon (KYPO, viz kapitola 6). Aplikace CPAND byla nainstalována na virtuální linuxový stroj a byla ověřena její správná funkčnost. KYPO umožnilo otestovat aktivní obranu a potlačit pomocí ní dva demonstrované DDoS útoky. Jedinou odlišností oproti projektovému nasazení byla absence automatických akcí. Protože ve virtuálním prostředí nebyla prováděna detekce útoků ani nasazena aplikace SIEM, nemohly být automatické akce demonstrovány. V rámci výzkumu nových metod pro obranu počítačové sítě jsem vytvořil moduly pro zařízení BIRD a Open vswitch. Principy metod používaných moduly byly představeny v kapitole 4. Aplikace byla rozšířena o možnost přesměrování provozu, a to pomocí nástroje BIRD. Z licenčních důvodů nejsou zdrojové kódy aplikace CPAND ani modulů součástí elektronických příloh diplomové práce. Přínos práce tím však není nijak snížen, protože principy metod obrany sítě se dají využít i bez aplikace. Ta totiž slouží pouze jako prostředník pro nastavení a ověření metod aktivní obrany sítě. 44