zavrŠni rad br. 5947 sustavi za otkrivanje...

32
Zagreb, lipanj 2019. SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE I SPRJEČAVANJE NAPADA Andrea Alilović

Upload: others

Post on 28-Dec-2019

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

Zagreb, lipanj 2019.

SVEUČILIŠTE U ZAGREBU

FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA

ZAVRŠNI RAD br. 5947

SUSTAVI ZA OTKRIVANJE I

SPRJEČAVANJE NAPADA

Andrea Alilović

Page 2: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja
Page 3: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

Sadržaj

1. Uvod.................................................................................................................................... 1

2. Sustavi za otkrivanje i sprječavanje napada ....................................................................... 2

2.1. Otkrivanje i sprječavanje napada ................................................................................ 2

2.2. Opis i razvoj IDS-a i IPS-a ......................................................................................... 2

2.3. Podjela ........................................................................................................................ 3

3. Slobodno dostupni sustavi .................................................................................................. 5

3.1. Sustav Suricata ............................................................................................................ 5

3.2. Sustav Security Onion ................................................................................................ 5

3.3. Sustav WinPatrol ........................................................................................................ 5

4. Programski paket Snort ....................................................................................................... 7

4.1. Općenito ...................................................................................................................... 7

4.2. Pravila ......................................................................................................................... 7

4.3. Instalacija i konfiguracija ............................................................................................ 9

4.3.1. Instalacija i konfiguracija programskog paketa Snort na operacijskom

sustavu Windows .............................................................................................................. 10

4.3.2. Instalacija i konfiguracija programskog paketa Snort na operacijskom

sustavu Ubuntu ................................................................................................................. 11

4.4. Pokretanje i ispitivanje programskog paketa Snort .................................................. 12

4.4.1. Snimanje prometa na operacijskom sustavu Windows ..................................... 15

5. Praktični rad ...................................................................................................................... 17

5.1. Virtualno okruženje i instalacija ............................................................................... 17

5.2. Simulirani napadi ...................................................................................................... 20

5.3. Alat Nmap ................................................................................................................. 20

5.4. Alat Sparta ................................................................................................................ 22

5.5. Alat Nikto ................................................................................................................. 24

6. Zaključak .......................................................................................................................... 26

7. Literatura ........................................................................................................................... 27

Page 4: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

1

1. Uvod

U današnje vrijeme sve je veći razvoj mnoštva organizacija kojima je bitna kvalitetna zaštita

poslovanja i privatnih podataka. Kako bi se to omogućilo, osmišljeni su mnogi sustavi za

otkrivanje i obranu od napada. Neki od njih su besplatni i slobodno dostupni, a neki ne. Pri

korištenju takvih sustava najvažnija je kvalitetna priprema i informiranje o mogućnostima

sustava, jer vrlo lako može doći do neželjenih posljedica ili npr. gubitka povjerljivih

informacija.

Vremenom napadi postaju sve kompliciraniji i razvijeniji, pa je neophodno osigurati se

sustavima koji mogu pratiti napredne specifikacije napada i omogućiti pravovaljanu zaštitu

kad god je to potrebno.

Sustavi za otkrivanje i sprječavanje napada su se počeli razvijati tek krajem 20. stoljeća, ali

unatoč tome, danas su veoma rasprostranjeni, kvalitetni i mnogobrojni. U ovom završnom

radu teorijski su opisane karakteristike tih sustava i nekoliko primjera rada i detekcije jednog

od tih sustava – Snorta.

Rad je sastavljen od sedam poglavlja. Nakon uvodnog poglavlja, je poglavlje u kojem su

opisani sustavi za otkrivanje i sprječavanje napada (engl. Intrusion Detection Systems, IDS

and Intrusion Prevention Systems, IPS) i navedena je njihova podjela.

U trećem poglavlju opisano je nekoliko slobodno dostupnih sustava za otkrivanje i

sprječavanje napada, te opisane su njihove mogućnosti. Sustavi koji su obrađeni su Suricata,

Security Onion i WinPatrol.

Četvrto poglavlje detaljno opisuje programski paket Snort. Također je korišten i u kasnijim

poglavljima, a njegovo testiranje predstavlja glavni dio ovog završnog rada. Nakon općenitog

opisa, prednosti, nedostataka i povijesti slobodno dostupnog sustava Snort, opisana su pravila

kojima raspolaže i pomoću kojih otkriva napade i zlonamjerne aktivnosti. Detaljno su

objašnjene i instalacija i konfiguracija na dva operacijska sustava, Windowsu i Ubuntu, te

pokretanje i testiranje Snorta. Dodatno je prikazano i pojašnjeno i snimanje prometa pomoću

Snorta instaliranog na Windowsu.

Peto poglavlje predstavlja praktični rad i prikaz otkrivanja raznih napada Snortom. U prvom

dijelu opisano je preuzimanje i konfiguracija potrebnih virtualnih mašina na VMware

Workstationu. Nakon toga su prikazana tri rezultata ispitivanja ranjivosti sustava, ovisno o

alatu koji smo koristili na Snortu. Prvi korišteni alat na operacijskom sustavu Kali je Nmap,

drugi alat je Sparta, a treći Nikto.

Page 5: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

2

2. Sustavi za otkrivanje i sprječavanje napada

2.1. Otkrivanje i sprječavanje napada

Otkrivanje napada općenito podrazumijeva otkrivanje bilo kakvih akcija kojima je cilj narušiti

ispravan rad računalnih sustava i njihovu sigurnost. Procesom nadziranja i analize događaja u

mreži, odnosno mrežnog prometa, se otkrivaju znakovi mogućih zlonamjernih aktivnosti,

prekršaja ili neposrednih prijetnji sigurnosnim pravilima. Taj proces se može izvoditi ručno ili

automatski. Ručno otkrivanje napada je puno kompliciranije, dugotrajnije i podložnije

pogreškama, jer zahtijeva da osoba čita veliku količinu podataka i onda uglavnom ne stigne

na vrijeme otkriti napad. Drugi način su automatski sustavi koji mogu biti izvedeni kao

programski ili sklopovski uređaji, a njihov razvoj počinje krajem 20. stoljeća.

