Snork of Suricata. Deel 2: Installasie en aanvanklike opstelling van Suricata

Volgens statistieke neem die volume netwerkverkeer elke jaar met sowat 50% toe. Dit lei tot 'n toename in die las op die toerusting en verhoog veral die prestasievereistes van IDS / IPS. Jy kan duur gespesialiseerde hardeware koop, maar daar is 'n goedkoper opsie - die bekendstelling van een van die oopbronstelsels. Baie beginner administrateurs vind dit moeilik om gratis IPS te installeer en op te stel. In die geval van Suricata is dit nie heeltemal waar nie - jy kan dit installeer en binne 'n paar minute tipiese aanvalle met 'n stel gratis reëls begin afweer.

Snork of Suricata. Deel 2: Installasie en aanvanklike opstelling van Suricata
Snork of Suricata. Deel 1: Kies 'n gratis IDS/IPS om jou korporatiewe netwerk te beskerm

Hoekom het ons nog 'n oop IPS nodig?

Lank as die standaard beskou, is Snort sedert die laat negentigerjare in ontwikkeling, so dit was oorspronklik enkeldraad. Deur die jare het alle moderne kenmerke daarin verskyn, soos IPv6-ondersteuning, die vermoë om toepassingsvlak-protokolle te ontleed, of 'n universele datatoegangsmodule.

Die kern Snort 2.X-enjin het geleer om met veelvuldige kerns te werk, maar het enkeldraad gebly en kan dus nie optimaal voordeel trek uit moderne hardeware-platforms nie.

Die probleem is in die derde weergawe van die stelsel opgelos, maar dit het so lank geneem om voor te berei dat Suricata, wat van nuuts af geskryf is, daarin geslaag het om op die mark te verskyn. In 2009 het dit begin ontwikkel word juis as 'n multi-draad alternatief vir Snort, wat IPS-kenmerke uit die boks het. Die kode word onder die GPLv2-lisensie versprei, maar die finansiële vennote van die projek het toegang tot 'n geslote weergawe van die enjin. Sommige skaalbaarheidsprobleme het in die eerste weergawes van die stelsel ontstaan, maar dit is vinnig opgelos.

Hoekom Surica?

Suricata het verskeie modules (soortgelyk aan Snort): vang, vang, dekodeer, opsporing en uitvoer. By verstek gaan die vasgelegde verkeer voor dekodering in een stroom, hoewel dit die stelsel meer laai. Indien nodig, kan drade in die instellings verdeel word en onder verwerkers versprei word - Suricata is baie goed geoptimaliseer vir spesifieke hardeware, hoewel dit nie meer 'n HOWTO-vlak vir beginners is nie. Dit is ook opmerklik dat Suricata gevorderde HTTP-inspeksie-instrumente het wat gebaseer is op die HTP-biblioteek. Hulle kan ook gebruik word om verkeer aan te teken sonder opsporing. Die stelsel ondersteun ook IPv6-dekodering, insluitend IPv4-in-IPv6-tonnels, IPv6-in-IPv6-tonnels, en meer.

Verskillende koppelvlakke kan gebruik word om verkeer te onderskep (NFQueue, IPFRing, LibPcap, IPFW, AF_PACKET, PF_RING), en in Unix Socket-modus kan jy outomaties PCAP-lêers ontleed wat deur 'n ander sniffer vasgelê is. Boonop maak Suricata se modulêre argitektuur dit maklik om nuwe elemente in te plug om netwerkpakkies vas te vang, te dekodeer, te ontleed en te verwerk. Dit is ook belangrik om daarop te let dat in Suricata verkeer geblokkeer word deur middel van 'n gereelde filter van die bedryfstelsel. GNU/Linux het twee opsies vir hoe IPS werk: via die NFQUEUE-tou (NFQ-modus) en via nulkopie (AF_PACKET-modus). In die eerste geval word die pakkie wat iptables betree, na die NFQUEUE-ry gestuur, waar dit op gebruikersvlak verwerk kan word. Suricata bestuur dit volgens sy eie reëls en reik een van drie uitsprake uit: NF_ACCEPT, NF_DROP en NF_REPEAT. Die eerste twee is selfverduidelikend, terwyl die laaste dit toelaat dat pakkies gemerk en na die bokant van die huidige iptables-tabel gestuur word. Die AF_PACKET-modus is vinniger, maar dit stel 'n aantal beperkings op die stelsel: dit moet twee netwerkkoppelvlakke hê en as 'n poort werk. Die geblokkeerde pakkie word eenvoudig nie na die tweede koppelvlak aangestuur nie.

