Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
Prijevodi ove stranice:

Sustavi za detekciju mrežnih napada zasnovani na metodama strojnog učenja

Sažetak

<font inherit/inherit;;#333333;;white>Primjena strojnog učenja novi je pristup rješavanju postojećih problema u brojnim područjima, stoga nije iznenađujuća činjenica da se pokušava primijeniti i u području računalne sigurnosti.</font>

<font inherit/inherit;;#333333;;white>Cilj ovog rada jest objasniti što su sustavi za detekciju mrežnih napada i kako se strojno učenje može primijeniti prilikom izrade takvog sustava, dati pregled dosadašnjih postignuća u tom području te navesti prednosti i mane takvog pristupa. Također, rad se nastoji osvrnuti i na najčešće probleme na koje se nailazi prilikom implementacije takvog sustava.</font>

<font inherit/inherit;;#333333;;white>Motivacija za izradu sustava za detekciju mrežnih napada zasnovanih na metodama strojnog učenja zasniva se na intuitivnosti ideje primjene sustava koji uči i detektira anomalije na problem mrežnih napada, napada u kojima postoji velik broj parametara ključnih za razlikovanje napada i uobičajene aktivnosti strojeva i njihovih korisnika.</font>

Uvod

<font inherit/inherit;;#333333;;inherit>Karakteristike računalnih sustava današnjice, odnosno kriteriji postavljeni pred njih, nužno su integritet, pouzdanost i dostupnost. Napad jest, u kontekstu računalne sigurnosti, skup akcija čiji je ishod narušavanje navedenih karakteristika te ih je potrebno čim prije prepoznati i zaustaviti kako bi se sustav što ranije vratilo stanje u kojem je bio prije napada. Detekcija napada jest proces prepoznavanja i odgovaranja na skup aktivnosti koje čine napad. S obzirom na visoku cijenu i trajanje rada ljudskih stručnjaka nastoji se automatizirati proces detekcija napada izgradnjom sustava za detekciju mrežnih napada, što je po definiciji softverska ili hardverska komponenta čiji je zadatak nadziranje događaja na računalu i/ili mreži te detekcija aktivnosti koja potencijalno narušava određenu sigurnosnu politiku računala.</font>

<font inherit/inherit;;#333333;;inherit>Strojno učenje područje je umjetne inteligencije čiji je cilj izrada modela, i pripadnih implementacija, koji imaju sposobnost učenja i prilagodbe, odnosno unaprjeđenja ponašanja s iskustvom. Takvi se modeli dijele prema pristupu učenju na nadzirano učenje, gdje se učenje odvija nad skupom u kojem su poznati izlazi za dane ulaze, te nenadzirano učenje, koje nastoji pronaći uzorke i pravila u danom skupu podataka. Daljnja podjela modela strojnog učenja jest podjela na prediktivne modele, koji predviđaju budućnost, i deskriptivne modele, koji donose zaključke na temelju podataka.</font>

Sustavi za detekciju mrežnih napada

<font 9.0pt/inherit;;#333333;;inherit>Prvotni pristup izradi sustava za detekciju mrežnih napada bio je zasnovan na detekciji neispravnog korištenja. S obzirom da se takav pristup oslanja na apriorno znanje i pravila efikasan je pri prepoznavanju već viđenih, poznatih napada, međutim, pokazao se neprimjerenim za prepoznavanje novih, neviđenih napada. Kako bi se doskočilo tom problemu, osmišljen je drugi pristup – detekcija anomalija. Takav pristup zasniva se na učenju značajki uzoraka događaja koji čine uobičajeno ponašanje korisnika te opažanju uzoraka koji odskaču od naučenih uzoraka.</font>