Sprječavanje napada također predstavlja proces detekcije, ali može zaustaviti isporuku paketa

na temelju otkrivenih prijetnji i incidenata.

2.2. Opis i razvoj IDS-a i IPS-a

Sustavi za otkrivanje napada (Intrusion detection systems - IDS) su sustavi praćenja, dok su

sustavi za sprječavanje napada (Intrusion prevention systems - IPS) sustavi kontrole. I IDS i

IPS su dio mrežne infrastrukture i uspoređuju trenutnu mrežnu aktivnost s poznatom bazom

podataka o prijetnjama kako bi se otkrile nepravilnosti. Glavna razlika je što će se dogoditi

nakon toga.

Razvoj IDS-a i IPS-a počinje već 1980. godine kada je opisan najraniji koncept IDS-a u

Nacionalnoj sigurnosnoj agenciji. Razvoj se nastavlja i 1986. objavom modela IDS-a koji se

danas koristi kao baza za mnoge sustave.

Sustavi za otkrivanje napada (IDS) mogu biti uređaji ili softverske aplikacije. Analiziraju i

prate mrežni promet tražeći znakove koji ukazuju da napadači koriste određene tehnike kako

bi infiltrirali ili ukrali podatke iz žrtvine mreže. IDS ne poduzimaju nikakve akcije i

zahtijevaju prisustvo čovjeka ili drugog sustava koji će odlučiti što dalje. Mogu se usporediti i

sa sigurnosnim štitom koji ograničava prijenos paketa između mreža, dok IDS mogu djelovati

i unutar mreže.

Svaka zlonamjerna aktivnost ili incident se prijavljuje administratoru ili se prikuplja centralno

pomoću sustava za upravljanje sigurnosnim informacijama i događajima (SIEM). SIEM

filtrira alarme kako bi razlikovao lažne dojave i upozorenja od stvarnih zlonamjernih

aktivnosti. IDS se mogu odnositi na pojedinačna računala, ali i na male i velike mreže.

Page 6: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

3

2.3. Podjela

Sustave za otkrivanje napada najčešće klasificiramo u dvije skupine NIDS (Network intrusion

detection systems) i HIDS (Host intrusion detection systems). To je jedan od dva osnovna

načina klasifikacije, a temelji se na tome gdje je napad detektiran. Sustav koji nadzire važne

datoteke operacijskog sustava primjer je HIDS-a, dok je sustav koji analizira dolazni mrežni

promet primjer NIDS-a.[1] NIDS analiziraju dolazni mrežni promet na svim uređajima u

mreži i služe za otkrivanje napada u mreži. HIDS se koriste za otkrivanje napada na domaćinu

i nadgledaju važne datoteke operacijskog sustava prateći ulazne i izlazne pakete s uređaja, a

mogu upozoriti korisnika ili administratora ako se otkrije sumnjiva aktivnost. NIDS se dijeli

na on-line i off-line NIDS, odnosno inline i tap mode, a razlika je ta što on-line analizira

pakete u realnom vremenu, a off-line te podatke pohranjuje i kroz niz procesa odlučuje radi li

se o napadu ili ne.

Drugi način klasifikacije IDS-a je prema načinu otkrivanja napada gdje postoje 3 različita

slučaja:

• detekcija potpisom,

• otkrivanje na temelju anomalije i

• detekcija utemeljena na reputaciji.

Pri detekciji potpisom se uspoređuju promatrani događaji s potpisima i to je ujedno

najjednostavniji i najkorišteniji način otkrivanja, jer uspoređuje samo trenutno aktivnu

jedinicu (npr. paket) pomoću operacije usporedbe nizova. Time je omogućeno prepoznavanje

loših obrazaca, kao što su zloćudni programi (engl. malware). Detekcijom anomalije se

utvrđuje odstupanje od uobičajenog modela dobrog prometa, dok je treći slučaj uspoređivanje

općeprihvaćenih definicija za svako stanje protokola s opaženim događajima kako bi se

odredilo odstupanje.

Sustavi za sprječavanje napada (IPS) su varijacija IDS-a i imaju sposobnost odgovora na

otkrivene napade. Također su poznati i pod nazivom IDPS (sustavi za otkrivanje i

sprječavanje napada). Nalaze se između vanjskog svijeta i unutarnje mreže. IPS aktivno

odbijaju mrežni promet prije nego dođe do odredišta, oslanjajući se na pravila koja definiraju

predstavlja li taj paket poznatu sigurnosnu prijetnju. Odbijaju ga tako što zaustavljaju sami

napad, mijenjaju sadržaj napada ili mijenjaju sigurnosno okruženje te šalju alarm blokirajući

ili resetirajući promet s upitne IP adrese. IDPS se danas obavezno koriste u sigurnosnoj

infrastrukturi velike većine organizacija.

Sustavi za sprječavanje napada imaju jednaku klasifikaciju prema načinu otkrivanja napada

kao i sustavi za otkrivanje napada.

Kod IPS-a također postoji podjela na 4 različite vrste, a to su:

Page 7: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

4

• mrežni sustavi za sprječavanje napada (engl. Network-based IPS),

• bežični sustavi za sprječavanje napada (engl.Wireless IPS),

• sustavi za sprječavanje napada zasnovani na analizi ponašanja na mreži (engl.

Network behavior analysis ,NBA) i

• računalni sustav za sprječavanje napada (engl. Host-based IPS, HIPS).

Prva navedena vrsta IPS-a analizira cijelu mrežu, Wireless IPS analizira samo bežičnu mrežu,

NBA ispituje mrežni promet tražeći neobične događaje, a posljednja vrsta služi za nadziranje

samo jednog računala i događaja unutar njega.

Page 8: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

5

3. Slobodno dostupni sustavi

Danas postoji mnoštvo sustava za otkrivanje i prevenciju od napada, a u ovom radu su opisani

neki od najkorištenijih slobodno dostupnih sustava poput Suricate, Security Oniona,

WinPatrola i Snorta.

3.1. Sustav Suricata

Suricata je besplatan i slobodno dostupan brzi mehanizam za otkrivanje mrežnih prijetnji i

