Slijede razlike između dviju inačica stranice.
Starije izmjene na obje strane Starija izmjena Novija izmjena | Starija izmjena | ||
racfor_wiki:primjena_strojnog_ucenja_u_racunalnoj_sigurnosti [2021/01/17 19:03] arados |
racfor_wiki:primjena_strojnog_ucenja_u_racunalnoj_sigurnosti [2024/12/05 12:24] (trenutno) |
||
---|---|---|---|
Redak 24: | Redak 24: | ||
U nastavku biti će istaknuto i objašnjeno nekoliko primjera primjene strojnog učenja za rješavanje problema računalne sigurnosti, te se na kraju dotiče sigurnosti samog modela strojnog učenja. | U nastavku biti će istaknuto i objašnjeno nekoliko primjera primjene strojnog učenja za rješavanje problema računalne sigurnosti, te se na kraju dotiče sigurnosti samog modela strojnog učenja. | ||
+ | ===== Strojno učenje ===== | ||
+ | |||
+ | Strojno učenje grana je umjetne inteligencije koja se bavi oblikovanjem algoritama koji svoju učinkovitost poboljšavaju na temelju empirijskih podataka. Algoritmi strojnog učenja baziraju se na heurističkim, | ||
===== Metode ===== | ===== Metode ===== | ||
Redak 29: | Redak 32: | ||
==== Detekcija mrežne krađe identiteta (eng. Phishing) ==== | ==== Detekcija mrežne krađe identiteta (eng. Phishing) ==== | ||
- | Mrežna krađa identiteta (eng. phishing) je krađa | + | Mrežna krađa identiteta (eng. phishing) je krađa |
- Detekcija | - Detekcija | ||
- Nadgledanje životnog ciklusa računa | - Nadgledanje životnog ciklusa računa | ||
Redak 79: | Redak 82: | ||
Sustavi detekcije upada u mrežu mogu se postaviti i u vanjski dio mreže prije vatrozida umjesto nakon njega kao na slici. Oba pristupa imaju svoje dobre i loše karakteristike, | Sustavi detekcije upada u mrežu mogu se postaviti i u vanjski dio mreže prije vatrozida umjesto nakon njega kao na slici. Oba pristupa imaju svoje dobre i loše karakteristike, | ||
- | Genetičko mrežno programiranje (eng. Genetic Network Programming - GNP) je ujedinjeno učinkovito rješenje za detekciju zlouporabe i anomalija. Predložili su ga Lu, Mabu, Wang i Hirasawa 2013. godine. Spojeni su algoritam genetike i stupnja podudaranja tako da redundantna pravila mogu biti izbačena a ona korisna filtrirana. Sustav je testiran na KDDcup99 bazi podataka. Predloženi algoritam izbacivanja redundantnih pravila (eng. pruning algorithm) ne taži ulaz prethodno stečenog znanja nego se pravilo izbacuje ukoliko ne zadovoljava određeni prag stupnja podudaranja. | + | Genetičko mrežno programiranje (eng. Genetic Network Programming - GNP) je ujedinjeno učinkovito rješenje za detekciju zlouporabe i anomalija. Predložili su ga Lu, Mabu, Wang i Hirasawa 2013. godine. Spojeni su algoritam genetike i stupnja podudaranja tako da redundantna pravila mogu biti izbačena a ona korisna filtrirana. Sustav je testiran na KDDcup99 bazi podataka. Predloženi algoritam izbacivanja redundantnih pravila (eng. pruning algorithm) ne traži ulaz prethodno stečenog znanja nego se pravilo izbacuje ukoliko ne zadovoljava određeni prag stupnja podudaranja. |
Sustav je treniran nad 8068 slučajno izabranih konekcija, od kojih je 4116 bilo normalnih, a 3952 primjeri štrumf (eng. smurf) i neptun (eng. neptune) napada. Nakon treniranja dobiveno rješenje je testirano na 4068 normalnih i 4000 zlonamjernih konekcija. Točnost je 94.91%, stopa lažno negativnih je bila 2.05%. Tablica 2 prikazuje usporedbu različitih algoritama i predloženog algoritma. | Sustav je treniran nad 8068 slučajno izabranih konekcija, od kojih je 4116 bilo normalnih, a 3952 primjeri štrumf (eng. smurf) i neptun (eng. neptune) napada. Nakon treniranja dobiveno rješenje je testirano na 4068 normalnih i 4000 zlonamjernih konekcija. Točnost je 94.91%, stopa lažno negativnih je bila 2.05%. Tablica 2 prikazuje usporedbu različitih algoritama i predloženog algoritma. | ||
Redak 109: | Redak 112: | ||
Malo jednostavnije sustave za dokaz ljudske interakcije moguće je razbiti korištenjem umjetne inteligencije. Metode strojnog učenja i računalnog vida omogućuju da CAPTCHA test podijelimo na segmente u kojima je po jedan znak, te pomoću neuronske mreže koja zna slova i brojeve dobivamo predikciju za svaki znak. | Malo jednostavnije sustave za dokaz ljudske interakcije moguće je razbiti korištenjem umjetne inteligencije. Metode strojnog učenja i računalnog vida omogućuju da CAPTCHA test podijelimo na segmente u kojima je po jedan znak, te pomoću neuronske mreže koja zna slova i brojeve dobivamo predikciju za svaki znak. | ||
{{ : | {{ : | ||
- | Slika 3. Razbijanje | + | Slika 3. Razbijanje |
- | Ovom idejom eksperimentirali su Chellapilla i Simard, koristeći sedam različitih sustava za dokaz ljudske interakcije. Najprije su naučili njihove zajedničke jakosti i slabosti. Predložili su pristup koji najprije obavlja lokalizaciju slova i brojeva - korak segmentacije, | + | Ovom idejom eksperimentirali su Chellapilla i Simard, koristeći sedam različitih sustava za dokaz ljudske interakcije. Najprije su naučili njihove zajedničke jakosti i slabosti. Predložili su pristup koji najprije obavlja lokalizaciju slova i brojeva - korak segmentacije, |
^ HIP ^ Stopa uspješnosti segmentacije | ^ HIP ^ Stopa uspješnosti segmentacije | ||
Redak 121: | Redak 124: | ||
| Google/ | | Google/ | ||
- | Faza segmentacije | + | |
+ | |||
+ | Faza segmentacije | ||
+ | - Jako puno nevažećih uzoraka detektirano | ||
+ | - Teška identifikacija važećih znakova | ||
+ | - Računalno skupo | ||
+ | |||
+ | |||
+ | ===== Sigurnost strojnog učenja ===== | ||
+ | |||
+ | Kada se koristi strojno učenje da bi smo osigurali neki računalni sustav, moramo biti svjesni i prednosti i mana tih sustava. Identificiranje kritičnih točaka ili ulaza koji mogu biti potencijalno opasni po učenje (uzrokovati prenaučenost i sl.) je ključni korak u integraciji strojnog učenja u računalnu sigurnost. M. Bareno et al. bave se upravo temom evaluacije sigurnosti sustava strojnog učenja. Daju opsežan pregled raznih napada usmjerenih na iskorištavanje slabosti sustava SU. To mogu biti: | ||
+ | * Uzročni napad - mijenja proces treniranja | ||
+ | * Napadi na integritet i dostupnost - stvaranje lažno pozitivnih kao proboj u sustav | ||
+ | * Istraživački napadi - iskorištavanje postojećih ranjivosti | ||
+ | * Ciljani napadi - usmjereni na određeni ulaz | ||
+ | * Neselektivni napadi - ulazi zataje | ||
+ | |||
+ | Autori predlažu RONI ( Reject On Negative Impact) obranu, koja bi ignorirala sve podatke za treniranje koji bi potencijalno mogli imati negativan utjecaj na točnost klasifikacije. Razmatraju se dva glavna tipa obrane. | ||
+ | |||
+ | Prvi tip je obrana protiv istraživačkih napada ograničavanjem pristupa proceduri treniranja i podacima, čime bi napadaču bilo teže primijeniti obrnuti inženjering. Također, što je kompliciraniji prostor hipoteza teže će napadač zaključiti naučene hipoteze. Dodatno, braniteljski sustav može ograničiti i povratne informacije (ili poslati lažne) da bi napadaču otežali ulazak u sustav. | ||
+ | |||
+ | Drugi tip je obrana protiv uzročnih napada, u kojima napadač može manipulirati i učenjem i evaluacijom. U ovom slučaju, braniteljski sustav može iskoristiti RONI obranu; sustav će imati dva klasifikatora. Jedan klasifikator je treniran na osnovnom skupu a drugi na osnovnom skupu i potencijalnom primjeru. Ako se pogreške ta dva klasifikatora značajno razlikuju potencijalni primjer se tretira kao zlonamjeran. | ||
+ | |||
+ | ===== Zaključak ===== | ||
+ | Algoritmi strojnog učenja su učinkovit alat koji se može primijeniti i na računalnu sigurnost. Njihova prilagodljivost problemu, skalabilnost i mogućnost brze prilagodbe novim i nepoznatim problemima čini ih vrlo popularnim rješenjem. Postoje algoritmi strojnog učenja za detekciju pokušaja mrežne krađe identiteta - phishing-a i detekciju pokušaja upada u mrežu. Strojno učenje se uspješno može primijeniti i za razvoj sustava autentifikacije i provjeru sigurnosti sustava koji osiguravaju dokaz ljudske interakcije. Iako su ti sustavi strojnog učenja razvijeni da bi zaštitile razne baze podataka i web stranice oni su sami ranjivi određenim vrstama zlonamjernih napada. Predloženi su, također, i načini da se SU algoritmi od nekih vrsta napada zaštite i povećaju učinkovitost. | ||
+ | |||
+ | Postoji jako puno mogućnosti primjene strojnog učenja, i općenitije umjetne inteligencije, | ||
+ | |||
+ | ===== Literatura ===== | ||
+ | [[https:// | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | [[http:// | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | [[https:// | ||
- | http:// | + | [[https:// |
- | https:// | + | |
- | https:// | + |