Snort i suricata IDS/IPS

Izvor: SIS Wiki
Skoči na: orijentacija, traži

Sadržaj

Snort

A
1.1. Snort Logo

Snort je besplatan i open source IDS i IPS. Alat je 1998. Kreirao Martin Roesch, a trenutni vlasnik je poduzeće Sourcefire čiji je osnivač sam Roesch. Sourcefire je 2013. postao dio Cisco obitelji te je tako i Snort postao dio te velike multinacionalne korporacije. Program je službeno dostupan u distribucijama za neke popularnije operacijske sustave bazirane na Linuxu, kao i za Windowse. Sam alat je, kao što kažu i njegovi kreatori, jednostavan za korištenje, ali može postati i kompleksan sustav zaštite i detetekcije prijetnji na mreži, u pravim rukama.

--Ankomorce 23:08, 19. siječnja 2015. (CET)

Primjene

Osnovni načini rada u Snortu su:

Sama snaga snorta ovisi o njegovoj konfiguraciji, odnosno, setu pravila koja će korisnik postaviti na snagu. Zadaće su općenito analiza prometa, bilježenje prometa, upozoravanje i sve to u realnom vremenu. Ukratko, moguće je postaviti i zatim pokrenuti alat koji će štiti vašu zadanu mrežnu lokaciju, vašu bazu podataka od neželjenih napada i intruzija.

--Ankomorce 23:08, 19. siječnja 2015. (CET)

Postavljanje Snorta

Iako postoje neslužbene skripte i modifikacije Snorta gdje je on upakiran kao već postavljeno rješenje, ako korisnik aplikaciju preuzima sa službene stranice, mora prvo postaviti osnovne parametre konfiguracije kako bi uopće uspješno pokrenuo aplikaciju. Postavljanje početnih parametara je prijeko potrebno na Windows sustavima s obzirom da je osnovna konfiguracija postavljena za rad sa Linux distribucijama, što ne znači da korisnici na Linux ne moraju sami postaviti konfiguraciju, već da mogu ostaviti netaknute određene zadane parametre. Za početak treba u bilo kojem tekstualnom editoru otvoriti datoteku snort.conf koja se nalazi na lokaciji Snort\etc. Konfiguracija je intuitivno postavljena tako da je poredana po koracima i uz svaki parametar je postavljen kratki komentar kao pomoć pri postavljanju.

Slika 1.2. Prvi korak postavljanja

Kao što vidimo iz slike 1.2. potrebno je postaviti određene varijable koje će definirati ponašanje aplikacije. Prvotno treba postaviti adresu onoga što ćemo štiti, na slici je kao primjer stavljena adresa lokalne mreže 192.168.5.1. Na primjeru u slici je kao parametar postavljen !$HOME_NET kao vanjske adrese, što je logično, s obzirom da znači da će se kao vanjske adrese tretirati sve adrese osim postavljene lokalne mreže. Dalje se mogu postaviti parametri kao adrese DNS servere te razne druge adrese servera i baza. U drugom koraku postavki za osnovne funkcionalnosti nije potrebno dirati zadane postavke, ali moguće je postaviti lokaciju direktorija za Logove, odnosno bilješke programa sa sintaksom config logdir: Putanja.

Slika 1.3. Četvrti korak postavljanja

U četvrtom je koraku potrebno postaviti putanje do svih datoteka, odnosno direktorija, pogotovo ako se Snort koristi u Windows sustavu. Jedan od zadnjih važnih koraka za postavljanje je kreiranje datoteka sa white i black listom adresa, putanje se postavljaju u petom koraku u dijelu koda whitelist $WHITE_LIST_PATH/white_list.rules, blacklist $BLACK_LIST_PATH/black_list.rules Datoteke u pitanju nisu prethodno kreirane tako da ih je potrebno definirati od nule. Kako bi se zadovoljili svi zahtjevi za pravilima Snorta, potrebno je skinuti set pravila sa jednog od pouzdanih izvora. Pravila je moguće skinuti sa službene stranice te ih je najbolje postaviti u zadanu putanju Snort\rules Nakon što je osnovna konfiguracija postavljena, možete snort pokrenuti sa vašim postavkama tako da pod parametar -c postavite putanju konfiguracijske datoteke, naredba pri pokretanju bi trebala izgledati ovako: snort -c C:\Snort\etc\snort.conf -T U prikazanoj naredbi je dodan i parametar -T koji određuje da će se aplikacija pokrenuti u testnom načinu rada, što se preporuča za prvo pokretanje sa novom konfiguracijom.

--Ankomorce 00:20, 20. siječnja 2015. (CET)

Rad u Snortu

Pri pokretanju snorta bitno je zadati par parametara, kao što su indeks mrežnog sučelja, konfiguracijska datoteka i izgled sučelja za prikaz upozorenja. Kako bi sa sigurnošću znali koji indeks mrežnog sučelja pripada kojem uređaju, pokrenite naredbu snort -W. Pojavit će vam se lista sučelja koja bi trebala izgledati približno ovako:

Slika 1.4. Snort - Popis sučelja

