Snort arba Suricata. 2 dalis: Suricata įrengimas ir pradinė sąranka

Remiantis statistika, tinklo srautas kasmet padidėja apie 50%. Tai padidina įrangos apkrovą ir ypač padidina IDS / IPS veikimo reikalavimus. Galite nusipirkti brangios specializuotos aparatinės įrangos, tačiau yra ir pigesnis variantas – vienos iš atvirojo kodo sistemų įdiegimas. Daugeliui pradedančiųjų administratorių sunku įdiegti ir konfigūruoti nemokamą IPS. „Suricata“ atveju tai nėra visiškai tiesa – galite ją įdiegti ir per kelias minutes pradėti atremti tipiškas atakas su nemokamų taisyklių rinkiniu.

Snort arba Suricata. 2 dalis: Suricata įrengimas ir pradinė sąranka
Snort arba Suricata. 1 dalis: Nemokamo IDS/IPS pasirinkimas, kad apsaugotumėte savo įmonės tinklą

Kodėl mums reikia kito atviro IPS?

Ilgą laiką laikomas standartu, „Snort“ buvo kuriamas nuo devintojo dešimtmečio pabaigos, todėl iš pradžių buvo vienos gijos. Per daugelį metų jame atsirado visos šiuolaikinės funkcijos, tokios kaip IPv6 palaikymas, galimybė analizuoti taikomųjų programų lygio protokolus ar universalus duomenų prieigos modulis.

Pagrindinis Snort 2.X variklis išmoko dirbti su keliais branduoliais, tačiau išliko vienos gijos ir todėl negali optimaliai išnaudoti šiuolaikinių aparatinės įrangos platformų privalumų.

Problema buvo išspręsta trečioje sistemos versijoje, tačiau paruošimas užtruko tiek laiko, kad „Suricata“, parašyta nuo nulio, spėjo pasirodyti rinkoje. 2009 m. jis buvo pradėtas kurti kaip kelių gijų alternatyva „Snort“, kuri turi IPS funkcijas. Kodas platinamas pagal GPLv2 licenciją, tačiau projekto finansiniai partneriai turi prieigą prie uždaros variklio versijos. Kai kurios mastelio keitimo problemos iškilo pirmosiose sistemos versijose, tačiau jos buvo greitai išspręstos.

Kodėl Surica?

Suricata turi kelis modulius (panašius į Snort): fiksavimą, fiksavimą, dekodavimą, aptikimą ir išvedimą. Pagal numatytuosius nustatymus užfiksuotas srautas eina prieš dekoduojant vieną srautą, nors tai labiau apkrauna sistemą. Jei reikia, gijas galima padalyti nustatymuose ir paskirstyti tarp procesorių – Suricata yra labai gerai optimizuota konkrečiai aparatūrai, nors tai nebėra HOWTO lygis pradedantiesiems. Taip pat verta paminėti, kad „Suricata“ turi pažangius HTTP tikrinimo įrankius, pagrįstus HTP biblioteka. Jie taip pat gali būti naudojami registruojant srautą be aptikimo. Sistema taip pat palaiko IPv6 dekodavimą, įskaitant IPv4-in-IPv6 tunelius, IPv6-IPv6 tunelius ir kt.

Skirtingos sąsajos gali būti naudojamos srautui perimti (NFQueue, IPFRing, LibPcap, IPFW, AF_PACKET, PF_RING), o Unix Socket režimu galite automatiškai analizuoti PCAP failus, užfiksuotus kito uostytojo. Be to, Suricata modulinė architektūra leidžia lengvai prijungti naujus elementus, kad būtų galima užfiksuoti, dekoduoti, analizuoti ir apdoroti tinklo paketus. Taip pat svarbu pažymėti, kad Suricata mieste srautas blokuojamas naudojant įprastą operacinės sistemos filtrą. GNU/Linux turi dvi IPS veikimo parinktis: per NFQUEUE eilę (NFQ režimas) ir per nulinę kopiją (AF_PACKET režimas). Pirmuoju atveju paketas, patekęs į iptables, siunčiamas į NFQUEUE eilę, kur jį galima apdoroti vartotojo lygiu. Suricata veikia pagal savo taisykles ir paskelbia vieną iš trijų verdiktų: NF_ACCEPT, NF_DROP ir NF_REPEAT. Pirmieji du yra savaime suprantami, o paskutinis leidžia pažymėti paketus ir siųsti į dabartinės iptables lentelės viršų. AF_PACKET režimas yra greitesnis, tačiau sistemai taiko nemažai apribojimų: turi turėti dvi tinklo sąsajas ir veikti kaip šliuzas. Užblokuotas paketas tiesiog nepersiunčiamas į antrąją sąsają.

