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

Modeliranje neuronskih mreža u svrhu otpora lozinki na napade pogađanja

Sažetak

Lozinke su danas jedan od glavnih načina autentifikacije korisnika. Korisnici su suočeni s problemom pronalaska lozinke koja je dovoljno robusna te su lozinke kao takve ranjive na različite napade. Postojeći pristupi koji procjenjuju snagu lozinki temeljeni na pogađanju su ili netočni ili prespori za provjeru u stvarnom vremenu. U ovom radu opisano je korištenje neuronskih mreža za modeliranje lozinki otpornih na napade pogađanja.

Ključne riječi: lozinka; neuronska mreža; sigurnost

Uvod

Lozinke su trenutno najčešći oblik autentifikacije korisnika. Međutim, korisnici često biraju predvidljive lozinke, što omogućuje uspješne napade u pronalasku lozinki. Kao odgovor na to, napravljene su razne tehnike procjene snage lozinke. Ove tehnike su često vrlo računski zahtjevne te je potrebno i po nekoliko dana za njihovo izvršenje. Iz toga razloga su te tehnike obično neprikladne za procjenu snage lozinke u stvarnom vremenu.

U svrhu točnijeg i bržeg mjerenja snage lozinke koriste se neuronske mreže. U ovom radu opisan je predložak arhitekture neuronske mreže u svrhu otpora lozinki na napade pogađanja temeljen na radu Modeling Password Guessability Using Neural Networks sa sveučilišta Carnegie Mellon [1].

Metode mjerenja snage lozinke

Modeli koji mjere snagu lozinke se većinom oslanjaju na simuliranje protivničkog pogađanja lozinke. Neuronska mreža opisana u ovom radu se temelji upravo na tom tipu modela. Neki od pristupa mjerenja snage lozinke koji se temelje na protivničkom pogađaju lozinke su vjerojatnosne gramatike bez konteksta (engl. Probabilistic Context-Free Grammars - PCFG), Markovljevi modeli i metode “rukovanja” listama riječi (engl. Mangled Wordlist Methods) [2].

Vjerojatnosna gramatika bez konteksta, engl. PCFG, je probabilistička metoda koja se temelji na tome da su lozinke strukturirane po šabloni (recimo, 6 slova nakon kojih dolaze 2 broja) i simbolima koji ulaze u tu strukturu. Vjerojatnost lozinke je vjerojatnost šablone pomnožene sa vjerojatnosti simbola u toj strukturi. Markovljevi modeli su modeli koji previđaju vjerojatnost znaka lozinke na temelju prethodnih znakova ili konteksta znakova. Metode “rukovanja” listama riječi koriste pravila koja opisuju uobičajene načina kako ljudi izrađuju lozinke. Takve metode stvaraju liste mogućih lozinki gdje bi primjerice jedno od pravila bilo dodavanje znamenke i promjena simbola ‘a’ u ‘@’. Dva poznata alata koja koriste opisanu metodu su Hashcat i John the Ripper. Iako se ovaj tip metode pogađanja lozinki ne temelji direktno na statističkom modeliranju, brzo dolazi do točne prepostavke te se zbog toga danas široko koristi. Iako opisane metode mogu precizno doći do lozinke stvorene od strane čovjeka, vremenski i memorijski je zahtjevno pružiti korisniku informaciju o snazi lozinke u stvarnom vremenu.

Neuronska mreža

Motivacija koja je dovela do ideje neuronskih mreža dolazi od građe bioloških sustava. Mozak se sastoji od mnoštvo neurona koji paralelno obrađuju podatke. Kako bi čovjek spoznao o čemu se radi, prvotno se paralelno obrađuju informacije pa se tek onda dolazi do zaključka o čemu je riječ. Primjerice, kako bi čovjek prepoznao mačke sa slike, mozak obradi informacije koje su zapravo slika te nakon toga spoznaje gdje su mačke. Neuronske mreže se zasnivaju upravo na radu mozga - nije definiran način na koji treba obraditi podatke, nego mreža uči na temelju dobivenih podataka. Posebno bitno svojstvo je generalizacija. To svojstvo omogućuje mreži dobru procjenu iako je na ulaz doveden skup podataka koji nije sasvim precizan. Neki od konkretnih primjera uporabe neuronskih mreža su u obradi jezika, prepoznavanju uzoraka te financijama. Neuronske mreže u obradi jezika se primjerice koriste tako da mreža na temelju govora korisnika pretvori govor u tekst. Zračne luke koriste neuronske mreže u svrhu prepoznavanja uzoraka - primjerice prepoznavanje oružja u prtljagama. Financije koriste neuronske mreže kako bi na temelju prijašnjih podataka mogli napraviti generalizaciju i bitno brže donijeti odluku [3].

