facebook LinkedIN LinkedIN - follow
IT SYSTEMS 3/2015 , IT Security

Pokročilá analýza provozu datových sítí (2. díl)

Záznam provozu na síti a paketová analýza



InveaV tomto čtyřdílném seriálu seznamujeme čtenáře s různými metodami a přístupy k monitorování a analýze provozu datových sítí. V minulém čísle jsme si vysvětlili rozdíly mezi běžným infrastrukturním monitoringem a monitorováním provozu datové sítě. Dnes je na pořadu dne záznam provozu v plném rozsahu a tzv. paketová analýza. Ve třetím díle se pak podíváme na spojení výhod obou přístupů. V závěrečném díle si představíme možnosti sledování výkonu sítě i podnikových aplikací.


Připomeňme si princip monitorování provozu datové sítě na základě datových toků (NetFlow/IPFIX). Datové toky představují abstrakci vlastního provozu, který je agregován na základě zdrojové IP adresy, cílové IP adresy, zdrojového portu, cílového portu a čísla protokolu. Vlastní obsah komunikace není dostupný a dosahovaná míra agregace činí obvykle 500:1. Díky datovým tokům je možné analyzovat strukturu provozu, identifikovat stanice, které přenáší největší objemy dat nebo řešit problémy spojené s provozem a chybnou konfigurací datové sítě. Jednou z nových možností využití datových toků je bezpečnostní analýza označovaná jako tzv. behaviorální analýza (Network Behavior Analysis), která přináší kvalitativně jiné výsledky než běžné metody založené na principu vyhledávání signatur.

Paketová analýza, jak už název naznačuje, se zabývá analýzou vlastních přenášených dat, tedy vlastního obsahu komunikace. Nedochází zde k žádné agregaci, kompresi nebo ořezání a data jsou ukládána v původním rozsahu. Z uvedeného vyplývá, že jde o metodu extrémně náročnou na výkon i diskovou kapacitu. Pro představu – plný záznam provozu podnikové sítě, kde je průměrně přenášeno 250 Mbps, znamená datovou náročnost více než 31 MB dat za vteřinu, 1,8 GB za minutu, 108 GB za hodinu a 2,6 TB za den. V případě 10Gbps provozu se dostáváme už na těžko uvěřitelná čísla, za den by to bylo více než 100TB dat. Principiálním omezením paketové analýzy je šifrovaný provoz, kdy bez znalosti klíče nejsme schopni obsahu přenášených dat porozumět a často ani rozpoznat přenosový protokol nebo aplikaci. Přitom poměr šifrovaného provozu neustále narůstá. Podle nedávného měření realizovaného týmem CSIRT-MU je v případě webového provozu již objem šifrované komunikace, tedy protokolu HTTPS, v prostředí univerzitní sítě cca 50 %.

K paketové analýze existují dva rozdílené přístupy. První přístup je kontinuální záznam provozu v plném rozsahu, který vyžaduje adekvátní technické vybavení, zejména vysokorychlostní disková pole s dostatečnou kapacitou. Tento přístup je vhodný pouze pro kritickou infrastrukturu a sítě zvláštního určení, neboť je velmi nákladný. Zároveň je třeba zdůraznit, že problém není pouze tato data uložit, ale zejména je efektivně analyzovat a získat z nich potřebné informace. Druhý přístup označujeme jako tzv. on-demand packet capture, kdy se provádí záchyt paketů pouze v případě potřeby, typicky za účelem řešení problému se vzájemnou kompatibilitou systémů nebo zjištění ztrát nebo poškození paketů při přenosu, apod. Záchyt paketů v případě potřeby je metoda velmi jednoduchá a dostupná prakticky pro všechny správce sítě. Omezením tohoto přístupu je fakt, že vždy definuji dopředu, jaký provoz chci ukládat. Nemám tak v případě zjištění bezpečnostního incidentu možnost sáhnout do archivu provozu a získat plný záznam provozu pro jeho analýzu.

Nejznámějším nástrojem pro záchyt paketů je nástroj tcpdump v prostředí operačního systému Linux nebo WinPcap v prostředí Microsoft Windows. Správce sítě tak obvykle dorazí na příslušné místo se svým notebookem, připojí jej na tzv. mirror port (síťové rozhraní nakonfigurované tak, aby zrcadlilo vybraný provoz na daném aktivním prvku) nebo TAP (Test Access Point – speciální hardware, který slouží k pořízení kopie provozu datové linky) a pomocí některého z výše uvedených nástrojů provede záznam provozu datové sítě do souboru. Samozřejmě problém nastává v případě vzdálených lokalit, optických síťových rozhraní nebo 10Gbps infrastruktury, tedy omezení, která se na běžném notebooku obtížně překonávají. V případě rozmístění síťových sond napříč infrastrukturou je však možné tyto sondy využít rovněž jako platformu pro on-demand záchyt provozu. Je tak možné zadávat požadavky na záznam provozu vzdáleně a provoz zachytávat i v případě vysokorychlostní infrastruktury (10Gbps i vyšší rychlosti) a na různých typech rozhraní. Profesionální sondy pro záznam provozu často nabízí i pokročilé možnosti filtrování nad rámec filtrů pro třetí a čtvrtou síťovou vrstvu. Umožňují tak například nahrát konkrétní telefonní hovor uskutečněný přes VoIP nebo jiný provoz na základě aplikačního protokolu. Často možnost zaznamenat vybraný provoz v plném rozsahu do souboru nabízí i moderní firewally, zde jsme však typicky omezeni jen na perimetr datové sítě.

