Snort IDS:n konfigurointi ja sääntöjen luominen

Snort on avoimen lähdekoodin tunkeutumisen havaitsemisjärjestelmä, jota voit käyttää Linux-järjestelmissäsi. Tässä opetusohjelmassa käydään läpi Snort IDS:n peruskonfigurointi ja opetetaan luomaan sääntöjä erityyppisten toimintojen havaitsemiseksi järjestelmässä.

Tässä opetusohjelmassa käyttämämme verkko on: 10.0.0.0/24. Muokkaa /etc/snort/snort.conf-tiedostoa ja korvaa $HOME_NET-kohdan vieressä oleva ”any” verkkotiedoilla, kuten alla olevassa esimerkkikuvassa näkyy:

Vaihtoehtoisesti voit myös määritellä tarkkailemaan tietyt IP-osoitteet pilkulla erotettuna, kuten tässä kuvassa näkyy:

Lähdetään nyt liikkeelle ja suoritetaan tämä komento komentorivillä:

# snort -d -l /var/log/snort/ -h 10.0.0.0.0/24 -A console -c /etc/snort/snort.conf

Missä:
d= käskee snortia näyttämään dataa
l= määrittää lokihakemiston
h= määrittää valvottavan verkon
A= käskee snortia tulostamaan hälytykset konsoliin
c= määrittää snortille konfigurointitiedoston

Aloitetaan pikatarkistus toiselta laitteelta nmapin avulla:

Ja katsotaan mitä tapahtuu snortin konsolissa:

Snort havaitsi skannauksen, nyt myös eri laitteelta hyökätään DoS:lla hping3:lla

# hping3 -c 10000 -d 120 -S -w 64 -p 21 –flood –rand-source 10.0.0.3

Snortin näyttämä laite havaitsee huonoa liikennettä, kuten tässä näkyy:

Koska ohjeistimme Snortin tallentamaan lokit, voimme lukea ne ajamalla:

# snort -r

Tutustuminen Snortin sääntöihin

Snortin NIDS-tila toimii /etc/snort/snortissa määritettyjen sääntöjen perusteella.conf-tiedostossa määritetyt säännöt.

Snort.conf-tiedostosta löytyy kommentoituja ja kommentoimattomia sääntöjä, kuten alla näkyy:

Sääntöjen polku on normaalisti /etc/snort/rules , sieltä löytyvät sääntötiedostot:

Katsotaanpa sääntöjä takaovia vastaan:

Takaovihyökkäysten estämiseksi on useita sääntöjä, yllättäen siellä on sääntö NetBusia vastaan, troijalainen hevonen joka tuli suosituksi pari vuosikymmentä sitten, katsotaanpa sitä ja selitän sen osat ja miten se toimii:

alert tcp $HOME_NET 20034 -> $EXTERNAL_NET any (msg: ”BACKDOOR NetBus Pro 2.0 connection
established”; flow:from_server,established;
flowbits:isset,backdoor.netbus_2.connect; content: ”BN|10 00 02 00|”; depth:6; content:”|
05 00|”; depth:2; offset:8; classtype:misc-activity; sid:115; rev:9;)

Tämä sääntö määrää snortin hälyttämään portissa 20034 olevista TCP-yhteyksistä, jotka lähettävät mihin tahansa ulkoisen verkon lähteeseen.

-> = määrittää liikenteen suunnan, tässä tapauksessa suojatusta verkostamme ulkoiseen verkkoon

msg = määrää hälytyksen sisältämään tietyn viestin, kun se näytetään

content = hakee tiettyä sisältöä paketista. Se voi sisältää tekstiä, jos se on välillä ” ” tai binääridataa, jos se on välillä | |
depth = analyysin intensiteetti, yllä olevassa säännössä näemme kaksi eri parametria kahdelle eri sisällölle
offset = kertoo Snortille kunkin paketin aloittavan tavun, josta sisällön etsiminen aloitetaan
classtype = kertoo, minkälaisesta hyökkäyksestä Snort hälyttää

sid:115 = säännön tunniste

Oman säännön luominen

Luotaan nyt uusi sääntö, joka ilmoittaa saapuvista SSH-yhteyksistä. Avaa /etc/snort/rules/yourrule.rules ja liitä sisään seuraava teksti:

alert tcp $EXTERNAL_NET any -> $HOME_NET 22 (msg: ”SSH incoming”;
flow:stateless; flags:S+; sid:100006927; rev:1;)

Käskemme Snortia hälyttämään mistä tahansa tcp-yhteydestä mistä tahansa ulkoisesta lähteestä ssh-porttiimme (tässä tapauksessa oletusporttiin) sisältäen tekstiviestin ”SSH INCOMING”, jossa stateless ohjeistaa Snortia sivuuttamaan yhteyden tilan.

Nyt meidän on lisättävä luomamme sääntö /etc/snort/snort.conf-tiedostoon. Avaa config-tiedosto editorilla ja etsi kohta #7, joka on sääntöjä sisältävä kohta. Lisää kommentoimaton sääntö kuten yllä olevassa kuvassa lisäämällä:

include $RULE_PATH/yourrule.rules

Säännön ”yourrule.rules” sijaan aseta tiedostosi nimi, minun tapauksessani se oli test3.rules.

Kun se on tehty, suorita Snort uudelleen ja katso mitä tapahtuu.

#snort -d -l /var/log/snort/ -h 10.0.0.0.0/24 -A console -c /etc/snort/snort.conf

ssh-laitteeseesi toisesta laitteesta ja katso, mitä tapahtuu:

Voit nähdä, että SSH:n tulo havaittiin.

Tämän oppitunnin avulla toivottavasti tiedät, miten perussääntöjä voidaan laatia ja miten niitä voidaan käyttää havaitsemaan toimintaa järjestelmässä. Katso myös opetusohjelma How Setup Snort and Start Using It ja sama opetusohjelma saatavilla espanjaksi osoitteessa Linux.lat.

.

Vastaa

Sähköpostiosoitettasi ei julkaista.