Projekt Liberouter hardwarová akcelerace pro sledování a analyzování provozu ve vysokorychlostních sítích Pavel Čeleda et al. celeda@liberouter.org Workshop pracovní skupiny CSIRT.CZ
Část I Úvod P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 2 / 36
Projekt Liberouter Programovatelný hardware Použití programovatelných struktur (FPGA) pro akceleraci síťových aplikací bezeztrátovost a stabilita. Vysoká flexibilita na platformě PC a open-source SW, ale možný problém s výkonem při vysoké zátěži. Liberouter = FPGA + platforma PC + open-source SW. Základní představení projektu Probíhá v rámci Výzkumného záměru sdružení CESNET (MŠM6383917201) - aktivita Programovatelný hardware. Vývoj ve spolupráci s VUT a MU - 60 řešitelů. Zapojení v tuzemských a zahraničních projektech. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 3 / 36
Rodina akceleračních karet COMBO Základní karta COMBO6X COMBO-4SFPRO 4x1Gb/s COMBO-2XFP2 2x10Gb/s Základní karta COMBO-LXT P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 4 / 36
Hardwarově akcelerované aplikace Liberouter - IPv6 směrovač. IDS - vyhledávání vzorů a regulární výrazy pro SNORT. NIFIC - filtrování datového provozu. FlowMon - monitorování toků. 1 Gbps Ethernet 1 Gbps Ethernet 1 Gbps Ethernet Network interface block Network interface block Network interface block Application Filtering Monitoring IPv4/IPv6 Router Intrusion detection system Cryptography Packet storage 1 Gbps Ethernet Network interface block Packet generator Video applications Bus Master Engine PCI X (PCI Express) Fig. 1: Akcelerační framework NetCOPE. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 5 / 36
Část II Sledování a analyzování provozu ve vysokorychlostních sítích P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 6 / 36
Znáte svoji síť? Víte o tom co se děje ve Vaší síti? Jste si jistí bezpečností Vaší sítě? Znáte kritická místa Vaší sítě? Jak se vypořádáváte s problémy ve Vaší síti? Fig. 2: Nebo je vaše počítačová síť jako Pandořina skříňka? P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 7 / 36
Monitorování toků Poskytuje informace o tom kdo, s kým, jak dlouho, jakým protokolem komunikoval a kolik přenesl dat. Vychází z principů technologie NetFlow v5/v9 a IETF IPFIX. Umožňuje sledovat síťový provoz v reálném čase. Fig. 3: Detailní pohled do sítě na základě NetFlow dat. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 8 / 36
Princip monitorování toků zdrojová a cílová IP adresa zdrojový a cílový port číslo protokolu doba trvání počet paketů suma bajtů TCP příznaky další Trvání Protokol Zdrojová IP adr:port Cílová IP adr:port Příznaky Pakety Bajty 0.000 TCP 192.168.195.164:1086 192.168.10.12:445.A... 2 84 0.577 TCP 192.168.195.132:2544 194.228.32.3:80.A.R.. 3 126 0.576 TCP 192.168.195.132:2545 194.228.32.3:80.A.R.. 3 126 0.000 UDP 192.168.60.31:4021 192.168.60.1:53... 1 55 0.000 UDP 192.168.60.31:4020 192.43.244.18:123... 1 72 30.276 TCP 192.168.192.170:61158 71.33.170.53:1358.AP... 307 368627 Fig. 4: Princip sběru statistik o komunikaci v síti. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 9 / 36
Dostupná řešení pro monitorování toků Směrovače Zaneprázdněny směrováním, monitorování toků jako doplněk. Monitorování toků není implementované ve všech modelech. Fixní umístění, možný cíl útoků. Často nezbytné vzorkování, omezené pokročilé technologie. SW NetFlow Sondy Založeno na běžném HW PC a standardní síťové karty. Limitovaný výkon (PCAP, PCI-X) a problémy stability. Vyžaduje expertní úpravy a nastavení měřicího systému. Zaplňují mezeru kde potřebujeme monitorovat a není čím. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 10 / 36
Část III Sonda FlowMon Atraktivní cesta k získání NetFlow dat. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 11 / 36
Sonda FlowMon cíle projektu Použití HW akcelerace pro monitorování IP toků. Implementace pokročilých metod pro sledování sítí. Poskytuje max. výkon a stabilitu pro velké sítě a páteřní linky. LAN LAN administrátor Internet sonda FlowMon kolektor Fig. 5: Sonda FlowMon zapojená v síti. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 12 / 36
Sonda FlowMon více než CISCO NetFlow FlowMon Mobilní síťové zařízení bez nutné fixní pozice v síti. Nezávislost na používané síťové infrastruktuře. Založeno na Linuxu, neomezené množství chytrých rozšíření. Nízká zátěž systému (< 5%) pro nevzorkovaný provoz. Sleduje všechen síťový provoz za všech okolností. Splňuje standardy - NetFlow v5/9 a IPFIX. Uživatelsky definovatelné šablony pro NetFlow v9 a IPFIX. Současný export dat na více kolektorů. Bezpečná konfigurace pomocí protokolu NETCONF a SSH. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 13 / 36
Architektura sondy FlowMon 1 Gb/s Zpracování paketů 1 Gb/s Paměť toků Exportér Kolektor Zpracování paketů 1 Gb/s 1 Gb/s Síťová rozhraní Karta COMBO Server NetFlow kolektor Fig. 6: Blokové schéma sondy FlowMon. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 14 / 36
Hardware sondy FlowMon Založeno na rodině akceleračních karet COMBO. Časově kritické operace jsou prováděny v FPGA. Různé firmwary - NetFlow, IDS, NIC aj. Fig. 7: COMBO6X - PCI-X 64/66MHz akcelerační karta. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 15 / 36
Síťová rozhraní COMBO-4SFPRO 1 Rychlost Médium 10 Mb/s - 1000 Mb/s měď 1000 Mb/s jednovidové vlákno 1000 Mb/s mnohovidové vlákno 1 2 COMBO-2XFP2 2 Rychlost Médium 10 Gb/s měď 10 Gb/s jednovidové vlákno 10 Gb/s mnohovidové vlákno 2 1 Gb/s monitorovací porty, 2 1 Gb/s rozbočovací porty 1 10 Gb/s monitorovací port, 1 10 Gb/s rozbočovací port P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 16 / 36
Sonda FlowMon vlastnosti firmwaru Rozhranní 2 1 Gb/s nebo 1 10 Gb/s. Podpora pro IPv4, IPv6, VLAN, MPLS. 512 000 záznamů v paměti toků. Statické a náhodné vzorkování. Aktivní a neaktivní timeouty. Funkce opakovače a rozbočovače. SFP a XFP transceivery (media konvertor). P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 17 / 36
SW Architektura sondy FlowMon Založeno na OS Linux s jádry řady 2.6. Vzdálená konfigurace přes SSH a web. Export dat ve formátech NetFlow ver. 5/9 a IPFIX. Kolektor 1 Kolektor n WWW rozhraní NetFlow v5/9, IPFIX Exportér 1 NetFlow v5/9, IPFIX Exportér n flowmond Uživatelský prostor Libcsflow Prostor jádra NetFlow ovladač HW Karta COMBO P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 18 / 36
Export dat ze sondy FlowMon NetFlow paket Anonymizace dat Filtrování toků Vzorkování toků Fig. 8: Struktura exportéru. Export na více kolektorů. Jednoznačná identifikace exportéru. NetFlow v5/9 (RFC 3954) a IPFIX (RFC 3917). Uživatelské šablony pro NetFlow v9 a IPFIX. Anonymizace dat (AES nebo nahrazení prefixů). Filtrování exportovaných dat. Vzorkování na úrovni toků. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 19 / 36
NETCONF vzdálená konfigurace Konfigurace parametrů sondy. Výběr cílových kolektorů. Vzdálená správa systému. Standardní použití https a ssh. FlowMon probe PC configuration datastores Manager s PC FlowMon web frontend flowmond COMBO card NETCONF agent NETCONF manager temporary configuration data SSH server SSH client NETCONF over SSH connection P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 20 / 36
Výsledky testů sond Základní testy propustnosti a paměti toků. Srovnání sondy FlowMon se sondami nprobe, fprobe. Použití HW generátoru síťového provozu. 1 Gb/s NetFlow data Spirent FlowMon NfSen Fig. 9: Zapojení testovacího pracoviště. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 21 / 36
Test propustnosti Propustnost v závislosti na velikosti paketu 1.6e+06 FlowMon nprobe 1.4e+06 fprobe Počet paketů za sekundu [pps] 1.2e+06 1e+06 800000 600000 400000 200000 0 0 200 400 600 800 1000 1200 1400 1600 Velikost TCP/IP paketu [Bajty] P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 22 / 36
Test paměti toků 5e+07 Propustnosti sondy pro 10000 toků po 5000 paketech 4.5e+07 Počet zpracovaných paketů 4e+07 3.5e+07 3e+07 2.5e+07 2e+07 1.5e+07 1e+07 5e+06 FlowMon nprobe fprobe 64 128 256 512 1024 1280 1518 Velikost TCP/IP paketu [Bajty] P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 23 / 36
Část IV Použití sondy FlowMon v praxi P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 24 / 36
Případová studie nasazení sondy Současný stav Síť bez zdrojů NetFlow dat nebo se NetFlow nevyužívá. Omezené možnosti monitorování (SNMP, tcpdump). Časté stížnosti třetích stran (phishing, DoS útoky,...). Cíle při nasazení sondy Umožnit monitorování sítě v reálném čase pomocí NetFlow. Poskytnout řešení pro odhalování problémů v síti. Zabezpečit síť proti vnitřním a vnějším hrozbám. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 25 / 36
Možné nasazení FlowMon sond v síti Kolektor s ovládacím rozhraním NETCONF Sonda FlowMon NetFlow data Sonda FlowMon Sonda FlowMon P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 26 / 36
Zapojení sondy FlowMon do sítě měděný/optický TAP monitorovaná linka FlowMon FlowMon Kolektor Kolektor Fig. 10: Režim s TAPem Fig. 11: Režim vložení do linky SPAN port FlowMon Kolektor Fig. 12: Režim se SPANem P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 27 / 36
NetFlow kolektory I Fig. 13: Výstup NetFlow dat na NfSen kolektoru. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 28 / 36
NetFlow kolektory II Sonda FlowMon byla testována s následujícími kolektory: Open source NfSen nfsen.sourceforge.net doporučené řešení. FTAS www.cesnet.cz. IBM AURORA www.zurich.ibm.com/aurora. ntop www.ntop.org. libipfix ants.fokus.fraunhofer.de/libipfix IPFIX. Komerční NetFlow Tracker www.flukenetworks.com Caligare Flow Inspector www.caligare.com P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 29 / 36
Část V Projekty využívající programovatelný hardware P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 30 / 36
GÉANT2 Security Toolset Sonda FlowMon jako zdroj NetFlow statistik z 1-10 Gb/s sítí. NFDUMP / NfSen - sběr a vizualizace NetFlow dat. Sledování provozu a podpora bezpečnosti v NREN. Řešitelé - CESNET, SWITCH a další NREN. Fig. 14: GÉANT2 Security Toolset FlowMon + NfSen P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 31 / 36
CAMNEP Network Intrusion Detection System Hardwarově akcelerovaný sběr NetFlow dat. Detekce anomálií pomocí agentních systémů. Vizualizace anomálií a síťového provozu. Řešitelé - ČVUT, MU. Financování US ARMY (ERO & CERDEC). 12000 Trustfulness Histogram - Flows 10000 θ M MINDS θ X Xu θ E Entropy pred θ V Volume pred 8000 Number of Flows 6000 4000 2000 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Trustfulness Fig. 15: Zobrazení detekovaných anomálií v síti. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 32 / 36
Další projekty a nasazení Použití sond Výzkumné projekty monitorování toků, detekce anomálií, vizualizace provozu, přesné časové značky. Průmysl Invea-Tech spin-off z projektu Liberouter. Nasazení sond GÉANT2 SWITCH, SURFnet, GRNET, Bulgarian Academy of Sciences,... CESNET a rozličné univerzity v ČR. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 33 / 36
Část VI Závěr P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 34 / 36
Závěr Sítě jsou složité a jsou vystaveny poruchám a útokům. Je těžké porozumět sítím bez jejich sledování. Programovatelný HW nabízí škálovatelné a robustní řešení. Představený framework je možné použít pro vědu a výzkum obdobně jako NetFPGA (Stanford). Systém je prověřen rutinním nasazením ve velkých sítích. Užitečnost (přidaná hodnota) je v sestavení celého řešení. Jsme otevřeni spolupráci v oblasti sítí a bezpečnosti. P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 35 / 36
Děkuji za pozornost Programovatelný HW www.liberouter.org Pavel Čeleda celeda@liberouter.org Projekt Liberouter www.liberouter.org P. Čeleda et al. Projekt Liberouter Programovatelný Hardware 36 / 36