Sustav koji automatizirano prati mrežne i sistemske događaje u svrhu detekcije kršenja sigurnosne politike naziva se sustav za detekciju upada na sustav (linkto eng. intrusion detection system – IDS). Takav sustav nije zadužen za sprječavanje upada na sustav. U tu se svrhu (sprečavanje upada) koristi sustav za sprječavanje upada (linkto: eng. intrusion preventions system – IPS), koji najčešće kao jedan od svojih dijelova sadrži i sustav za detekciju upada. Međutim, najčešće programska rješenja posjeduju elemente i za detekciju i za sprečavanje, stoga se radi o sustavima za detekciju i sprječavanje upada (IPDS). Najvažnija uloga takvih sustava jest bilježenje, tj. identificiranje mogućih sigurnosnih incidenata te bilježenje konteksta istih. Tek kada je mogući sigurnosni incident zabilježen, sustav pokušava spriječiti upad (naravno, ukoliko je to u stanju).
IDS sustavi dijele se na NIDS i HIDS sustave, tj. sustave za detekciju mrežnih upada i upada na lokalno računalo (eng. network / host IDS):
Još jedna podjela sustava za detekciju jest po načinu same detekcije. Tako postoje sustavi koji pronalaze upade pomoću:
Oba sustava posjeduju specifičnosti, tj. prednosti i mane.
Mana prvog načina jest da sustav mora duže vrijeme „učiti“ normalno ponašanje sustava, pri čemu postoji i mogućnost krivog učenja. Prednost mu je što može otkriti prethodno nezabilježene vrste napada.
Mana drugog načina je ta da obrazac napada mora biti poznat kako bi se njegov potpis mogao usporediti sa trenutnim događajima na sustavu. Prednost ovog načina rada jest pouzdanost detekcije (manji broj lažnih detekcija).
Metode kojima se koriste dijelovi sustava za sprečavanje upada (nakon što je isti detektiran) brojne su, a neke od temeljnih su blokiranje prometa iz smjera napada, podizanje alarma, zaključavanje dijela sustava pod napadom i sl.
Snort je besplatni alat otvorenog koda koji se koristi za detekciju mrežnih upada na sustav (NIDS). Trenutna inačica alata (2.9) izdana je 6.4.2011. Alat je dostupan na Windows (XP, Vista, 7) i Linux operativnim sustavima. Uz alat je preporučljivo nabaviti i nekoliko dodatnih komponenti. Prvenstveno se to odnosi na sustav za upravljanje bazama podataka (eng. RDMBS) koji će poslužiti kao skladište za spremanje zapisa događaja na sustavu te grafičko sučelje za pregled i administraciju događaja. Snort je moguće koristiti sa dva besplatna sustava baza podataka – MySQL i PostgreSQL. Također, postoji više besplatnih grafičkih sučelja za Snort - Aanval, Snorby, BASEi RazorBack. U nastavku teksta bit će opisana uporaba alata uz pomoć Snorby grafičkog sučelja.
Snort funkcionira na principu analize mrežnog prometa u realnom vremenu. Alat presreće promet te ga analizira na temelju dvije osnovne stavke – analize protokola te pretrage sadržaja. U prvom slučaju Snort uspoređuje informacije o protokolu (zapisane u zaglavlju paketa) sa definiranim pravilima samog alata. Za svaki (uobičajeni) protokol postoje posebne definicije i pravila. U drugom slučaju alat pretražuje sadržaj mrežnog paketa na uzorke koji indiciraju rizični sadržaj.
Slika 1. Izgled Snort konfiguracijske datoteke
Instalacija alata ovisna je o operativnom sustavu, međutim najčešće se radi o relativno jednostavnom postupku. Potrebno je dohvatiti i instalirati alat te odabrati bazu podataka u koju će se spremati događaji (te postaviti korisničko ime i lozinku za pristup samoj bazi). Korisno je alat postaviti na način da se automatski pokreće s pokretanjem samog sustava (postupak također ovisi o OS-u).
Slika 2. Ispis detektiranih događaja na komandnoj liniji
Nakon pokretanja, Snort u realnom vremenu nadzire promet te prijavljuje i klasificira sve događaje koji se podudaraju s definiranim pravilima. Prikaz je, bez dodatnog grafičkog sučelja, ograničen na izlistavanje događaja u komandnoj liniji (te istovremenom spremanju u bazu podataka), tj. ne postoji način da se događaji pregledavaju na sistematičan način. Nakon instalacije i pokretanja Snorby sučelja (detaljne upute), korisniku je omogućen
Slika 3. Sumarni prikaz događaja
Snorby omogućuje praćenje više odvojenih instanci Snort alata istovremeno. Moguć je sumarni prikaz u raznim vremenskim intervalima po:
Uz sumarni, omogućen je i pregled nekoliko posljednjih te ukupan broj događaja svake klase. Klasa događaja je vrsta napada koja se tim događajem (tj. mrežnom aktivnošću) pokušava ostvariti.
Slika 4. Prikaz svih događaja
Pregled događaja omogućuje i detaljni uvid u neki događaj, tj. paket koji je uzrokovao isti, (slika 4.) prijavljen od Snorta, uključujući:
Slika 5. Prikaz detalja pojedinačnog događaja
Snorby pomoću administracijskog dijela sučelja omogućuje definiranje novih klasa događaja te dodavanje promatranih instanci Snorta. Postavljanje samog Snorta još uvijek je nužno obaviti pomoću izmjene konfiguracijskih datoteka samog alata.
Alati za nadzor lokalnih dijelova sustava (datotečnog sustava, memorije i sl.) imaju svog predstavnika u Tripwire programskom rješenju. Također besplatni alat otvorenog koda, Tripwire je nastao na temelju komercijalnog istoimenog alata (čiji kod više nije dostupan). Alat je dostupan na Linux/BSD operacijskim sustavima.
Tripwire funkcionira na način da nakon instalacije pregleda cijeli datotečni sustav te za svaku pregledanu datoteku sprema informacije u bazu podataka. Sustav u pozadini promatra svaku promjenu na datoteci i, ukoliko zamijeti sumnjiv ili neautorizirani pokušaj izmjene datoteke, dojavljuje korisniku informacije o zlonamjernim aktivnostima. Alat također posjeduje bazu potpisa s kojom uspoređuje svaki pokušaj izmjene sustava kako bi detektirao one sumnjive.
Posljednje sigurnosne preporuke