Snort ili Suricata. Dio 2: Instalacija i početno podešavanje Suricate

Prema statistikama, obim mrežnog saobraćaja raste za oko 50% svake godine. To dovodi do povećanja opterećenja opreme i, posebno, povećava zahtjeve performansi IDS / IPS-a. Možete kupiti skupi specijalizovani hardver, ali postoji jeftinija opcija - uvođenje jednog od sistema otvorenog koda. Mnogi administratori početnici smatraju da je teško instalirati i konfigurirati besplatni IPS. U slučaju Suricate, ovo nije sasvim tačno - možete ga instalirati i početi odbijati tipične napade sa skupom besplatnih pravila za nekoliko minuta.

Snort ili Suricata. Dio 2: Instalacija i početno podešavanje Suricate
Snort ili Suricata. Dio 1: Odabir besplatnog IDS/IPS-a za zaštitu vaše korporativne mreže

Zašto nam treba još jedan otvoreni IPS?

Dugo se smatrao standardom, Snort je bio u razvoju od kasnih devedesetih, tako da je prvobitno bio jednonitni. Tokom godina, sve moderne funkcije su se pojavile u njemu, kao što je podrška za IPv6, mogućnost analize protokola na nivou aplikacije ili univerzalni modul za pristup podacima.

Jezgra Snort 2.X je naučila da radi sa više jezgara, ali je ostala jednonitna i stoga ne može optimalno da iskoristi prednosti modernih hardverskih platformi.

Problem je riješen u trećoj verziji sistema, ali se pripremala toliko dugo da je Suricata, napisana od nule, uspjela da se pojavi na tržištu. Godine 2009. počeo je da se razvija upravo kao multi-threaded alternativa za Snort, koji ima IPS karakteristike izvan kutije. Kod se distribuira pod GPLv2 licencom, ali finansijski partneri projekta imaju pristup zatvorenoj verziji motora. U prvim verzijama sistema pojavili su se neki problemi skalabilnosti, ali su brzo riješeni.

Zašto Surica?

Suricata ima nekoliko modula (slično Snort): hvatanje, hvatanje, dekodiranje, detekcija i izlaz. Po defaultu, uhvaćeni promet ide prije dekodiranja u jednom toku, iako to dodatno opterećuje sistem. Po potrebi se niti mogu podijeliti u postavkama i rasporediti među procesore - Suricata je vrlo dobro optimizirana za određeni hardver, iako to više nije HOWTO nivo za početnike. Također je vrijedno napomenuti da Suricata ima napredne alate za HTTP inspekciju bazirane na HTP biblioteci. Mogu se koristiti i za evidentiranje prometa bez otkrivanja. Sistem takođe podržava IPv6 dekodiranje, uključujući IPv4-in-IPv6 tunele, IPv6-in-IPv6 tunele i još mnogo toga.

Za presretanje saobraćaja mogu se koristiti različiti interfejsi (NFQueue, IPFRing, LibPcap, IPFW, AF_PACKET, PF_RING), au Unix Socket modu možete automatski analizirati PCAP datoteke koje je uhvatio drugi sniffer. Osim toga, Suricata modularna arhitektura olakšava uključivanje novih elemenata za hvatanje, dekodiranje, raščlanjivanje i obradu mrežnih paketa. Takođe je važno napomenuti da je u Suricati saobraćaj blokiran pomoću redovnog filtera operativnog sistema. GNU/Linux ima dvije opcije kako IPS radi: preko NFQUEUE reda (NFQ mod) i preko nulte kopije (režim AF_PACKET). U prvom slučaju, paket koji ulazi u iptables šalje se u NFQUEUE red, gdje se može obraditi na nivou korisnika. Suricata ga vodi prema svojim pravilima i izdaje jednu od tri presude: NF_ACCEPT, NF_DROP i NF_REPEAT. Prva dva su sama po sebi razumljiva, dok posljednji omogućava da se paketi označi i pošalju na vrh trenutne iptables tabele. AF_PACKET način rada je brži, ali nameće niz ograničenja sistemu: mora imati dva mrežna sučelja i raditi kao gateway. Blokirani paket se jednostavno ne prosljeđuje na drugi interfejs.