napada. Osim otkrivanja napada u stvarnom vremenu, može sprječavati napade i pratiti

mrežnu sigurnost. Provjerava i kontrolira mrežni promet koristeći mnoštvo pravila i Lua

podršku za otkrivanje složenijih prijetnji. Standardni inputi i outputi su YAML i JSON, a

koriste se s alatima poput SIEM-a, Splunka, Kibana i drugih. Projekt i kod Suricate su u

vlasništvu Fondacije za otvorenu informacijsku sigurnost (OISF) koja osigurava Suricatin

razvoj. Premda njen životni vijek nije toliko dugačak u usporedbi sa Snortom, sustavom koji

je detaljno opisan u 4. poglavlju, Suricata se utemeljila kao suvremeni odgovor ili alternativa

Snortu, isključivo zbog svojih višestrukih mogućnosti.

3.2. Sustav Security Onion

Security Onion je alat za otkrivanje pogrešaka i prijetnji, te ne može poduzimati nikakve

akcije bez potvrde korisnika. Pruža pregled mreže i prometa u njoj, te prikazuje upozorenja i

anomalije, ali je potrebna potvrda korisnika odnosno administratora kako bi se pregledale

prijetnje i promet, te poduzeli daljnji koraci. Security Onion ima tri osnovne funkcije, a to su:

• potpuno hvatanje paketa,

• mrežni sustavi i sustavi za otkrivanje napada na domaćinu i

• jaki alati za analizu.

Pruža više IDS opcija, NIDS, gdje se mogu koristiti Snort i Suricata ili Bro IDS i HIDS, gdje

se koristi OSSEC koji pruža vidljivost od krajnje do izlazne točke određene mreže.

3.3. Sustav WinPatrol

WinPatrol je treći primjerak slobodno dostupnog alata koji prati i kontrolira važne dijelove

sustava i upozorava korisnika ako se radi o zlonamjernim programima i prijetnjama. Korisnik

tada može prekinuti procese, upravljati programima za pokretanje i očistiti kolačiće.

WinPatrol postoji u dvije verzije, besplatna osnovna (Free) verzija i plaćena (Plus) verzija.

Omogućava poboljšan rad sustava i snimanje prometa u stvarnom vremenu, bez usporavanja

Page 9: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

6

procesora, otkrivajući nepravilnosti (trojanske konje, crve, kolačiće, adware, spyware i druge

zlonamjerne programe). Preuzima se kao .exe datoteka i može se pokrenuti na Windows XP,

Vista, Windows 7, Windows 8 i Windows 10 uključujući x64 verzije, a još od 1997. godine

ima preko 2 000 000 preuzimanja. Na Slici 3.1 je prikaz detekcije trenutno pokrenutih

programa sustavom WinPatrol.

Slika 3.1 Sustav WinPatrol pokrenut na operacijskom sustavu Windows

Page 10: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

7

4. Programski paket Snort

4.1. Općenito

Snort je najrašireniji besplatni slobodno dostupni sustav za otkrivanje i sprječavanje napada

(IDPS), a služi za analizu prometa u stvarnom vremenu i zapisivanje paketa. Može izvesti

analizu protokola, pretraživanje sadržaja i uparivanje i otkrivanje raznih napada. Postoje tri

osnovna načina rada u Snortu:

• sniffer,

• packet logger i

• network intrusion detection.

Dosad ima preko 5 milijuna preuzimanja. Prva verzija Snorta datira iz 1998. godine i napisana

je za operacijski sustav Linux. Autor Snorta je Martin Roesch i do 2001. godine se taj sustav

razvijao pod njegovom kontrolom. Nakon toga dolazi u posjed Sourcefire Inc. tvrtke koja je

odredila posebni tim koji će se baviti unaprjeđivanjem Snorta i samim time mu je poboljšala

kvalitetu, ugled i rasprostranjenost. Od 1998. godine izašlo je mnoštvo verzija Snorta, a

trenutna najnovija je Snort 2.9.13.0. U ovom radu se koristi verzija Snort-2.9.8.3.

Pri preuzimanju Snorta, dostupne su tri varijante: community, registered i subscription.

Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja ima veći

broj pravila i opširnija je, se potrebno registrirati. Za treću, naprednu varijantu se potrebno

pretplatiti na Snort.

Najveća prednost Snorta je što su prve dvije verzije besplatne i odmah dostupne pa se

automatski stvara velika baza mogućih budućih korisnika Snorta. Snort je otvoren za

primjedbe i svatko može sudjelovati u unaprjeđivanju i ispravljanju pogreški te je tako

omogućen konstantan razvoj i napredak sustava.

Jedini nedostatak je da je potrebno jako dobro poznavati sintaksu pravila i sve mogućnosti i

opcije pisanja novih pravila, kako bi se ista mogla učinkovito stvarati. Samim time što postoji

mnogo tutorijala i knjiga o radu sa Snortom, može se zaključiti da na prvu nije jednostavan i

trivijalan.

4.2. Pravila

Osnovni dio, tj. baza Snorta su pravila, koja omogućavaju niz različitih funkcija za analizu

mrežnih paketa, od IP adrese i pristupne točke do pretraživanja korisnog sadržaja paketa

regularnim izrazima. Naučiti sintaksu pravila je jednostavno, ali i neophodno za korištenje

Page 11: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

8

Snorta. Svako pravilo podijeljeno je u dva dijela, tijelo i zaglavlje. U zaglavlju se definiraju

filtri za pretragu paketa, mrežni protokol, IP adrese izvorišta i odredišta i pripadajuće mrežne

maske, te pristupne točke izvorišta i odredišta, smjer koji može biti jednostran i obostran i

akcija koja će se obaviti nakon detekcije. Primjer pravila u najosnovnijem obliku prikazan je

na Slici 4.1, a u nastavku teksta je detaljno pojašnjen.

4.1 Primjer jednostavnog pravila

Prvo što se navodi pri pisanju pravila je akcija koja će se izvršiti, a to je u navedenom

primjeru alert. Osim alerta, koji se najčešće upotrebljava, postoje još i log (zapisivanje paketa

na disk), pass (ignoriranje paketa), activate (obavijest o dolasku i aktiviranje pravila), sdrop