V okamžiku, kdy máme požadovaný provoz uložený v souboru, potřebujeme nástroj na jeho analýzu. Mimo komerčních nástrojů existuje i velmi populární nástroj Wireshark, který je vyvíjen jako open source rozsáhlou komunitou. Wireshark umí rozpoznat a dekódovat stovky protokolů a zahrnuje nástroje pro filtrování, rekonstrukci TCP spojení nebo telefonních hovorů, dešifrování provozu, extrakci dat a obecně hloubkovou analýzu paketů. Jeho použití však vyžaduje určitou úroveň znalostí rodiny protokolů TCP/IP, principů fungování datových sítí a analytické myšlení. Na webu je možné najít řadu on-line kurzů a návod, dostupné jsou také vzorové sady dat.

Pojďme se podívat na jednoduchý příklad využití paketové analýzy. Správce databázové aplikace tvrdí, že je všechno správně nakonfigurováno. Správce koncových stanic tvrdí, že klienti aplikace jsou korektně nainstalováni a nastaveni. Uživatel tvrdí, že české znaky nejsou zobrazovány správně a své tvrzení, na rozdíl od správců, lehce doloží snímkem obrazovky. Pravda je ukrytá někde v paketech, které nikdy nelžou.

V prvním kroku je nezbytné provést záznam provozu. Zaměříme se tedy na provoz klienta s databázovým serverem. Víme, že se jedná o aplikaci založenou na databázi MySQL běžící na výchozím portu 3306. IP adresa klienta je 192.168.3.2. Na základě těchto informací provedeme nastavení filtru našeho záznamu provozu. Samozřejmě by bylo možné uložit veškerý provoz daného klienta a příslušné pakety filtrovat až následně, nicméně zvolený přístup nám umožňuje snížit objem dat k následné analýze již v okamžiku pořízení těchto dat.

Obr. 1: nastavení filtru v nástroji pro záznam provozu.
Obr. 1: nastavení filtru v nástroji pro záznam provozu. V případě použití nástroje tcpdump je filtr vyjádřen textovým řetězem „host 192.168.3.2 and port 3306 and tcp“, princip je stejný.

Vytvořený soubor ve formátu pcap otevřeme v nástroji Wireshark a podíváme se, na jaké znakové sadě se klient se serverem dohodl při ustanovení spojení s databází. Vidíme, že server ohlásil klientovi znakovou sadu „LATIN2“ namísto klientem očekávané „Windows 1250“. Okamžitě tak potvrzujeme problém s konfigurací na straně serveru a je na jeho správci, aby tuto situaci řešil.

Obr. 2: nástroj WireShark, dekódované pakety protokolu MySQL s označenou znakovou sadou nastavenou ze strany serveru.
Obr. 2: nástroj WireShark, dekódované pakety protokolu MySQL s označenou znakovou sadou nastavenou ze strany serveru.

Ukázali jsme si na jednoduchém příkladu možnosti záznamu provozu v plném rozsahu a jeho následné analýzy prostřednictvím open source nástroje Wireshark. Přestože monitorování prostřednictvím datových toků zodpoví řadu otázek a umožní lokalizovat příčiny široké škály provozních problémů, má paketová analýza své nezastupitelné místo v situacích, kdy je opravdu potřeba podívat se na vlastní obsah komunikace. Analytická společnost Gartner předpovídá, že analýza datových toků bude představovat až 80 % používané technologie pro správu a monitorování datových sítí. Podíl technologie pro zaznamenávání a analýzu kompletního obsahu provozu klesne až na 20 %. Důvodem je finanční náročnost řešení pro záznam a analýzu kompletního obsahu provozu ve vysokorychlostních sítích a omezená použitelnost pro šifrovaný provoz. Role se tak obracejí – kompletní monitoring IT infrastruktury na základě datových toků vhodně doplní analýza paketů v případě potřeby. V příštím díle se podíváme na nejnovější trend efektivního spojení řešení pro monitorování datových toků s využitím prvků analýzy vlastního obsahu provozu a samozřejmě s možností plného záznamu provozu v případě potřeby jeho následné analýzy.

RNDr. Pavel Minařík, PhD. RNDr. Pavel Minařík, PhD.
Autor článku se oblastí kybernetické bezpečnosti zabývá od roku 2006. Účastnil se řady výzkumných projektů v oblasti analýzy provozu datových sítí a detekci pokročilých hrozeb jako výzkumný pracovník Ústavu výpočetní techniky Masarykovy univerzity. Během posledních čtyř let se účastnil několika desítek projektů nasazení řešení pro monitorování provozu a detekci pokročilých hrozeb. V současné době pracuje jako technologický ředitel ve společnosti INVEA-TECH zodpovědný za návrh a vývoj produktů pro Flow Monitoring a Network Behavior Analysis.
Chcete získat časopis IT Systems s tímto a mnoha dalšími články z oblasti informačních systémů a řízení podnikové informatiky? Objednejte si předplatné nebo konkrétní vydání časopisu IT Systems z našeho archivu.

Inzerce

Hlubší integrace AI v rámci platformy Fortinet Security Fabric zvyšuje úroveň zabezpečení i provozní efektivitu

Společnost Fortinet představila nejnovější aktualizace svého port­fo­lia řešení založených na ge­ne­ra­tiv­ní umělé inteligenci (GenAI), která zlepšují provoz sítí a za­bez­pe­če­ní, včetně prvního bez­peč­nost­ní­ho asistenta pro IoT s ge­ne­ra­tiv­ní umělou inteligencí na trhu.