Važna karakteristika Suricate je mogućnost korištenja razvoja za Snort. Administrator ima pristup, posebno, skupovima pravila Sourcefire VRT i OpenSource Emerging Threats, kao i komercijalnom Emerging Threats Pro. Objedinjeni izlaz se može raščlaniti koristeći popularne pozadinske programe, PCAP i Syslog izlaz je također podržan. Sistemske postavke i pravila pohranjeni su u YAML fajlovima, koji se lako čitaju i mogu se automatski obraditi. Suricata motor prepoznaje mnoge protokole, tako da pravila ne moraju biti vezana za broj porta. Osim toga, koncept bitova protoka se aktivno praktikuje u pravilima Suricate. Za praćenje okidača, varijable sesije se koriste za kreiranje i primjenu različitih brojača i zastavica. Mnogi IDS-ovi tretiraju različite TCP veze kao zasebne entitete i možda neće vidjeti vezu između njih koja ukazuje na početak napada. Suricata pokušava sagledati cijelu sliku i u mnogim slučajevima prepoznaje zlonamjerni promet distribuiran preko različitih konekcija. O njegovim prednostima možete pričati dugo, bolje je da pređemo na instalaciju i konfiguraciju.

Kako instalirati?

Suricatu ćemo instalirati na virtuelni server koji koristi Ubuntu 18.04 LTS. Sve naredbe moraju biti izvršene u ime superkorisnika (root). Najsigurnija opcija je da SSH uđete na server kao običan korisnik, a zatim koristite sudo uslužni program za podizanje privilegija. Prvo morate instalirati pakete koji su nam potrebni:

sudo apt -y install libpcre3 libpcre3-dev build-essential autoconf automake libtool libpcap-dev libnet1-dev libyaml-0-2 libyaml-dev zlib1g zlib1g-dev libmagic-dev libcap-ng-dev libjansson-dev pkg-config libnetfilter-queue-dev geoip-bin geoip-database geoipupdate apt-transport-https

Povezivanje eksternog spremišta:

sudo add-apt-repository ppa:oisf/suricata-stable
sudo apt-get update

Instalirajte najnoviju stabilnu verziju Suricate:

sudo apt-get install suricata

Ako je potrebno, uredite naziv konfiguracijskih datoteka, zamjenjujući zadani eth0 stvarnim imenom vanjskog interfejsa servera. Zadane postavke su pohranjene u /etc/default/suricata datoteci, a prilagođene postavke su pohranjene u /etc/suricata/suricata.yaml. Konfiguriranje IDS-a je uglavnom ograničeno na uređivanje ove konfiguracijske datoteke. Ima puno parametara koji se po imenu i namjeni podudaraju s analogima iz Snort-a. Sintaksa je, međutim, potpuno drugačija, ali je fajl mnogo lakši za čitanje od Snort konfiguracija i dobro je komentarisan.

sudo nano /etc/default/suricata

Snort ili Suricata. Dio 2: Instalacija i početno podešavanje Suricate

и

sudo nano /etc/suricata/suricata.yaml

Snort ili Suricata. Dio 2: Instalacija i početno podešavanje Suricate

Pažnja! Prije početka, vrijedi provjeriti vrijednosti varijabli iz odjeljka vars.

Da biste dovršili postavljanje, morat ćete instalirati suricata-update da ažurirate i učitate pravila. Ovo je prilično lako učiniti:

sudo apt install python-pip
sudo pip install pyyaml
sudo pip install <a href="https://github.com/OISF/suricata-update/archive/master.zip">https://github.com/OISF/suricata-update/archive/master.zip</a>
sudo pip install --pre --upgrade suricata-update

Zatim moramo pokrenuti naredbu suricata-update da instaliramo Emerging Threats Open skup pravila:

sudo suricata-update

Snort ili Suricata. Dio 2: Instalacija i početno podešavanje Suricate

Da vidite listu izvora pravila, pokrenite sljedeću naredbu:

sudo suricata-update list-sources

Snort ili Suricata. Dio 2: Instalacija i početno podešavanje Suricate

Ažurirajte izvore pravila:

sudo suricata-update update-sources

Snort ili Suricata. Dio 2: Instalacija i početno podešavanje Suricate

Ponovno pregledavanje ažuriranih izvora:

sudo suricata-update list-sources

Ako je potrebno, možete uključiti dostupne besplatne izvore:

sudo suricata-update enable-source ptresearch/attackdetection
sudo suricata-update enable-source oisf/trafficid
sudo suricata-update enable-source sslbl/ssl-fp-blacklist

Nakon toga, morate ponovo ažurirati pravila:

sudo suricata-update

Ovim je završena instalacija i početna konfiguracija Suricate u Ubuntu 18.04 LTS. Tada počinje zabava: u sljedećem članku ćemo povezati virtualni server na uredsku mrežu putem VPN-a i početi analizirati sav dolazni i odlazni promet. Posebnu pažnju posvetit ćemo blokiranju DDoS napada, aktivnosti zlonamjernog softvera i pokušaja iskorištavanja ranjivosti usluga dostupnih sa javnih mreža. Radi jasnoće, biće simulirani napadi najčešćih tipova.

Snort ili Suricata. Dio 2: Instalacija i početno podešavanje Suricate

Snort ili Suricata. Dio 2: Instalacija i početno podešavanje Suricate

izvor: www.habr.com

Dodajte komentar