(odbacivanje paketa) i drugi. Iduća opcija u zaglavlju pravila određuje mrežni protokol, ovdje

je to UDP, a inače postoje još i TCP, ICMP i IP protokoli. Nakon toga je potrebno definirati

IP adrese i usmjerenje u kojem će se obavljati analiza uhvaćenih paketa.

IP adrese se definiraju pomoću adrese mreže i adrese maske, npr. 192.168.52.0/24. Adresa je

prvi dio prije znaka “/”, a maska je broj nakon tog znaka. Osim uobičajenog navođenja

adrese, može se napisati i ključna riječ any, koja označava da se radi o bilo kojoj IP adresi i

pristupnoj točki. Adrese se također mogu napisati i u obliku liste, ali se trebaju odvojiti

zarezom i uokviriti uglatim zagradama. Uvijek je potrebno navesti dva para adresa koji

predstavljaju izvor i odredište.

Usmjerenje može biti jednostrano (kao u primjeru) i obostrano („<>“). Kod obostranog

smjera IP adrese s lijeve i desne strane znaka su u isto vrijeme i izvor i odredište, a inače je

odredište kod vrha strelice.

Tijelo pravila je drugi dio pravila, piše se unutar zagrada i sadrži tri vrste podataka: općenite

podatke, filtre povezane sa zaglavljem i filtre koji su vezani s podacima iz paketa.

Prva vrsta su općeniti podaci i potrebno ih je mapirati u obliku „ključna riječ:vrijednost”.

Općeniti podaci su:

• message,

• flow,

• reference,

• classtype i

• signature ID.

Page 12: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

9

Message (msg) je dio u kojem se opisuje o kojem pravilu se radi i predstavlja ono što će se

prikazati pri otkrivanju tog pravila. Flow (flow) definira u kojem smjeru ide mrežni promet, a

omogućava da se pravila primjenjuju samo u određenom smjeru. Reference (ref) služi za

definiranje referenci na izvore koji pobliže opisuju napad koji pravilo definira. Classtype

(classtype) određuje učinkovitost i funkciju napada, a postoji oko 40 definiranih vrsta.

Signature ID (sid/rev) je jedinstveni Snort identifikator za svako pravilo, a dodatno se definira

i revision koji predstavlja trenutnu reviziju pravila. Primjer jednostavnog pravila koje korisnik

može definirati u datoteci local.rules je prikazan na Slici 4.1.

Druga vrsta su filtri koji otkrivaju pakete preko informacija iz zaglavlja i provjeravaju

vrijednosti (redni broj fragmenta, tip usluge broj paketa, veličinu korisnih podataka u paketu,

veličinu prozora i sl.).

Posljednja stavka su složeniji filtri, a u pravilu ih može biti više. Ovdje je najvažniji content

koji dozvoljava korisniku da postavi pravila koja traže specifičan sadržaj unutar sadržaja

paketa, a može sadržavati mješovite tekstualne i binarne podatke. Osim contenta postoji i

mnoštvo modifikatora, a ovdje su navedeni samo neki najvažniji. Distance/offset

omogućavaju korisniku koji piše pravilo da definira gdje započeti pretraživanje, u odnosu na

početak korisnog toka podataka ili u odnosu na početak podudaranja sadržaja. Whitin/depth je

ključna riječ koja omogućava korisniku koji piše pravilo da specificira koliko daleko (do koje

dubine) u korisnom sadržaju će tražiti definirani mješoviti niz tekstualnih znakova i okteta.

PCRE je ključna riječ koja dopušta pisanje pravila pomoću perl kompatibilnih regularnih

izraza, a time se omogućuju složenije pretraživanje korisnog sadržaja. Byte_test opcija

dopušta pravilu da testira određeni broj bajtova u odnosu na određenu binarnu vrijednost.

Nakon što korisnik napiše određeno pravilo (npr. pravilo sa slike 4.1), ako dođe do njegovog

prepoznavanja nakon pokretanja Snorta, u konzoli se pojavljuje ispis kao na slici 4.2.

Slika 4.2 Izvođenje Snorta

4.3. Instalacija i konfiguracija

Programski paket Snort dostupan je za veliku većinu operacijskih sustava, pa se i

konfiguracije i početne postavke Snorta razlikuju od sustava do sustava. Instalacija se također

razlikuje, ali je u globalu sve veoma slično. U ovom radu Snort je instaliran na operacijske

sustave Windows, Ubuntu i Kali, a u sljedećim potpoglavljima su detaljno opisane instalacije

na prva dva.

Page 13: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

10

4.3.1. Instalacija i konfiguracija programskog paketa Snort na

operacijskom sustavu Windows

Instalacija na Windowsu započinje s preuzimanjem i pokretanjem instalacijske datoteke za

windows preuzete sa Snortove službene stranice https://www.snort.org/. Preporučljivo je

preuzeti zadnju najnoviju verziju Snorta i pripadajućih pravila.

Klikom na instalacijsku datoteku otvara se prozor s nekoliko pitanja o instalaciji. Prvo od njih

je odabir komponenti koje korisnik želi instalirati i po defaultu su odabrane sve komponente.

Zatim se odabire mjesto instalacijskog direktorija. Nakon toga se pojavi obavijest da je za

ispravan rad programskog paketa Snort na operacijskom sustavu Windows potrebna WinPcap

biblioteka funkcija za dohvat mrežnih paketa.

Prije samog pokretanja, nakon završene instalacije, potrebno je konfigurirati Snort kako bi bio

u mogućnosti ispravno raditi u trenutnoj okolini. Potrebno je obaviti više toga, ali jedna od

glavnih stavki konfiguracije je uređivanje pravila koja se nalaze u direktoriju rules unutar

Snorta. Osim njih postoji još jedan direktorij s preostalim pravilima, a to je preproc_rules.

Datoteku s pravilima koja se preuzme sa Snortove stranice potrebno je raspakirati u prethodno

navedene direktorije. Svaki direktorij predstavlja jednu skupinu sličnih svojstava. Takvom

