Lozinke su najčešći način autentikacije korisnika na Internetu. Zabrinjavajuća je statistika da samo 54% korisnika koristi različite lozinke za svoje račune. Osim toga, lozinke su često prekratke i jednostavne, što predstavlja veliku slabost sigurnosti korisničkih računa. Međutim, neki koraci za jačanje sigurnosti lozinka su jednostavni i uvelike mogu pomoći u zaštiti privatnosti i sigurnosti korisnika na Internetu.
Ključne riječi: lozinke; sigurnost; Internet; zaštita
Lozinke su najčešći način autentikacije korisnika na Internetu [1]. Lozinke su nizovi znakova - slova, brojeva i ostalih znakova - koje korisnici unose uz svoje ime, adresu elektroničke pošte ili neki drugi podatak koji ih definira. Zabrinjavajuća je statistika da samo 54% korisnika koristi različite lozinke za svoje račune. Osim toga, lozinke su često prekratke i jednostavne, što predstavlja veliku slabost sigurnosti korisničkih računa [2]. Cilj seminara je istaknuti neke od ovih slabosti te dati neke osnovne načine kako se mogu ukloniti.
Lozinke su jako jednostavan način pružanja sigurnosti - one su jedan od načina autentikacije korisnika. Autentikacija je proces kojim neki informacijski sustav provjerava korisnikov identitet. Točnije, provjerava se je li korisnik onaj za kojeg on tvrdi da jest. Primjerice, jedan od načina autentikacije je osobna iskaznica, koja sadržava dovoljne informacije da se osobu koja posjeduje iskaznicu usporedi s onom čija je iskaznica. Međutim, na Internetu nemamo samo jedan identitet - osobni - već je naš identitet povezan s mnogim korisničkim računima. Zato bi nepraktično bilo da sve svoje informacije moramo upisivati pri svakoj prijavi, već su osmišljeni načini kako bi se taj proces olakšao i ubrzao.
Lozinke su jedan od najjednostavnijih načina za postići brzu i za korisnika jednostavnu autentikaciju. Korisnik upisuje svoje korisničko ime te kratki niz znakova koje je sam osmislio i zapamtio. U davanju previše povjerenja samom korisniku, lozinke pate od jedne velike slabosti - da se lako mogu probiti postupkom grube sile [4]. Međutim, više o slabostima i tom postupku bit će riječ u idućim poglavljima. Još jedna ljudska slabost je tendencija da se koristi ista lozinka za više ili čak sve sustave na kojima postoji njihov korisnički račun [4]. Ovo je iznimno opasno jer jedan slabiji sustav može ugroziti sigurnost ostalih sustava, bez obzira na njihovu sigurnost.
Lozinke se, u pravilu, ne bi na sustavima smjele spremati kao običan tekst. Razlog za to je jednostavan - prilikom napada na neki sustav i otkrivanja sadržaja bazi podataka, sve se lozinke mogu odmah otkriti i povezati s korisničkim imenima ili adresama elektroničke pošte. Zato se u sustavima sprema sažetak (engl. hash) lozinke. Sažetak je postupak koji nekakvu informaciju, na predvidiv način, pretvara u naizgled nasumični niz podataka. Iz tog niza je gotovo nemoguće saznati informaciju iz koje je nastao. Ako sustavi spremaju sažetak lozinke, a ne samu lozinku, i dalje mogu provjeriti poklapa li se unešena lozinka sa spremljenom tako da ponove postupak sažetka. Na to se svodi probijanje lozinke. U praksi se najčešće koristi postupak sažimanja s tzv. solju (engl. salt) [5], ali ovaj seminar neće ulaziti u detalje tog postupka. Napadom na sustav i dalje je moguće doći do sažetaka, a u tom trenutku sigurnost lozinki ovisi o korisniku koji ju je osmislio. U sljedećem poglavlju bit će izložene dodatne slabosti lozinki, ali ne iz perspektive sustava, već tog korisnika.
Postupak grube sile dobio je svoj naziv zbog toga što se ne oslanja na nekakav sofisticirani algoritam za uspjeh, već na čisto pogađanje svake moguće kombinacije znakova. Primjerice, postupak bi krenuo da se pokuša s lozinkom “A”, zatim “B”, pa “C”, preko “V”, “Z”, “a” te sve do “z”. Idući pokušaj mogao bi biti “1”, ali i “AA”, ovisno o tome kako je algoritam implementiran. Generirana lozinke se zatim unosi izravno u sustav kao obična prijava, ili se generira sažetak lozinke i uspoređuje s postojećim sažetkom.
Napad rječnikom uključuje ogroman niz lozinki probijenih lozinki i njihovih sažetaka. Taj niz se zove rječnik, a u prosjeku sadrži preko 100 milijuna lozinki [7]. Napad rječnikom je puno efikasniji od napada grubom silom jer se koristi znanje o postojećim, već probijenim lozinkama te statističke informacije o frekvenciji pojedinih lozinki. Osim toga, neki programi koji koriste rječnike imaju i ugrađena pravila koja govore koji su znakovi istovjetni. Na primjer, lozinka “facebook” nije značajno slabija od lozinke “f4c3b00k”, jer obje lozinke koriste znakove za koje se zna da ih ljudi često mijenjaju. Taj postupak mijenjanja znakova zove se mungeing i dobro je poznat [6].
Kao što je rečeno u 1. poglavlju, ljudske slabosti su one koje se najčešće iskorištavaju, zato što je postupak obrnutog sažetka u praksi nemoguć. Poznavanje tih slabosti nužno je za njihovo izbjegavanje i povećavanje sigurnosti. Ovo su neke najkobnije slabosti lozinki [2, 4, 7]:
Cilj dobre lozinke nije samo zaštita od napada grubom silom ili samo napada rječnikom, već oboje. Stranice za provjeru jačine lozinke poput [8], u pravilu provjeravaju jačinu lozinke samo protiv napada grubom silom. Međutim, u praksi zbilja nije složen postupak osmisliti način osmišljanja i pohrane lozinki te svatko može poboljšati sigurnost svojih lozinki. Naputci koji bi se svakako morali pratiti su:
Ovi se naputci jednostavno mogu ostvariti jednom od dvije sljedeće taktike:
Sigurnost lozinki nešto je čemu bismo trebali posvetiti više pažnje. Jako je jednostavno poduzeti korake da ne budemo žrtva ukradenih lozinki i ostalih podataka. Koristeći jednostavne tehnike i par smjernica, jedan dio internetske privatnosti može ostati siguran.
[1] “5 Authentication Methods that Can Prevent the Next Breach” - IDR&D, 2020, URL: https://www.idrnd.ai/5-authentication-methods-that-can-prevent-the-next-breach/, posjećeno 16.1.2021.
[2] “User Authentication: Understanding the Basics & Top Tips”, Swoop, 2020., URL: https://swoopnow.com/user-authentication/, posjećeno 15.1.2021.
[3] “What is Authentication? Definition of Authentication, Authentication Meaning”. The Economic Times. URL: https://economictimes.indiatimes.com/definition/authentication, posjećeno 15.1.2021.
[4] “Passwords — strengths and weaknesses”, Gary C. Kessler, siječanj 1996., URL: https://www.garykessler.net/library/password.html, posjećeno 16.1.2021.
[5] “Šifriranje, hashing, soljenje – u čemu je razlika?”, Heritage Offshore, URL: https://heritage-offshore.com/sigurnost-informacija/ifriranje-hashing-soljenje-u-emu-je-razlika/, posjećeno 15.1.2021.
[6] “Munged password” s Wikipedije, URL: https://en.wikipedia.org/wiki/Munged_password, posjećeno 17.1.2021.
[7] “Why passwords have never been weaker—and crackers have never been stronger”, Dan Goodin za Ars Technica, URL: https://arstechnica.com/information-technology/2012/08/passwords-under-assault/, posjećeno 15.1.2021.
[8] “How Secure Is My Password?”, URL: https://howsecureismypassword.net/
[9] “How long should my passwords be?”, Jeffrey Goldberg za 1Password blog, URL: https://blog.1password.com/how-long-should-my-passwords-be/, posjećeno 17.1.2021.
[10] “How long should your password be? The data behind a safe password length policy.”, LMG Security, URL: https://www.lmgsecurity.com/how-long-should-your-password-be-a-technical-guide-to-a-safe-password-length-policy/, posjećeno 17.1.2021.