'n Belangrike kenmerk van Suricata is die vermoë om ontwikkelings vir Snort te gebruik. Die administrateur het veral toegang tot die Sourcefire VRT- en OpenSource Emerging Threats-reëlstelle, sowel as die kommersiële Emerging Threats Pro. Die verenigde uitset kan ontleed word met behulp van gewilde backends, PCAP- en Syslog-uitvoer word ook ondersteun. Stelselinstellings en -reëls word in YAML-lêers gestoor, wat maklik is om te lees en outomaties verwerk kan word. Die Suricata-enjin herken baie protokolle, so die reëls hoef nie aan 'n poortnommer gekoppel te wees nie. Daarbenewens word die konsep van flowbits aktief beoefen in die reëls van Suricata. Om die sneller op te spoor, word sessieveranderlikes gebruik om verskeie tellers en vlae te skep en toe te pas. Baie IDS'e behandel verskillende TCP-verbindings as aparte entiteite en sal dalk nie 'n verband tussen hulle sien wat die begin van 'n aanval aandui nie. Suricata probeer die hele prentjie sien en herken in baie gevalle kwaadwillige verkeer wat oor verskillende verbindings versprei is. U kan lank oor die voordele daarvan praat, ons moet beter oorgaan na installasie en konfigurasie.

Hoe om te installeer?

Ons sal Suricata installeer op 'n virtuele bediener wat Ubuntu 18.04 LTS gebruik. Alle opdragte moet namens die supergebruiker (wortel) uitgevoer word. Die veiligste opsie is om as 'n normale gebruiker in die bediener te SSH en dan die sudo-nutsding te gebruik om voorregte te verhoog. Eerstens moet u die pakkette installeer wat ons benodig:

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

Koppel 'n eksterne bewaarplek:

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

Installeer die nuutste stabiele weergawe van Suricata:

sudo apt-get install suricata

Indien nodig, wysig die konfigurasielêersnaam deur die verstek eth0 te vervang met die werklike naam van die bediener se eksterne koppelvlak. Verstekinstellings word in die /etc/default/suricata-lêer gestoor, en pasgemaakte instellings word in /etc/suricata/suricata.yaml gestoor. Die opstel van IDS is meestal beperk tot die wysiging van hierdie konfigurasielêer. Dit het baie parameters wat, by naam en doel, saamval met analoë van Snort. Die sintaksis is egter heeltemal anders, maar die lêer is baie makliker om te lees as Snort-konfigurasies en word goed opgemerk.

sudo nano /etc/default/suricata

Snork of Suricata. Deel 2: Installasie en aanvanklike opstelling van Suricata

и

sudo nano /etc/suricata/suricata.yaml

Snork of Suricata. Deel 2: Installasie en aanvanklike opstelling van Suricata

Aandag! Voordat u begin, is dit die moeite werd om die waardes van die veranderlikes uit die vars-afdeling na te gaan.

Om die opstelling te voltooi, sal jy suricata-update moet installeer om die reëls op te dateer en te laai. Dit is redelik maklik om dit te doen:

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

Vervolgens moet ons die suricata-update-opdrag uitvoer om die Emerging Threats Open-reëlstel te installeer:

sudo suricata-update

Snork of Suricata. Deel 2: Installasie en aanvanklike opstelling van Suricata

Om die lys reëlbronne te sien, voer die volgende opdrag uit:

sudo suricata-update list-sources

Snork of Suricata. Deel 2: Installasie en aanvanklike opstelling van Suricata

Dateer reëlbronne op:

sudo suricata-update update-sources

Snork of Suricata. Deel 2: Installasie en aanvanklike opstelling van Suricata

Herbesoek opgedateerde bronne:

sudo suricata-update list-sources

Indien nodig, kan u beskikbare gratis bronne insluit:

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

Daarna moet u die reëls weer opdateer:

sudo suricata-update

Dit voltooi die installasie en aanvanklike konfigurasie van Suricata in Ubuntu 18.04 LTS. Dan begin die pret: in die volgende artikel sal ons 'n virtuele bediener via VPN aan die kantoornetwerk koppel en alle inkomende en uitgaande verkeer begin ontleed. Ons sal spesiale aandag gee aan die blokkering van DDoS-aanvalle, wanware-aktiwiteit en pogings om kwesbaarhede te ontgin in dienste wat toeganklik is vanaf publieke netwerke. Vir duidelikheid sal aanvalle van die mees algemene tipes gesimuleer word.

Snork of Suricata. Deel 2: Installasie en aanvanklike opstelling van Suricata

Snork of Suricata. Deel 2: Installasie en aanvanklike opstelling van Suricata

Bron: will.com

Voeg 'n opmerking