Snort või Suricata. Osa 2: Suricata paigaldamine ja esialgne seadistamine

Statistika järgi kasvab võrguliikluse maht igal aastal umbes 50%. See toob kaasa seadmete koormuse suurenemise ja suurendab eriti IDS / IPS jõudlusnõudeid. Saate osta kallist spetsiaalset riistvara, kuid on ka odavam variant - ühe avatud lähtekoodiga süsteemi kasutuselevõtt. Paljudel algajatel administraatoritel on tasuta IPS-i installimine ja konfigureerimine keeruline. Suricata puhul pole see täiesti tõsi – saate selle installida ja mõne minutiga alustada tüüpiliste rünnakute tõrjumist tasuta reeglitega.

Snort või Suricata. Osa 2: Suricata paigaldamine ja esialgne seadistamine
Snort või Suricata. 1. osa: tasuta IDS/IPS-i valimine ettevõtte võrgu kaitsmiseks

Miks me vajame teist avatud IPS-i?

Pikalt standardiks peetud Snorti on arendatud alates üheksakümnendate lõpust, seega oli see algselt ühe keermega. Aastate jooksul on sellesse ilmunud kõik kaasaegsed funktsioonid, nagu IPv6 tugi, võimalus analüüsida rakendustaseme protokolle või universaalne andmete juurdepääsu moodul.

Tuumamootor Snort 2.X on õppinud töötama mitme tuumaga, kuid on jäänud ühe keermega ega suuda seetõttu optimaalselt kasutada kaasaegseid riistvaraplatvorme.

Probleem lahendati süsteemi kolmandas versioonis, kuid selle ettevalmistamine võttis nii kaua aega, et nullist kirjutatud Suricata jõudis turule ilmuda. 2009. aastal hakati seda arendama just mitme keermega alternatiivina Snortile, millel on karbist väljas IPS-funktsioonid. Koodi levitatakse GPLv2 litsentsi all, kuid projekti finantspartneritel on juurdepääs mootori suletud versioonile. Süsteemi esimestes versioonides tekkisid mastaapsuse probleemid, kuid need lahenesid kiiresti.

Miks Surica?

Suricatal on mitu moodulit (sarnaselt Snortiga): püüdmine, püüdmine, dekodeerimine, tuvastamine ja väljund. Vaikimisi toimub jäädvustatud liiklus enne dekodeerimist ühes voos, kuigi see koormab süsteemi rohkem. Vajadusel saab lõime seadistustes jaotada ja protsessorite vahel laiali jagada – Suricata on väga hästi optimeeritud konkreetse riistvara jaoks, kuigi see pole enam algajatele mõeldud HOWTO tase. Samuti väärib märkimist, et Suricatal on täiustatud HTTP kontrollitööriistad, mis põhinevad HTP teegil. Neid saab kasutada ka liikluse logimiseks ilma tuvastamiseta. Süsteem toetab ka IPv6 dekodeerimist, sealhulgas IPv4-in-IPv6 tunnelid, IPv6-in-IPv6 tunnelid ja palju muud.

Liikluse pealtkuulamiseks saab kasutada erinevaid liideseid (NFQueue, IPFRing, LibPcap, IPFW, AF_PACKET, PF_RING) ja Unix Socket režiimis saate teise nuusutaja poolt jäädvustatud PCAP-faile automaatselt analüüsida. Lisaks muudab Suricata modulaarne arhitektuur hõlpsaks uute elementide ühendamise võrgupakettide hõivamiseks, dekodeerimiseks, sõelumiseks ja töötlemiseks. Samuti on oluline märkida, et Suricatas blokeerib liiklus operatsioonisüsteemi tavalise filtri abil. GNU/Linuxil on IPS-i toimimiseks kaks võimalust: NFQUEUE järjekorra kaudu (NFQ-režiim) ja nullkoopia kaudu (AF_PACKET-režiim). Esimesel juhul saadetakse iptablesi sisenev pakett NFQUEUE järjekorda, kus seda saab kasutaja tasemel töödelda. Suricata käitab seda vastavalt oma reeglitele ja väljastab ühe kolmest otsusest: NF_ACCEPT, NF_DROP ja NF_REPEAT. Esimesed kaks on iseenesestmõistetavad, samas kui viimane võimaldab pakette sildistada ja saata praeguse iptablesi tabeli ülaossa. Režiim AF_PACKET on kiirem, kuid seab süsteemile mitmeid piiranguid: sellel peab olema kaks võrguliidest ja see peab töötama lüüsina. Blokeeritud paketti lihtsalt ei edastata teisele liidesele.