Svarbi „Suricata“ savybė yra galimybė naudoti „Snort“ patobulinimus. Visų pirma administratorius turi prieigą prie „Sourcefire VRT“ ir „OpenSource Emerging Threats“ taisyklių rinkinių, taip pat prie komercinės „Emerging Threats Pro“. Vieningą išvestį galima išanalizuoti naudojant populiarias pagrindines programas, taip pat palaikoma PCAP ir Syslog išvestis. Sistemos nustatymai ir taisyklės saugomi YAML failuose, kuriuos lengva perskaityti ir juos galima apdoroti automatiškai. Suricata variklis atpažįsta daugybę protokolų, todėl taisyklių nereikia susieti su prievado numeriu. Be to, srauto bitų sąvoka aktyviai praktikuojama Suricata taisyklėse. Trigeriui sekti seanso kintamieji naudojami įvairiems skaitikliams ir vėliavėlėms kurti ir taikyti. Daugelis IDS traktuoja skirtingus TCP ryšius kaip atskirus objektus ir gali nematyti ryšio tarp jų, rodančio atakos pradžią. Suricata bando matyti visą vaizdą ir daugeliu atvejų atpažįsta kenkėjišką srautą, paskirstytą įvairiais ryšiais. Apie jo pranašumus galite kalbėti ilgai, geriau pereikime prie diegimo ir konfigūravimo.

Kaip įdiegti?

„Suricata“ įdiegsime virtualiame serveryje, kuriame veikia „Ubuntu 18.04 LTS“. Visos komandos turi būti vykdomos supervartotojo (root) vardu. Saugiausia parinktis yra SSH prisijungti prie serverio kaip įprastam vartotojui ir tada naudoti sudo įrankį privilegijoms padidinti. Pirmiausia turite įdiegti mums reikalingus paketus:

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

Išorinės saugyklos prijungimas:

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

Įdiekite naujausią stabilią Suricata versiją:

sudo apt-get install suricata

Jei reikia, redaguokite konfigūracijos failų pavadinimą, pakeisdami numatytąjį eth0 tikruoju serverio išorinės sąsajos pavadinimu. Numatytieji nustatymai saugomi /etc/default/suricata faile, o pasirinktiniai nustatymai saugomi /etc/suricata/suricata.yaml. IDS konfigūravimas dažniausiai apsiriboja šio konfigūracijos failo redagavimu. Jis turi daug parametrų, kurie pagal pavadinimą ir paskirtį sutampa su analogais iš Snort. Tačiau sintaksė yra gana skirtinga, tačiau failas yra daug lengviau skaitomas nei Snort konfigūracijos ir yra gerai komentuojamas.

sudo nano /etc/default/suricata

Snort arba Suricata. 2 dalis: Suricata įrengimas ir pradinė sąranka

и

sudo nano /etc/suricata/suricata.yaml

Snort arba Suricata. 2 dalis: Suricata įrengimas ir pradinė sąranka

Dėmesio! Prieš pradedant, verta patikrinti vars skyriaus kintamųjų reikšmes.

Norėdami užbaigti sąranką, turėsite įdiegti suricata-update, kad atnaujintumėte ir įkeltumėte taisykles. Tai padaryti gana paprasta:

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

Tada turime paleisti komandą suricata-update, kad įdiegtume Emerging Threats Open taisyklių rinkinį:

sudo suricata-update

Snort arba Suricata. 2 dalis: Suricata įrengimas ir pradinė sąranka

Norėdami peržiūrėti taisyklių šaltinių sąrašą, paleiskite šią komandą:

sudo suricata-update list-sources

Snort arba Suricata. 2 dalis: Suricata įrengimas ir pradinė sąranka

Atnaujinti taisyklių šaltinius:

sudo suricata-update update-sources

Snort arba Suricata. 2 dalis: Suricata įrengimas ir pradinė sąranka

Atnaujintų šaltinių peržiūra:

sudo suricata-update list-sources

Jei reikia, galite įtraukti turimus nemokamus šaltinius:

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

Po to vėl turite atnaujinti taisykles:

sudo suricata-update

Tai užbaigia Suricata diegimą ir pradinę konfigūraciją Ubuntu 18.04 LTS. Tada prasideda linksmybės: kitame straipsnyje per VPN prijungsime virtualų serverį prie biuro tinklo ir pradėsime analizuoti visą įeinantį ir išeinantį srautą. Ypatingą dėmesį skirsime DDoS atakų blokavimui, kenkėjiškų programų veiklai ir bandymams išnaudoti paslaugų, pasiekiamų iš viešųjų tinklų, spragas. Siekiant aiškumo, bus imituojamos dažniausiai pasitaikančių tipų atakos.

Snort arba Suricata. 2 dalis: Suricata įrengimas ir pradinė sąranka

Snort arba Suricata. 2 dalis: Suricata įrengimas ir pradinė sąranka

Šaltinis: www.habr.com

Добавить комментарий