podjelom se olakšava odabir koji se skup pravila unutar konfiguracijske datoteke želi koristiti.

Unutar direktorija rules nalazi se datoteka “local.rules“ u kojoj korisnik može pisati vlastita

pravila. Preuzimanjem sa Snortove službene stranice skine se 50-ak datoteka. Neki primjeri

grupiranja preuzetih datoteka su i pravila koja služe za nadzor HTTP prometa, SMTP

prometa, za otkrivanje DoS napada, za otkrivanje napada koji se provode SQL injekcijom i

sl.

Nakon raspakiravanja arhive (zip datoteke) u direktorij rules, potrebno je obaviti

konfiguraciju Snorta, kako bi se omogućio ispravan rad na konkretnom operacijskom sustavu.

Najviše promjena postavki unutar datoteke snort.conf treba odraditi ako se Snort instalira na

Windows operacijskom sustavu. Konfiguracija se provodi izmjenom nekih datoteka unutar etc

direktorija koji se nalazi u direktoriju programskog paketa, ali većinski dio se odradi

izmjenama u već spomenutoj datoteci snort.conf.

Prvo što je potrebno odraditi je definirati varijable poput $HOME_NET. Ta varijabla služi

kao zamjena za IP adresu korisnikovog računala i kasnije je u datoteci pri svakoj pojavi

određene IP adrese možemo koristiti umjesto nje.

Page 14: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

11

Slika 4.3 Postavljanje varijabli u datoteci snort.conf

Sljedeći korak je uređivanje putanje do pravila i podešavanje globalnih postavki. One se

podešavaju korištenjem ključne riječi config nakon koje slijedi naziv toga što se podešava.

Zatim se trebaju urediti pretprocesorski i izlazni moduli, na sličan način kao i prethodna

stavka. Jedina je razlika što se u ovom slučaju umjesto ključne riječi config koriste ključne

riječi preprocessor, odnosno output.

Zadnji i najbitniji korak je uređivanje skupa pravila koje će Snort koristiti pri prepoznavanju

paketa. Pravila se uključuju ključnom riječi include nakon koje slijedi putanja do datoteke

koja sadrži potreban skup pravila. Pravila koja nisu potrebna se mogu zakomentirati tako što

se na početak retka stavi znak “#”. Kod ove konfiguracije Snorta je dodatno specifično i to što

je u svim prethodno definiranim putanjama do pravila potrebno sve znakove “/” zamijeniti s

“\” jer je instalacija na operacijskom sustavu Windows.

4.3.2. Instalacija i konfiguracija programskog paketa Snort na

operacijskom sustavu Ubuntu

Instalacija Snorta na operacijskom sustavu Ubuntu ima dosta sličnosti s prethodnom, koja je

opisana u potpoglavlju 4.3.1., ali je najlakše sve odraditi preko terminala. Prije instalacije

Snorta potrebno je obaviti određena ažuriranja, preuzeti nekoliko knjižnica i daq source code

koji je potreban za ispravan rad Snorta. Nakon stvaranja direktorija u koji se spremi i instalira

programski paket Snort, preuzimanja pravila i njihovog raspakiravanja u novostvorene

direktorije, potrebno ga je konfigurirati. Konfiguracija je u principu ista kao i na Windowsu.

Ako korisnik želi napisati vlastito pravilo, to će uraditi u datoteci /etc/snort/rules/local.rules.

Unutar te datoteke se doda proizvoljan broj pravila u obliku koji je definiran u poglavlju 4.2.,

a zatim se može pokrenuti i testirati Snort.

Page 15: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

12

4.4. Pokretanje i ispitivanje programskog paketa Snort

Kao što je već rečeno, postoje 3 osnovna načina rada Snorta. Svaki od njih se pokreće na

drugačiji način i ima drugačije funkcionalnosti. Snort je osmišljen kao konzolna aplikacija i

pokretanje ova tri načina se svodi na pisanje različitih naredbi s dodatnim opcijama u konzoli.

Sniffer način rada je prvi koji je postojao u Snortu i najjednostavniji je od svih. Služi samo za

čitanje paketa s mrežnog sučelja i njihovo prikazivanje na ekranu.

Njegovo pokretanje je najjednostavnije, a potrebno je samo u konzolu upisati ”snort“ i jedan

od sljedeća tri parametra:

• -v - ispis zaglavlja paketa na ekran,

• -d - ispis sadržaje paketa na ekran i

• -e - ispis zaglavlja paketa s podatkovnog sloja.

Packet logger način rada je veoma sličan sniffer načinu rada, ali se ovdje uhvaćeni paketi ne

prikazuju na ekranu, nego se njihov sadržaj sprema u datoteku na disku. Potrebno je navesti

putanju do direktorija za pohranu podataka na tvrdom disku, a parametri za pokretanje Snorta

u ovom načinu rada su „–l“, „-h“ i „–b”.

Prvi parametar služi za definiranje direktorija u koji će se pohraniti rezultati, drugi parametar

određuje lokalnu mrežu, a treći omogućuje binarni zapis. Ako parametrom “-h” definiramo IP

adresu lokalne mreže, onda se u datoteku pohranjuju samo dolazni paketi koji kao IP adresu

odredišta imaju navedenu IP adresu.

Način rada Network intrusion detection je najsloženiji i ima najviše mogućnosti za

podešavanje. Njime se dohvaćeni paketi pregledavaju pomoću vrlo robusnog sustava pravila

koji može uređivati i nadopunjavati korisnik. Nakon što se paket prepozna, program izvodi

točno određenu akciju temeljenu na onome što je otkriveno. Za pokretanje u ovom načinu

rada je potrebno dodati parametar koji definira naziv konfiguracijske datoteke, a to je

snort.conf.

U ovom slučaju potrebno je omogućiti određivanje različitih vrsta dojave nakon otkrivanja

napada. Neki od parametara koji to omogućuju su: –A full (potpuna obavijest uz zaglavlje

paketa), -A none (bez obavijesti), -A fast (osnovni prikaz uz vrijeme, izvor i odredište), -A

console (jednak -A fast, ali je ispis u konzoli).

Primjer pokretanja Snorta u IDS načinu rada s nekoliko definiranih opcija prikazano je na