<font 9.0pt/inherit;;#333333;;inherit>Sustavi za detekciju mrežnih napada mogu biti implementirani tako da razmatraju različita stanja (engl. stateful) ili da ih ne razmatraju (engl. stateless). U modernim, komercijalnim sustavima za detekciju mrežnih napada, kao što su HP OpenView, EMERALD eXpert, Snort i slični, napadi se promatraju kao kompozicija događaja, odnosno stanja, gdje se podaci analiziraju u vremenskoj i prostornoj domeni te se grade deterministički i/ili probabilistički modeli napada, a za korelaciju događaja koriste se sustavi zasnovani na pravilima. Pri primjeni metoda strojnog učenja na izgradnju sustava za detekciju mrežnih napada učestaliji su pristupi koji ne razmatraju stanja već svode detekciju napada na problem koji se može riješiti klasifikacijom. Navedeno se izvodi tako da se sirovi podaci preslikavaju u vektore značajki koji mogu sadržavati apriorno znanje, međutim, tada je nužno riješiti problem dimenzionalnosti, to jest minimizirati vektor značajki kako se ne bi dogodila prenaučenost modela, ali ostaviti ga dovoljno opširnim kako bi bilo moguće razlikovati napad od uobičajenog ponašanja.</font>

<font 9.0pt/inherit;;#333333;;inherit>Najčešći napadi koje bi sustav za detekciju mrežnih napada trebao klasificirati mogu se podijeliti u četiri kategorije, a to su DoS napadi, U2R napadi, R2L napadi i probing. Napadi tipa DoS (engl. denial-of-service) jesu napadi u kojima se vrši uskraćivanje usluge autoriziranom korisniku, kao što su primjerice SYN flood napadi, smurf napadi, teardrop i slični. Napadi tipa U2R (engl. user-to-root) nastoje iskoristiti ranjivosti operacijskog sustava s ciljem ostvarivanja korijenskih prava, a primjer takvog napada je buffer overflow. Napadi R2L (engl. remote-to-local) svode se na pokušaj napadača da ostvari pristup udaljenom računalu za koje ne posjeduje korisničke podatke putem mrežne konekcije, primjerice pogađanjem lozinki. Napadi tipa probing odnose se na pokušaj napadača da skupi informacije o računalu domaćinu, a primjeri takvih napada su port-scan i ping-sweep.</font>

Korištenje metoda strojnog učenja pri detekciji mrežnih napada

<font 9.0pt/inherit;;inherit;;inherit>U nastavku je dan pregled sljedećih metoda strojnog učenja i njihove primjene u izgradnji sustava za detekciju mrežnih napada: učenja zasnovanog na pravilima, stabala odluke, Bayesovog rasuđivanja, neuronskih mreža i clusteringa. Glavni izazovi pri izgradnji takvih sustava su velika cijena pogrešaka, nedostatak adekvatnih skupova podataka za treniranje, problem s označavanjem skupova podataka i ekstrakcija bitnih značajki, velika varijabilnost ulaznih podataka te prikaz rezultata.</font>

<font 9.0pt/inherit;;inherit;;inherit>Učenje zasnovano na pravilima metoda je koja se oslanja na skup detekcijskih pravila pomoću kojih se otkriva određena vrsta napada. Nedostatak ovog pristupa jest potreba za naknadnim ažuriranjem skupa pravila prilikom pojave novih, dotad nepoznatih napada. Ova metoda, budući da se oslanja na skup pravila i potpisa, najčešće se primjenjuje u sustavima za detekciju neispravnog korištenja, a rjeđe u sustavima za detekciju anomalija. Prva tehnika primjene učenja zasnovanog na pravilima je u ekspertnim sustavima zasnovanim na pravilima, gdje se gradi unaprijedni lanac pravila zasnovan na ljudskom znanju koji povezuje zapise aktivnosti mreže s poznatim potpisima napada. Prednost primjene učenja zasnovanog na pravilima jest njegova jednostavnost i transparentost pronalaženja potpisa, međutim u praksi su se pokazali lošima kada je broj pravila velik i kada pravila nisu fleksibilna. Fleksibilnija tehnika primjene učenja zasnovanog na pravilima je Fuzzy tehnika koja pokazuje bolje rezultate u prisutnosti nepoznatih napada i prikladnija je s obzirom na karakteristike ulaznog skupa podataka. Prednosti ovog pristupa su mogućnost kombiniranja ulaznih podataka iz različitih izvora i lakoća definiranja ako-onda pravila, a nedostaci zahtjevnost postupaka definiranja novih pravila, održavanja postojeće baze poznatih pravila i procesa provjere ispravnosti pravila zbog interakcije različitih pravila.</font>