Nakon što je utvrđen indeks željenog sučelja, mogli bi postaviti jedno aktivno pravilo kako bi se nakon pokretanja dobio i neki ispis. Jedan od jednostavnijih primjera je praćenje svog prometa na određenom protokolu, potrebno je u bilo kojem tekstualnom editoru otvoriti datoteku Snort\rules\local.rules te postaviti ovakva pravila:
alert icmp any any -> any any (msg:"ICMP testing rule"; sid:1000001;)
alert udp any any -> any any (msg:"UDP testing rule"; sid:1000002;)
alert tcp any any -> any any (msg:"TCP testing rule"; sid:1000003;)
Ovim pravilima određujemo kako će se pratiti sav promet na icmp, udp te tcp protokolu, ako pokrenemo snort sa slijedećom naredbom: snort -A console -i2 -c C:\Snort\etc\snort.conf On će prikazivati upozorenja kroz konzolu i pratit će promet na sučelju broj 2 prema konfiguraciji zadanoj u datoteci snort.conf. Nakon uspješnog pokretanja, zaslon bi vam trebao otprilike ovako izgledati:

Slika 1.5. Snort - Prvo pokretanje

U slici 1.5 je vidno dosta prometa koji se odnosi na UDP protokol, što je normalno s obzirom na postavljeni parametar kojim se prati sve na tom protokolu. Nakon završetka rada, snort će na konzoli ispisati niz statističkih podataka o prethodnoj sesiji

Slika 1.6. Snort - Statistički podaci

Osim tih podataka, kreirati će se i bilješke kao log datoteke svake sesije na zadanoj putanji iz konfiguracijske datoteke

Slika 1.7. Snort - Log datoteke



--Ankomorce 00:56, 20. siječnja 2015. (CET)

Suricata

Suricata1.png

Suricata je alat otvorenog koda koji služi za detekciju i spriječavanje upada, razvijen od strane Open Information Security Foundation (OISF). Suricata koristi setove pravila za nadzor mrežnog prometa, te administratora upozorava u slučaju sumnjivih događaja. Suricata je napravljena sa ciljem kompatibilnosti sa postojećim komponentama mrežne sigurnosti.







Značajke Suricata-e

Podržane platforme

--Maserdare 22:57, 19. siječnja 2015. (CET)

Konfiguracija Suricata-e

1. način: Pokretanje instalacijskog paketa suricata-e za Windows okruženje

Instalacijski paket preuzeti sa https://redmine.openinfosecfoundation.org/attachments/download/1061/Suricata-2.0.5-1-32bit.msi

Potrebno je u konfiguracijskoj datoteci promjeniti putanje.

Promjena putanje

Putanje su po defaultu bile napisane sa viškom "\" znakova.

Nakon toga potrebno je definirati određena pravila

Pravila za suricatu

Dodano je jednostavno pravilo local.rules, te je dodan u konfiguracijsku datoteku suricate


Korištenje suricate

Sa primjenjenim jednostavnim pravilom u suricati, pokrećemo rad suricate sa
suricata -i [IP adresa]
a u drugom cmd prozoru smo pokrenuli ping naredbu, te je suricata ovaj događaj zabilježila u log datoteku.

Promjena putanje

2. način: Samostalno kompiliranje suricata-e

Za početak potrebno je instalirati Cygwin, te pri instalaciji koristeći search funkciju dodati potrebne pakete:

Cygwin potrebni paketi

Nakon instalacije Cygwin-a potrebno je u
Control Panel\System and Security\System\Advanced system settings\Environment Variables
dodati novi zapis u Path:
C:\cygwin\bin;C:\cygwin\lib\pkgconfig;

Dodavanje varijable

Sljedeći korak je dodati Libyaml, [dostupno na http://pyyaml.org/wiki/LibYAML]
Sadržaj raspakirati u C:\cygwin\tmp

Nakon toga potrebno je instalirati WinPcap [dostupno na http://www.winpcap.org/install/default.htm]
Idući korak je preuzimanje developer paketa sa http://www.winpcap.org/devel.htm, te premjestiti potrebne datoteke

sadržaj WpdPack\Lib\ kopirati u cygwin\lib\
sadržaj WpdPack\Include\ kopirati u C:\cygwin\usr\include\
preimenovati libwpcap u “libpcap” (nalazi se u cygwin\lib\ directory)


Nakon svega toga u Cygwin treba unijeti naredbe:
cd /tmp
cd yaml-0.1.5
./configure --prefix=/usr && make && make install

Dodavanje yaml-a u Cygwin-u


Konačno treba kompajlirati suricatu:
U Cygwinu se unose sljedeće naredbe
wget https://www.openinfosecfoundation.org/download/suricata-2.0.6.tar.gz
tar –zxf suricata-2.0.6.tar.gz
cd suricata-2.0.6
dos2unix.exe libhtp/configure.ac && dos2unix.exe libhtp/htp.pc.in && dos2unix.exe libhtp/Makefile.am
libtoolize -c && autoreconf -fv --install && ./configure && make

Na disku kreirati folder C:\Suricata
te u njega postaviti Suricata.exe iz C:\cygwin\tmp\oisf\src\.libs
Potom kreirati direktorije C:\Suricata\log i C:\Suricata\rules
Pravila se mogu preuzeti sa http://www.snort.org/ ili specifični set pravila za suricatu sa
http://rules.emergingthreats.net/open/suricata/emerging.rules.tar.gz

Literatura

https://redmine.openinfosecfoundation.org/projects/suricata/wiki/Suricata_User_Guide
https://www.snort.org/documents/snort-users-manual
https://redmine.openinfosecfoundation.org/attachments/download/757/SuricataWinInstallationGuide_v1.3.pdf

Osobni alati
Imenski prostori
Inačice
Radnje
Orijentacija
Traka s alatima