Slici 4.4.

Page 16: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

13

Slika 4.4 Pokretanje Snorta u IDS načinu rada

Sustav Snort je u ovom slučaju pokrenut na sučelju eth0, određen je ispis osnovnog prikaza uz

vrijeme, izvor i odredište, u konzoli i definirana je putanja do konfiguracijske datoteke

snort.conf.

Pri pokretanju u IDS načinu rada, Snort u konzoli prikaže koliko je kojih pravila učitano, a to

se vidi na sljedećoj slici (Slika 4.5).

Page 17: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

14

Slika 4.5 Broj učitanih pravila

Na slici iznad se vidi da je pročitano 4150 pravila, od kojih je 3476 pravila otkrivanja, a u

tablici odmah ispod toga su pravila raspodijeljena prema protokolima koje koriste.

Osim ova tri načina postoji i testna verzija Snorta koja se koristi za provjeru ispravne

konfiguracije Snorta. To se postiže dodavanjem parametra “-T” pri pisanju naredbe u konzoli.

Primjer uspješnog testiranja i prihvaćene konfiguracije Snorta je prikazan na slici ispod (Slika

4.6).

Page 18: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

15

Slika 4.6 Testno pokretanje Snorta

4.4.1. Snimanje prometa na operacijskom sustavu Windows

I posljednji slučaj je prikaz rada Snorta na Windowsu. U datoteci local.rules su napisana

nekolika najosnovnija pravila koja Snort detektira odmah prilikom pokretanja. U pravilima su

kao izvor i odredište napisana dva para ključne riječi any, tako da se gleda promet unutar

cijele podmreže. Tako se prvi i drugi otkriveni UDP paketi prenose s IP adrese

192.168.52.129 na 192.168.52.255 sve jedinice unutar podmreže, treći detektirani UDP paket

ide sa 192.168.52.140 na 192.168.52.254, a četvrti sa 192.168.52.254 na 192.168.52.136.

Prekidom snimanja Snorta automatski se definira sažetak odnosno rezime snimanja gdje piše

koliko je Snort paketa obradio u koliko vremena, koliko ih je primljeno, a koliko analizirano i

kojem protokolu pripada koliko paketa, a to je vidljivo na Slici 4.7.

Page 19: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

16

Slika 4.7 Snimanje Snortom na Windowsu

Page 20: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

17

5. Praktični rad

Kako bi se ispitala učinkovitost i funkcionalnost programskog paketa Snort, u okviru ovog

završnog rada provedeno je testiranje otkrivanja napada pomoću najrasprostranjenijeg IDPS-a

u svijetu. Za potrebe testiranja neophodno je bilo omogućiti virtualno okruženje. Ispitna

okolina sastavljena je od tri virtualna računala Kali, Ubuntu i Metasploitable2. Kali je vršio

napade na Ubuntu i Metasploitable2, a ti napadi su detektirani prethodno opisanim Snortom

koji je instaliran na virtualnoj mašini Ubuntu.

5.1. Virtualno okruženje i instalacija

Za ispravno testiranje i prikaz funkcionalnosti IDPS-a, prvo je potrebno ostvariti virtualno

okruženje. To je ostvareno programskim paketom VMware Workstation koji je namijenjen za

rad i pokretanje virtualnih strojeva. Unutar tog programskog paketa su stvorene tri virtualne

mašine (dvije žrtve i jedan napadač). Žrtve su posebno kreirani ranjivi Linux sustav

Metasploitable2 i Ubuntu x64, a najpogodniji napadač, specijalno dizajniran za penetracijsko

testiranje je Kali. Penetracijsko testiranje su simulirani cyber-napadi na računalnom sustavu

koji se provode radi procjene sigurnosti sustava.

Prvo je instalirana virtualna mašina Metasploitable2 dostupna na linku

http://sourceforge.net/projects/metasploitable/files/Metasploitable2. Nakon raspakiravanja

preuzete zip datoteke, potrebno je otvoriti VMware i kliknuti na Create a new virtual

machine. U sljedećem prozoru je moguće odabrati količinu RAM-a koju će zauzimati

virtualka, a u ovom slučaju to je 512 MB i odabir tvrdog diska. Virtualna mašina je time

instalirana i osnovno korisničko ime i šifra su msfadmin : msfadmin.

Instalacija Ubuntu x64 je veoma slična, također je potrebno s linka preuzeti virtualnu mašinu i

u VMwareu odabrati Create a new virtual machine. Također slijedi odabir niza postavki u

novom prozoru, unos imena i šifre za prijavu i odabir veličine zauzimanja RAM-a, što je u

ovom slučaju 1 GB.

I posljednji u nizu je Kali, a njegova ISO datoteka se može preuzeti s

https://www.kali.org/downloads, koji se otvori pri kreiranju nove virtualke u VMwareu.

Odabiru se postavke i veličina zauzimanja RAM-a, a ona je 2 GB. Početni podaci za prijavu

na Kali (korisničko ime i lozinka) su root : toor. Kalijev operacijski sustav korišten za potrebe

ovog završnog rada je Debian 8.x 64-bit. Namijenjen je testiranju probojnosti i hakiranju, a

sadrži preko 600 instaliranih programa za testiranje ranjivosti. Od mnoštva alata koje

posjeduje, a vidljivi su na Slici 5.1, u praktičnom radu su odabrana 3: Nmap, Sparta i Nikto.

Page 21: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

18

Slika 5.1 Alati dostupni na Kaliju

U sve tri virtualne mašine veoma je važno postaviti da je network adapter u modulu host-only

(privatna mreža). Početne postavke definiraju NAT (Network Address Translation) kao

mrežni način rada virtualke. Promjenom iz NAT u host-only, virtualne mašine neće moći

komunicirati s internetom, kao niti s glavnim računalom.

Sada je sve spremno za demonstraciju otkrivanja napada pomoću Snorta, a tri virtualke se

nalaze na VMwareu i spremne su za pokretanje što prikazuje Slika 5.2.

Page 22: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

19

Slika 5.2 Pripremljeno okruženje za praktični rad

