Menu Zavrieť

Kategória: Sieťová bezpečnosť

Moloch – Možnosti použitia Molocha

Možnosti použitia Molocha

  • Autor : Tomáš Mokoš

Nástroj Moloch poskytuje rôzne príklady využitia, pričom ale množina môže byť pre jednotlivých používateľov aj širšia, pokiaľ nájdu pre Molocha aj iné uplatnenie, ako je tu uvedené.

  • DOS útoky – Analyzovanie spojení, ktoré sú podozrivé ako útoky pre odopretie služby.
  • Geolokácia – Identifikovanie krajiny pri spojení.
  • Access Intelligence – Pomáha analyzovať oprávnený/neoprávnený prístup k systémovým zdrojom, aplikáciám, serverom, prevádzkovaniu systému a funkcií. Môžeme tiež vykonať hĺbkovú analýzu pomocou značkovania (angl. taging) konkrétneho systému, aplikácie alebo služby, ktoré sú spustené v sieti.
  • Využitie portov pri spojeniach – množstvo spojení, ktoré boli spojené s konkrétnym portom.
  • Využitie URL pri spojeniach – množstvo spojení, ktoré boli spojené s konkrétnou URL pomocou dopytov.
  • Objemy dát

Na príklade ukážeme využitie Molocha pri analýze CICIDS 2017 datasetu, kde postupne analyzujeme DDoS Hulk útok.
Najskôr si prefiltrujeme prevádzku, kde pomocou filtra tags == CICIDS2017_WEDNESDAY && ip.dst == 192.168.10.50 získamé toky s cieľovou adresou webservera zo dňa útoku.

Moloch – Popis nástrojov pre sledovanie zaťaženia systému

Popis nástrojov pre sledovanie zaťaženia systému

  • Autor : Tomáš Mokoš, Marek Brodec

Nload

Verzia : 0.7.4

Je konzolová aplikácia ktorá monitoruje sieťovú pre vádzku a rýchlosť toku v reálnom čase. Získané štatistiky zobrazuje v dvoch grafoch(1 pre uplink a 1 pre downlink). Poskytuje podrobnejšie informácie o celkovom množstve prenesených dát a priemernej, aktuálnej, minimálnej a maximálnej rýchlosti. Toto rozšírenie sme používali v najjednoduchšom režime nload interface, existuje však mnoho rozšírení zobrazení a doplňujúcej konfigurácie pomocou rôznych prepínačov o ktorých sa je možné dočítať v man page aplikácie $ man nload.

Moloch – Port-Mirror

Port-Mirror

  • Autor : Tomáš Mokoš, Marek Brodec

Port-Mirror alebo zrkadlenie portov sa používa na sieťovom prepínači pre posielanie kópií sieťových paketov, ktoré je možné vidieť na jednom porte prepínača (alebo celej VLAN) pre monitorovanie siete pripojenej na inom porte prepínača. Port-Mirror sa bežne používa pre sieťové zariadenia, ktoré vyžadujú monitorovanie prevádzky v sieti, ako je napríklad systém detekcie narušenia, pasívna sonda alebo technológie real user management (RUM), ktorý sa používa na podporu riadenia výkonu aplikácií (APM).

V našom prípade nám katedra poskytla prepínač Cisco Catalyst 2960, ktorý sme nakonfigurovali tak, aby nám všetky dátové toky prechádzajúce rozhraním, ku ktorému sú pripojené zariadenia v laboratórií ďalej k Internetu, boli odzrkadlené na rozhranie, na ktorom je pripojený náš server so systémom Moloch. Z toho vyplýva, že aktuálne monitorujeme a archivujeme všetku prevádzku, ktorá prichádza alebo odchádza z laboratórií katedry.

Moloch – Záťažové testy

Záťažové testy

  • Autor : Tomáš Mokoš, Marek Brodec

V topológií bolo zariadenie pripojené k switchu so 100Mbps rýchlosťou, takže aj keď bol generovaný tok o rýchlostí 140 Mbps, tok bol neskôr na prepínači obmedzený.

Test 1 zdroj vs 1 cieľ

Spočiatku sme pri generovaní paketov z cloudu s generovanou zdrojovou adresou smerujúcich na PC v laboratóriu mali problém, pretože bezpečnostné politiky cloudu nedovolili odoslať z cloudu pakety s odlišnou zdrojovou IP adresou ako mala pridelená daná inštancia cloudu. Preto sme generovali len toky z 1 zdrojovej na 1 cieľovú IP adresu.

Moloch – Vyťaženie CPU, RAM, HDD

Vyťaženie CPU, RAM, HDD

  • Autor : Tomáš Mokoš, Marek Brodec

Vzhľadom na to, že vzorce pre zistenie koľko dní dokáže Moloch archivovať a aký hardvér by sme mali pre naše podmienky nasadiť sú len približné, rozhodli sme sa vykonať štatistiku, ktorá by nám mohla ujasniť tieto hodnoty

Zo vzorca pre výpočet počtu uzlov Elasticsearchu : ¼ * priemerná sieťová prevádzka v Gbit/s * počet dní, ktoré chceme archivovať, vyplýva, že by nám pri 2 Mbit/s dátovom toku, stačiť 1 uzol.

Moloch – Hardvérové požiadavky

Hardvérové požiadavky

  • Autor : Tomáš Mokoš

Moloch je postavený tak, aby bolo možné ho rozložiť na viacero strojov, pri väčších tokoch. Pri malých sieťach, ukážkach alebo nasadeniach len tak doma, je možné mať všetko na jednom stroji. Avšak pri zachytávaní veľkých objemov dát pri veľkých prenosových rýchlostiach sa neodporúča mať spustený Capture a Elasticsearch na rovnakom stroji. Moloch umožňuje otestovanie demo verzie softvéru priamo na webovej stránke. Moloch pri nedostatku miesta zmaže najstaršie dáta a uloží nové. Umožňuje tiež zapnúť replikácie, čoho následkom je dvojnásobok spotreby miesta na disku preto tento krok je nutné dôkladne premyslieť.

Elasticsearch a počet uzlov

Množstvo uzlov (serverov), ktoré by sme mali použiť závisí hlavne od:

Moloch – konfigurácia sieťového rozhrania

Konfigurácia sieťového rozhrania

  • Autor : Tomáš Mokoš, Marek Brodec

Vzhľadom na to, že pri veľkom toku môže dôjsť ku strate paketov, sa neodporúča, aby rozhranie ktorým prichádzajú pakety, bolo tým istým rozhraním, ktoré je pripojené k internetu, v tomto prípade rozhranie, ktorému je priradená statická IP adresa. Na serveri, ktorý sa nachádza v laboratóriu sa nachádzajú dva rozhrania, kde sa jedno využíva pre potreby odchytávania paketov (SPAN port) a druhé pre komunikáciu „von“. Preto aby sa predišlo strate paketov, sa monitorovaciemu rozhraniu na strane Molochu odporúča zvýšiť buffer na maximum a vypnúť väčšinu funkcií sieťovej karty nasledujúcimi príkazmi:

ethtool –G enp0s9 rx 4096 tx 4096 
ethtool –K enp0s9 rx off tx off gs off tso off gso off 

Maximálnu veľkosť buffera môžeme zistiť pomocou príkazu ethool -g a funkcie karty pomocou príkazu ethtool -k. Väčšinu funkcií sieťovej karty vypíname kvôli tomu, že sa aj tak nevyužívajú, keďže chceme zachytávať to, čo sa nachádza na sieti a nie to čo vidí operačný systém.