<font 9.0pt/inherit;;inherit;;inherit>Stabla odluke algoritam su koji se koristi za klasifikaciju i donošenje odluka. Prednost ovog algoritma u kontekstu detekcije napada jest neovisnost veličine stabla o veličini ulaznog skupa podataka, koji je pri analizi mrežnog prometa iznimno velik. S druge strane, nedostatak ovog algoritma jest ovisnost kompleksnosti procesa konstrukcije stabla o veličini ulaznog skupa podataka. Stablo odluke sastoji se od tri glavne komponente: čvorova, listova i bridova, gdje listovi predstavljaju konačnu odluku, odnosno klasifikaciju. Dobre strane primjene metode stabala odluke u sustavima za detekciju mrežnih napada su jednostavnost, brza adaptacija i visoka stopa uspješne detekcije napada, a loše nemogućnost efikasne generalizacije novih napada i nemogućnost učenja iz neuravnoteženih skupova podataka. Ovi nedostaci ograničavaju primjenu stabala odluke na primjenu u sustavima za detekciju neispravnog korištenja. Jedan od najpoznatijih algoritama (u kontekstu izrade sustava za detekciju mrežnih napada) stabla odluke jest metoda nasumičnih šuma, čije su karakteristike brzo izvođenje za veliki skup ulaznih podataka, procjenjivanje važnosti svakog prediktora, podržanost rada s bazama u kojima nedostaje dio podataka te mogućnost korištenja generirane šume u drugim metodama i nad drugim podacima.</font>

<font 9.0pt/inherit;;inherit;;inherit>Bayesovo rasuđivanje u sustavima se za detekciju napada najčešće koristi kroz modeliranje korisničkih naredbi i maliciozne mrežne aktivnosti. Glavni pristupi su Bayesove mreže i naivni Bayes. Prednosti Bayesovog rasuđivanja su dobro podržavanje nepotpunih skupova ulaznih podataka, omogućavanje učenja uzročnih veza, lako komponiranje postojećeg, apriornog znanja, te efikasno izbjegavanje prenaučenosti. Nedostaci Bayesovog rasuđivanja su potreba za apriornim, ljudskim znanjem, cijena klasifikacije i ranjivost na treniranje malicioznim napadima s ciljem smanjenja distinkcije između razreda klasifikacije.</font>

<font 9.0pt/inherit;;inherit;;inherit>Neuronske mreže sastoje se od skupa neurona koji procesiraju informacije na ulazu u neuronsku mrežu te daju rezultat učenja na izlazu iz neuronske mreže. Ovaj se model trenira tako da veću važnost pridaje značajkama koje predstavljaju glavne značajke pojedinog razreda s ciljem lakše klasifikacije ulaznih podataka. Jedan od primjera primjene neuronskih mreža u sustavima za detekciju mrežnih napada jest primjena umjetnih neuronskih mreža, modela koji imitira ljudski središnji sustava te se sastoji od tri ili više sloja neurona: ulaznog, skrivenog i izlaznog sloja. Problemi koji se javljaju prilikom korištenja umjetne neuronske mreže za detekciju napada su prikupljanje podataka, reprezentacija i normalizacija podataka, smanjenje dimenzionalnosti, selekcija mrežne aktivnosti te treniranje i testiranje neuronske mreže. Nedostatak ovog pristupa jest veličina ulaznog skupa podataka te velik broj promatranih značajki čak i za male mreže. No, eksperimentalno je dokazana visoka preciznost i stopa detekcije te mogućnost korištenja neuronskih mreža za detekciju u stvarnom vremenu. Nedostaci primjene samo jedne neuronske mreže su međuovisnost svih čvorova, potreba za ponovnim treniranjem mreže u slučaju promjene ulaznih podataka i kompleksnost mreže pri velikom broju značajki i skrivenih slojeva. Rješenje s više neuronskih mreža, s druge strane, rješava navedene probleme razdvajanjem kompleksne domene na više manjih, hijerarhijski međuovisnih problema, ali stavlja veliki teret znanja na osobu koja razvija takvu neuronsku mrežu.</font>