Tri virtualne mašine nalaze se u privatnoj mreži i određene su im IP adrese.

• Metasploitable2 : 192.168.52.129

• Kali-Linux : 192.168.52.135

• Ubuntu : 192.168.52.140

Page 23: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

20

5.2. Simulirani napadi

Za potrebe ovog rada odabrana su tri alata na operacijskom sustavu Kali: Nmap, Sparta i

Nikto. Sva tri spadaju u skupinu alata za analizu ranjivosti (engl. Vulnerability Analysis) i

njima su simulirani napadi na ranjivi sustav.

Otkriveni su programskim paketom Snort i opisani su u nastavku.

5.3. Alat Nmap

Prvi napad obrađen u ovom radu je Nmap napad. Nmap („Network mapper”) je besplatna

slobodno dostupna funkcionalnost za istraživanje mreže i reviziju sigurnosti. Mnogi sustavi i

mrežni administratori smatraju da je koristan za zadatke kao što su praćenje rada računala ili

poslužitelja. Nmap upotrebljava IP pakete na različite načine kako bi odredio koji su hostovi

dostupni na mreži, koje usluge (naziv aplikacije i verzija) nude ti hostovi, koji operacijski

sustavi (i verzije OS-a) rade, koje vrste paketa filtera / vatrozida su u upotrebi i desetke drugih

obilježja. [8] Omogućava brzo skeniranje velikih mreža i ima jednog hosta (domaćina). Može

funkcionirati na većini operacijskih sustava, pa tako i na Linuxu, Windowsu i Mac OS X.

Nmap je čak proglašen i sigurnosnim proizvodom godine. To nije iznenađujuće jer je

fleksibilan, odnosno podržava desetke različitih naprednih tehnika mapiranja mreža, podržava

većinu operacijskih sustava, jednostavan je a pritom i funkcionalan, prilagođen radu i

skeniranju ogromnih mreža i besplatan.

Alati uključeni u Nmap paket su

• nping (alat za generiranje mrežnih paketa),

• ndiff (uslužni program za usporedbu rezultata Nmap skeniranja),

• ncat (uslužni program za umrežavanje) i

• nmap.

Alat nmap ima mnoštvo opcija, a najjednostavniji oblik pokretanja je da se u konzolu kalija

upiše Nmap i IP adresa virtualke koju želimo skenirati (Slika 5.3).

Page 24: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

21

Slika 5.3 Primjer pokretanja Nmap snimanja

Prije pokretanja Nmapa potrebno je bilo na virtualnom stroju Ubuntu pokrenuti Snort u IDS

načinu rada, kako bi mogao otkriti sumnjive događaje. Nakon što započne Nmap skeniranje,

na Ubuntu dolaze obavijesti, prikazane na Slici 5.4, uz poruku (SNMP AgentX/tcp request) i

klasifikaciju napada (Attempted information leak – pokušaj curenja informacija), vrijeme

napada i IP adrese i portove napadača i žrtve (192.168.52.135:47993 ─>192.168.52.140:161).

Slika 5.4 Snort registrira Nmap snimanje

Page 25: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

22

Drugi obrađeni Nmap napad je pokrenut s dodatnim opcijama –sP i –disable-arp-ping (Slika

5.5), te je za njega kreirano vlastito pravilo u local.rules Snort datoteci:

alert icmp any any -> 192.168.52.140 any (msg: "NMAP ping sweep Scan";

dsize:0;sid:10000004; rev: 1;)

Slika 5.5 Drugi primjer pokretanja Nmapa

5.4. Alat Sparta

Sparta je aplikacija u python grafičkom sučelju koja pojednostavljuje penetracijsko testiranje

mrežne infrastrukture pomažući tester penetracije u fazi skeniranja i nabrajanja. Omogućuje

testeru da uštedi vrijeme tako da ima pristup svojim alatima i da prikaže sve rezultate alata na

prikladan način. [9]

Page 26: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

23

Sparta se može pokrenuti preko Kali Applications menija ili preko komandne linije u konzoli

(upisom ključne riječi sparta). Otvara se novi prozor u kojem je potrebno kliknuti na

dodavanje novog hosta i upisati IP adresu one virtualke koju želimo analizirati i dodati u

djelokrug, a to je u ovom slučaju 192.168.52.140 (Ubuntu). Početak rada Sparte na zadanom

djelokrugu prikazan je na slici ispod (Slika 5.6).

Slika 5.6 Pokretanje alata Sparta

Page 27: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

24

Nakon dodavanja adrese, Sparta započinje skeniranje, a to otkriva unaprijed pokrenuti Snort

na Ubuntu. (Slika 5.7)

Slika 5.7 Otkrivanje Sparte pomoću Snorta, sustava za otkrivanje napada

Može se primijetiti kako dolazi do podudaranja u više različitih pravila i također su prikazane

IP adrese napadača i žrtve.

5.5. Alat Nikto

Nikto je slobodno dostupni skener web-poslužitelja i provodi mnogobrojne testove protiv

web-poslužitelja, uključujući opasne datoteke i probleme vezane uz zastarjele verzije. Nije

zamišljen kao nevidljivi alat, uspije testirati web-poslužitelj u veoma kratkom roku, ali je

primjetan u IDS i IPS. Ali postoji i podrška za anti-IDS metode za potrebe testiranja IDS-a.

Nikto ima SSL i HTTP Proxy podršku, sprema izvješća u XML-u, HTML-u ili CSV-u, može

skenirati više portova ili više poslužitelja i moguće ga je jednostavno ažurirati kroz konzolu.

Primjer Nikto napada obrađen u ovom radu prikazan je na slici ispod (Slika 5.8). Naredbom

“nikto –h 192.168.52.129” se pokreće Nikto v2.1.6, a meta, odnosno žrtva je virtualna mašina

Metsploitable2, čija je IP adresa zapisana u samoj naredbi.

Snort pokrenut u IDS načinu rada na Ubuntu prepoznaje više različitih pravila i ispisuje ih u

konzoli, a i ovdje je u svakom vidljivo vrijeme, protokol, naziv, klasifikacija i IP adrese i

portovi napadača (Kalija) i žrtve. Na Slici 5.8 je Snort detektirao „Unescaped space in http