Jedna od mogućih izgradnji neuronske mreže u svrhu pogađanja lozinki je ta da se sustav trenira na način da se generiraju naredni simboli lozinke temeljeni na prijašnjim simbolima lozinke [1]. Primjerice, kako bi izračunali vjerojatnost lozinke “bad”, pitali bi mrežu koja je vjerojatnost pojave simbola “b”, zatim simbola “a” nakon “b” te nakon toga simbola “d” nakon “ba”. Kako bi generirali lozinke iz neuronske mreže, odvajaju se sve lozinke čija je vjerojatnost iznad zadanog praga, a odabrane lozinke sortiramo po vjerojatnostima. Slika 1 prikazuje prethodno opisanu mrežu s primjerom lozinke “bad”.

Slika 1 - Primjer neuronske mreže koja predviđa sljedeći simbol lozinke [1]

Analiza neuronske mreže za procjenu snage lozinke

Pri procjeni snage lozinke, računa se broj koliko je puta pogođena lozinka. Tehnika samog nabrajanja lozinki je računski zahtjevna te se u tom slučaju koristi metoda Monte Carlo. Pri korištenju metode Monte Carlo, generiraju se i računaju vjerojatnosti za barem milijun slučajno odabranih lozinki.

Podaci za analizu opisane neuronske mreže su skupljeni s Mechanical Turk-a, skraćeno MTurk. MTurk je platforma koju vodi Amazon.com, a pruža brz pristup potrebnim skupovima podataka [4]. Lozinke generirane koristeći MTurk su vrlo slične lozinkama u stvarnom svijetu. Korišteni su sljedeći skupovi podataka:

  • 1class8: 3,062 lozinki dužih od 8 znakova
  • 1class16: 2,054 lozinki dužih od 16 znakova
  • 3class12: 990 lozinki koje imaju barem 3 karakteristike od karakteristika: veliko slovo, malo slovo, posebne simbole, brojeve te imaju barem 12 znakova
  • 4class8: 2,997 lozinki koje moraju imati sve karakteristike navedene u prethodnoj točki I barem 8 znakova

Nakon treniranja mreže, utvrđeno je da su neuronske mreže bolje u predviđanju lozinki od drugih metoda, čak i kada se koriste kompliciranije lozinke. Slika 2 prikazuje da je neuronska mreža za skup 4class8 pogodila 75% lozinki u 10^16 pokušaja, dok sljedeća najbolja metoda, PCFG, pogađa 57% lozinki u 10^16 pokušaja. Metoda MinGuess prikazana na Slici 2 predstavlja idealizirani pristup pogađanju lozinki u kojem se lozinka smatra pogođenom čim ju je bilo koja od metoda pronašla. MinGuess metoda upućuje na korištenje više metoda za pronalazak lozinki iako se iz Slike 2 vidi da neuronska mreža nadmašuje pojedinačne metode pogađanja.

Slika 2 - Graf sa skupom 4class8; Os x predstavlja broj pokušaja pogađanja, a os y predstavlja postotak pogođenih lozinki [1]

Zaključak

U ovom radu prikazana je jedna od mogućih implemetacija neuronske mreže u svrhu otpora lozinki na napade pogađanja. Pokazalo se da su neuronske mreže bolji procjenjitelji lozinki od drugih metoda navedenih u poglavlju Metode mjerenja snage lozinke. Neuronske mreže su zaigurno moćno sredstvo za daljnji napredak u pronalaženju načina za otpor pogađanju lozinki.

Literatura

racfor_wiki/modeliranje_neuronskih_mreza_u_svrhu_otpora_lozinki_na_napade_pogadanja.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