<font 9.0pt/inherit;;inherit;;inherit>Clustering jest metoda nenadziranog strojnog učenja koja na visoko dimenzijskom velikom skupu ulaznih podataka pronalazi uzorke na temelju kojih grupira primjere u grozdove. Ovaj se pristup često primjenjuje u sustavima za detekciju anomalija gdje vrši grupiranje normalnog ponašanja u grozdove te svaki primjer koji je izdvojen od stvorenih grozdova klasificira kao anomaliju. Prednosti ovakvog pristupa uključuju nenadzirano učenje, laku adaptaciju na kompleksne tipove ulaznih podataka te brzo testiranje ulaznih primjera. Nedostaci ovog pristupa su kompleksnost računanja i rizik da će anomalije formirati vlastiti grozd. Također stopa detekcije ovog pristupa manja je u odnosu na sustave koji se oslanjaju na označeni skup ulaznih podataka.</font>

Prednosti i nedostaci pri korištenju metoda strojnog učenja za izradu sustava za detekciju mrežnih napada

<font 9.0pt/inherit;;inherit;;inherit>Većina današnjih primjena strojnog učenja u svrhu razvoja sustava za detekciju napada spada u kategoriju detekcije anomalija, dakle, općenite su prednosti takvih sustava efikasna detekcija novih napada, manja ovisnost o operacijskom sustavu i olakšano detektiranje neovlaštenog korištenja sustava. Nedostaci takvih sustava uključuju nisku preciznost detekcije, nedostupnost prilikom ponovnog treniranja i nemogućnost generiranja upozorenja na vrijeme. Karakteristike sustava za detekciju napada koje se ne poklapaju s karakteristikama primjene metoda strojnog učenja uključuju, primjerice, veliku cijenu pogreške; u slučaju lažno pozitivnih rezultata ljudski stručnjak vrši detaljnu, iscrpnu analizu koja je skupa i spora, dok se pri lažno negativnim rezultatima ne prepoznaje napad, čime se narušava temeljna svrha sustava za detekciju napada te zbog smanjenje pouzdanosti sustav gubi komercijalnu vrijednost. Jedan od najvećih problema prilikom primjene metoda strojnog učenja u sustavima za detekciju napada jest pronalazak adekvatnog skupa podataka; gotovo je nemoguće pronaći bazu podataka koja je u potpunosti čita (ne sadrži niti jedan napad) ili bazu koja sadrži reprezentativne primjerke svih vrsta napada. Iako bi idealan skup podataka bila baza podataka produkcijskog sustava, takve je baze gotovo nemoguće dobiti za istraživanja, s obzirom da bi to narušilo sigurnosne politike tvrtki vlasnika takvih baza podataka. Još jedna boljka ovakvih sustava je i mogućnost napadača da precizno izlažući sustav anomalijama nauči sustav da takve primjere prepoznaje kao normalno ponašanje sustava. U konačnici, čak i kad bi bili zanemareni svi navedeni nedostaci, preostaje problem predočavanja rezultata detekcije – ukoliko sustav vrši binarnu klasifikaciju i dalje je veliki dio posla klasifikacije napada preostao ljudskim stručnjacima, posebice uzevši u obzir nisku transparentnost metoda strojnog učenja.</font>

Zaključak