uri“, „no content-length or transfer encoding in http response“ i druga pravila, a sva se

klasificiraju u grupu nepoznatog prometa. Prekid snimanja Snorta vrši se kombinacijom tipki

ctrl+c.

Page 28: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

25

Slika 5.8 Otkrivanje zlonamjernih aktivnosti postignutih alatom Nikto

Page 29: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

26

6. Zaključak

Demonstracijom nekih napada i snimanjem prometa u praktičnom dijelu ovog rada prikazano

je kako funkcionira glavni predstavnik sustava za otkrivanje i sprječavanje napada – Snort.

Danas je računalima definitivno potrebna vrlo visoka razina zaštite, jer su se napadi i

mogućnosti koje oni imaju veoma razvili i proširili. Jedini način obrane od nepoželjnih

aktivnosti je osigurati ispravan rad kvalitetnih sustava za detekciju.

U radu su prikazane mogućnosti sustava za otkrivanje i zaštitu od napada Snort, ali je i

opisana osnovna podjela tih sustava i nabrojeni su još neki drugi koji su također dobre

kvalitete.

Sustava za otkrivanje i sprječavanje napada ima mnogo, neki su besplatni i slobodno

dostupni, a neki ne. Iako se lako može zaključiti da su besplatni sustavi slabiji i lakše im

mogu promaći određene aktivnosti, najbolji primjer da se dokaže suprotno je upravo Snort

koji s preko 5 000 000 preuzimanja konkurira i kvalitetnim komercijalnim rješenjima, uz

uvjet da mu se proširi baza pravila.

Page 30: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

27

7. Literatura

[1] Wikipedia.org: Intrusion detection, http://en.wikipedia.org/wiki/Intrusion_detection

[2] Modrić, Edi: Sigurnosni sustavi za otkrivanje napada, Diplomski rad br. 1729, Fakultet

elektrotehnike i računarstva, Zagreb, 2008.

[3] Ravnić, Dino: Otkrivanje i zaštita od napada u mrežnim sigurnosnim sustavima,

Diplomski rad br. 1703, Fakultet elektrotehnike i računarstva, Zagreb, 2008.

[4] IDS vs. IPS: What is the Difference, https://www.varonis.com/blog/ids-vs-ips/

[5] Suricata Homepage, https://suricata-ids.org/

[6] Security Onion Homepage, https://securityonion.net/

[7] WinPatrol Homepage, http://www.winpatrol.com/download.html

[8] Kali Linux Tools Nmap, https://tools.kali.org/information-gathering/nmap

[9] Kali Linux Tools Sparta, https://tools.kali.org/information-gathering/sparta

[10] Kali Linux Tools Nikto, https://tools.kali.org/information-gathering/nikto

[11] Ben Everard, Hacking: a beginner’s guide, 7. Travnja 2016.,

https://www.linuxvoice.com/hacking-a-beginners-guide/

[12] Snort vs Suricata, veljača 2019., https://tacticalflex.zendesk.com/hc/en-

us/articles/360010678893-Snort-vs-Suricata

[13] Wikipedia.org: Snort (software), https://en.wikipedia.org/wiki/Snort_(software)

[14] Snort rule infographic, https://snort-org-

site.s3.amazonaws.com/production/document_files/files/000/000/116/original/Snort_rule_inf

ographic.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-

Credential=AKIAIXACIED2SPMSC7GA%2F20190525%2Fus-east-

1%2Fs3%2Faws4_request&X-Amz-Date=20190525T182529Z&X-Amz-

Expires=172800&X-Amz-SignedHeaders=host&X-Amz-

Signature=81a4443098cdb66c13b1979eb470269a9ebf2d7554d044fdcefe8992ef59f6d7

[15] Snort IDS Homepage, http://www.snort.org/

[16] What is IDS and IPS, https://www.juniper.net/us/en/products-services/what-is/ids-ips/

[17] Usman Nasir, 18. Srpnja 2016., How to install snort intrusion detection system on

Ubuntu, https://cyberpersons.com/2016/07/18/install-snort-ubuntu/

[18] Gavin Loughridge, 7. Travnja 2018., A Beginners Guide to Vulnhub,

https://medium.com/@gavinloughridge/a-beginners-guide-to-vulnhub-part-1-52b06466635d

[19] Studentski radovi iz računalne sigurnosti, dostupno na Internet adresi:

http://sigurnost.zemris.fer.hr/

Page 31: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

28

[20] Use SecGen to Generate a Random Vulnerable Machine, 23. Kolovoza 2017.,

https://null-byte.wonderhowto.com/how-to/use-secgen-generate-random-vulnerable-machine-

0179567/

[21] Wikipedia.org: Cyberattack, https://en.wikipedia.org/wiki/Cyberattack#Types_of_attack

Page 32: ZAVRŠNI RAD br. 5947 SUSTAVI ZA OTKRIVANJE Isigurnost.zemris.fer.hr/ns/2019_alilovic/SUSTAVI_ZA...Community je osnovna verzija i može se preuzeti odmah, za registered verziju, koja

29

Sažetak

Sustavi za otkrivanje i sprječavanje napada

Sustavi za otkrivanje i sprječavanje napada imaju veliku ulogu u području računalne

sigurnosti. U ovom radu su opisani sklopovski i programski sustavi za otkrivanje i

sprječavanje napada te je navedena njihova podjela. Nabrojani su i ukratko opisani dostupni

alati za otkrivanje i sprječavanje napada. Provedeno je ispitivanje sustava uz simulacije

napada na proizvoljnim primjerima u virtualnom okruženju.

Ključne riječi: sustavi, otkrivanje, sprječavanje, računalna sigurnost, napad

Abstract

Intrusion Detection and Prevention Systems

Intrusion Detection and Prevention Systems play a major role in the domain of computer

security. The hardware and program Intrusion Detection and Prevention systems are described

in this thesis and their distribution is specified. Tools for detecting and preventing attacks are

listed and briefly described. Examination of system with simulation of attacks on arbitrary

examples in the virtual environment is carried out.

Keywords: systems, detection, prevention, computer security, attack