Suricata oluline omadus on võimalus kasutada Snorti jaoks mõeldud arendusi. Administraatoril on juurdepääs eelkõige Sourcefire VRT ja OpenSource Emerging Threats reeglikomplektidele, samuti kaubanduslikule Emerging Threats Pro-le. Ühtset väljundit saab sõeluda populaarsete taustaprogrammide abil, samuti toetatakse PCAP-i ja Syslogi väljundit. Süsteemi sätted ja reeglid salvestatakse YAML-failidesse, mida on lihtne lugeda ja mida saab automaatselt töödelda. Suricata mootor tunneb ära palju protokolle, seega ei pea reegleid siduma pordi numbriga. Lisaks praktiseeritakse Suricata reeglites aktiivselt voolubittide kontseptsiooni. Päästiku jälgimiseks kasutatakse seansi muutujaid erinevate loendurite ja lippude loomiseks ja rakendamiseks. Paljud IDS-id käsitlevad erinevaid TCP-ühendusi eraldiseisvate üksustena ja ei pruugi näha nende vahel ühendust, mis viitab rünnaku algusele. Suricata püüab näha tervikpilti ja paljudel juhtudel tunneb ära erinevate ühenduste kaudu leviva pahatahtliku liikluse. Selle eelistest saate rääkida pikka aega, parem läheme installimise ja seadistamise juurde.

Kuidas installida?

Installime Suricata virtuaalserverisse, kus töötab Ubuntu 18.04 LTS. Kõik käsud tuleb täita superkasutaja (root) nimel. Kõige turvalisem on tavakasutajana SSH-i serverisse siseneda ja seejärel õiguste tõstmiseks kasutada sudo-utiliiti. Kõigepealt peate installima vajalikud paketid:

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

Välise hoidla ühendamine:

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

Installige Suricata uusim stabiilne versioon:

sudo apt-get install suricata

Vajadusel muutke konfiguratsioonifailide nime, asendades vaikeväärtuse eth0 serveri välisliidese tegeliku nimega. Vaikesätted salvestatakse faili /etc/default/suricata ja kohandatud sätted failis /etc/suricata/suricata.yaml. IDS-i seadistamine piirdub enamasti selle konfiguratsioonifaili redigeerimisega. Sellel on palju parameetreid, mis kattuvad nime ja eesmärgi poolest Snorti analoogidega. Süntaks on siiski üsna erinev, kuid faili on palju lihtsam lugeda kui Snorti konfiguratsioone ja see on hästi kommenteeritud.

sudo nano /etc/default/suricata

Snort või Suricata. Osa 2: Suricata paigaldamine ja esialgne seadistamine

и

sudo nano /etc/suricata/suricata.yaml

Snort või Suricata. Osa 2: Suricata paigaldamine ja esialgne seadistamine

Tähelepanu! Enne alustamist tasub kontrollida muutujate väärtusi jaotisest Vars.

Seadistuse lõpuleviimiseks peate reeglite värskendamiseks ja laadimiseks installima suricata-update. Seda on üsna lihtne teha:

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

Järgmisena peame käivitama käsu suricata-update, et installida Emerging Threats Open reeglikomplekt:

sudo suricata-update

Snort või Suricata. Osa 2: Suricata paigaldamine ja esialgne seadistamine

Reegliallikate loendi vaatamiseks käivitage järgmine käsk:

sudo suricata-update list-sources

Snort või Suricata. Osa 2: Suricata paigaldamine ja esialgne seadistamine

Värskendage reeglite allikaid:

sudo suricata-update update-sources

Snort või Suricata. Osa 2: Suricata paigaldamine ja esialgne seadistamine

Uuendatud allikate uuesti vaatamine:

sudo suricata-update list-sources

Vajadusel saate lisada saadaolevaid tasuta allikaid:

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

Pärast seda peate reegleid uuesti värskendama:

sudo suricata-update

See lõpetab Suricata installimise ja esialgse konfigureerimise Ubuntu 18.04 LTS-is. Siis algab lõbu: järgmises artiklis ühendame virtuaalserveri kontorivõrku VPN-i kaudu ning hakkame analüüsima kogu sissetulevat ja väljaminevat liiklust. Pöörame erilist tähelepanu DDoS-i rünnakute, pahavarategevuse ja avalikest võrkudest ligipääsetavate teenuste turvaaukude ärakasutamise katsetele. Selguse huvides simuleeritakse kõige tavalisemaid rünnakuid.

Snort või Suricata. Osa 2: Suricata paigaldamine ja esialgne seadistamine

Snort või Suricata. Osa 2: Suricata paigaldamine ja esialgne seadistamine

Allikas: www.habr.com

Lisa kommentaar