<font 9.0pt/inherit;;inherit;;inherit>Dosadašnja istraživanja u području primjene metoda strojnog učenja pri izgradnji sustava za detekciju mrežnih napada pokazala su kako prednosti i mane navedenog pristupa uvelike ovise o konkretnom algoritmu koji se primjenjuje. Nije moguće izdvojiti jednu metodu strojnog učenja kao superiornu, već je nužno da stručnjaci koji razvijaju takve sustave dobro poznaju i dobro definiraju domenu na koju se sustav primjenjuje. Također, zbog trenutnog nedostatka adekvatnog skupa podataka za treniranje i testiranje sustava koji se oslanjaju na metode strojnog učenja otežana je evaluacija takvih sustava. Na trenutno dostupnim resursima najbolje rezultate pokazuju hibridni modeli sustava u kojima su određene metode specijalizirane za određene zadatke. Sustavi za detekciju mrežnih napada zasnovani na metodama strojnog učenja najčešće nisu dovoljno dobri za (samostalnu) komercijalnu upotrebu, međutim ima još prostora za daljnja istraživanja i napredak.</font>

Literatura

[1] Ethem Alpaydin. Introduction to Machine Learning. The MIT Press, Cambridge, Massachusets, London, England, 2010.

[2] Mohamed Kamel Chunlin Zhang, Ju Jiang. Intrusion detection using hierarchical neural networks. University of Waterloo, Canada, 2005.

[3] Emna Bahri Mohammad Zahidur Rahman Chowdhury Mofizur Rahman Dewan MD. Farid, Nouria Harbi. Attacks Classification in Adaptive Intrusion Detection using Decision Tree. World Academy of Science, Engineering and Technology, 2010.

[4] Mercedes Garijo Jose Ignacio Fernander-Villamor. A Machine Learning Approach with Verification of Predictions and Assisted Supervision for a Rule-based Network Intrusion Detection System. Departamento de Ingeneria Telematica, Universidad Politecnica de Madrid, Spain, 2008.

[5] Bharat V. Buddhadev Kanubhai K. Patel. Machine Learning based Research for Network Intrusion Detection: A State-of-the-art. Charotar University of Science and Technology, SS College of Engineering, 2014.

[6] Sal Stolfo Leonid Portnoy, Eleazar Eskin. Intrusion Detection with Unlabeled Data Using Clustering. Columbia University, 2000.

[7] Michal Mazur Marek Malowidzki, Przemyslaw Berezinski. Network Intrusion Detection: Half a Kingdom for a Good Dataset. Military Communication Institute, 2015.

[8] D. Devaraj P. Ganesh Kumar. Intrusion Detection Using Artificial Neural Network with Reduced Input Features. Anna Universiy of Technology, Kalasalingam University, 2010.

[9] Andre Costa Drummond Paulo Angelo Alves Resende. A Survey of Random Forest Based Methods for Intrusion Detection Systems. University of Brasilia, Brazil, 2018.

[10] Vern Paxson Robin Sommer. Outside the Closed World: On Using Machine Learning For Network Intrusion Detection. International Computer Science Institute, Lawrence Berkeley National Laboratory, 2010.

[11] Shraddha Surana. Intrusion Detection using Fuzzy Clustering and Artificial Neural Network. Vishwakarma Institute of Technology, Pune, India, 2014.

[12] Nabil Belacel Yu Guan, Ali A Ghorbani. An Unsupervised Clustering Algorithm for Intrusion Detection. National Research Council of Canada, 2003a.

[13] Nabil Belacel Yu Guan, Ali A. Ghorbani. Y-means: A Clustering Method for Intrusion Detection. University of New Brunswick, Institute for Information Technology Saint John, 2003b.

racfor_wiki/mrezna_forenzika/sustavi_za_detekciju_mreznih_napada_zasnovani_na_metodama_strojnog_ucenja.txt · Zadnja izmjena: 2023/06/19 18:17 (vanjsko uređivanje)
Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0