Ali vas zanima izdelava gesel, želite obvarovati vaš račun pred vdorom, imate stran in želite dobro shraniti geslo? V tem članku vam bom pojasnil, kako.
Kaj je geslo?
Geslo (ang. Password) je set znakov, ki si ga zapomnimo in je namenjen dokazovanju identitete. Uporaba gesel je že stara zadeva, saj so bila uporabljena že pred časom Rimljanov. To so bile besede ali znaki, s katerimi si dokazal stražarju, da imaš dostop do nekega prostora. V modernem času se pa uporablja kot nivo zaščite osebnih informacij. Geslo je t. i. varnostni faktor, ki si ga zapomnimo. Uporabljajo se za prijavo v različne račune, računalnike, mobilne telefone in podobne stvari.
Numerično geslo se imenuje PIN (ang. Personal indentification number), v angleščini se za numerična gesla najde tudi besede Passkey in Passcode, del njih je PIN. Razlika med Passkey in PIN je dolžina, saj je PIN normalno dolžine med 4 in 8 znakov, Passkey pa več kot 1 do neskončno.
Slaba gesla
Nekajkrat sem že slišal, da ni slabih gesel, kar je definitivno narobe in ob enem izjemno nevarno. Veliko ljudi je mnenja, da je Leet speak dobra zaščita, kar ni, saj je preveč poznano in programi, ki delajo Dictionary Attack lahko z lahkoto zamenjajo črke v številke. Prav tako so slaba gesla Password, 123456789 Password1 in podobna. O drugih slabih geslih bom tudi govoril pri različnih načinih ugotavljanja gesel.
Kako sestaviti močno geslo?
No, sedaj pa nekaj o močnih geslih in kako močnega sestaviti. Najbolje ga je sestaviti tako, da vzameš neko večje število znakov, kot je 16 ali 24 za zares pomembne stvari. Čez nekaj časa pa bo to število še naraslo. Kot drugo je pametno, da ga ne sestavljajo besede ampak naključni znaki. Med te znake je pametno šteti številke, velike črke, male črke in posebne znake (primeri posebnih znakov: .,-$%#(%=)/). Ker pa si jih je težko zapomniti, se uporablja Password Manager. To je program, ki na strežnik oziroma v datoteko shrani gesla v visoko šifrirani obliki. Kot take programe jaz predlagam Lastpass, če jih želite imeti shranjena na strežniku, uporabljate in posodabljate pa jih lahko na več napravah, ko ste povezani s spletom. Za opcijo, ki shrani v datoteki, je pa Keepass. Sam uporabljam Lastpass in imam aplikacijo naloženo na mobilnem telefonu ter dodatek za brskanik na računalniku. Ob enem je pa dobro, da se za vsak račun uporabi drugačno geslo.
Stvari, katere uporabiti poleg gesla?
Poleg gesla je dobro uporabljati tudi dodatne metode overitev, kot je MFA (multi factor autherication) ali večkrat poznano kot 2-factor-authentification. Večino strani ponuja uporabo z aplikacijo Google Authenticator, ki na vsake 15 sekund generira novo kodo.
Shranjevanje gesel, če upravljaš lastno spletno stran?
Sedaj pa malo nasvetov še za lastnike spletnih strani, a so zelo uporabni za vse. V bazi podatkov je najbolje shranjevati gesla, ki so obdelana z Hash Funkcijo. Dobro pa je vedeti, katero funkcijo uporabiti. Najbolje je uporabiti močnejšo funkcijo, kot je SHA512, in t. i. Sol. Slednje je podatek, ki je unikaten za vsakega uporabnika. Pred obdelavo s Hash funkcijo se le-ta doda geslu, da se zaščiti pred vdiranjem z ugotavljanjem gesla. Zelo dobro ali sedaj kar obvezno je, da ima stran ali aplikacija podporo za overitev z 2 faktorji ali več.
Ugotavljanje gesel
Brute force
Napad s silo je zelo enostaven, hkrati pa potraten način napada, ki omogoča ugotavljanje krajših gesel. Problem je, če ga stran shrani v bazo s šibkim Hashom, saj jih lahko v istem času preizkusi več in ob tem povečamo možnost, da ugotovimo daljšega. Vdor preko gesla se v večini zgodi, ker je nekdo na neki drugi strani ukradel bazo gesel in iz nje pridobil vašega s pomočjo napada s silo in ga poizkusil z istim uporabniškim imenom na različnih drugih straneh. V spodnjem videoposnetku si lahko pogledate demonstracijo napada s silo, katero sem pripravil sam. Ob enem lahko tukaj opišem tudi napad s slovarjem.
Dictionary attack ali napad s slovarjem je zelo podoben, kot napad s silo, saj je edina resna razlika v tem, da namesto različnih črk uporablja različne besede.
Social Engineering
Social Engineering ali socialno inženirstvo je skupno ime za različne načine napada na osebo ali njegove podatke, katerih glavna cilja sta pridobiti osebne podatke in geslo. Če nekdo pozna človeka, lahko s tem znanjem ugotovi človeka. Kaj s tem mislim? To bo v primerih lepo predstavljeno. Ampak čisto na kratko, primer: ime lastnika računa je Janez in njegova partnerica je Marija in nekateri sestavijo geslo kot je JanezMarija, JanezMarija1 in podobne kombinacije. To je ena izmed prvih stvari, ki jih preizkusiš s socialnim inženirstvom. Četudi ne poznaš človeka, lahko veliko izveš iz socialnisocialnij, ki so varnostna grožnja po svoje. Zakaj? Ljudje objavljajo preveč osebne informacije o sebi, kot so, kdaj gredo na morje/počitnice, kdaj gredo na potovanja, kdaj gredo na WC in podobno. Zato je moj standardstandardn: pazite kaj pišete, še posebej osebne stvari ali kakšne stvari kot so odsotnosti od doma. To je tako, kot da bi na vrata napisal: “Roparji, pridite noter, mi smo na morju.” Ampak zakaj napišemo na internet, na vrata pa ne? Ker smo mnenja, da smo na internetu dosti bolj nevidni oziroma kar je na internetu, ni tako osebno. Čeprav je lahko še bolj. Ker pa ni tema tega članka Varnost na splošno (o tem kdaj drugič), pojdimo nazaj k socialnemu Inženirstvu. Z objavo podatkov, kdaj gremo npr. na morje, lahko vdrejo v hišo in vdrejo v računalnik (večino glavnih operacijskih sistemov je glede zaščite računov na slabem glasu, saj je zaščita prava šala, ampak tudi o tem kdaj drugič). Nato se prijavijo s pomočjo verižice ključev znotraj brskalnikov, ki niso varne, zato se jih ne dotikajte niti s palico na 100 kilometrov, podobno velja za možnost ob prijavi ostani prijavljen. Drug problem socialnih omrežji je, da če pišeš ali imaš označeno, da si ljubitelj neke serije, glasbene skupine, filma … in imaš na to temo nastavljeno geslo, lahko to izkoristijo, saj je takšno geslo enostavno ugotoviti. Zato bom še enkrat povedal, da imejte gesla takšna, ki ne prikažejo besede v vam znanih besedah. Tako se skoraj popolnoma zaščitite socialnim inženiringom. Ta skoraj je tista druga plat socialnega inženirstva, pobiranje podatkov s pomočjo phishinga in podobnih načinov.
Phishing je nastavljena pasr, kjer se predstavljajo, da so neka ustanova (ponavadi ima že dober ugled, kot so na primer banke). Praktično naredijo stran, ki je popolna kopija strani prave ustanove (npr. NLB Klik). Tako pridobijo tvoje osebne podatke. Lahko pa je karkoli, ne samo banka, na primer račun za Mimovrste –
tako dobijo tvoj naslov, bančno kartico, možno geslo, telefonsko številko, email in še kaj s tem pa lahko če nimate nekih pravil glede gesel, vdrejo v kateri koli račun, s katerim upravljate.
Kaj pa zaščita za podjetja ali poslovneže?
Podjetjam in poslovnežem, ki upravljajo večino stvari preko interneta, predlagam uporabi MFA, s tem mislim vsaj 4–5 ali več faktorjev in gesla po 24 znakov in več. Za zelo pomembne račune pa bi bilo dobro tudi 40 znakov in več. Zakaj? Ker če bi podjetje hotelo vdreti v njegove pomembne račune, bi bilo dosti bolj verjetno, da bi lahko najeli čas na super računalniku ali pa plačali zelo dobrim hekerjem, ki imajo zelo drago opremo in dostop (verjetno nepooblaščen dostop) do super računalnika ali ga pa sestavijo kar sami. Če si pa zelo pomembno podjetje, bi se pa zate ali tvoje podjetje zanimala cela država ali državna agencija. Taki imajo pa zelo močne računalnike povsod. Za podjetnike pa tako čim več faktorjev, dokler se vam zdi normalno glede cene, pri geslih pa čim več, tudi jaz imam 24, pa nisem nič poslovnež ali kaj podobnega. Zato vsaj 24, za pomembne pa 32 ali več.
Primeri:
No, sedaj pa primeri. Za predstavitev primerov si bom izmislil nekega generičnega Slovenca in Slovenko, zato se opravičujem vsem kateri vidijo podobnosti. Kakršna koli podobnost živih ali mrtvih oseb ni namerna. Prva oseba: Ime: Janez Novak, datum rojstva: 10. 02. 1998, živi v Novem mestu, igra pod uporabiškim imenom: A907 ali AlphanineOseven, najljubša igra: Call of duty MW. Druga oseba: dekle od osebe 1, ime: Marija Novak, datum rojstva: 5. 02. 1998, živi v Novem mestu in ne igra iger. Sedaj pa slaba gesla, ki se zelo hitro pojavijo. Password1, 123456789, Pa55w0rd1 (in podobne verzije). Sedaj pa bolj skrivna, ampak ob enem zelo slaba gesla, kot so A907021998, AlphaNine0Seven (in variacije), JanezMarija1998 in podobno. JPrice1998 je tudi geslo, ki ga lahko ugotovimo z uporabo socialnega inženiringa, saj je Call of Duty njegova najljubša igra. Dobro geslo, katerega si želimo zapomniti (na primer za Lastpass) Konj/Kam-enj\19#98&907a709)(=0. To ima 31 znakov, katero bi si bilo kar lahko zapomniti in težko vdreti s čimerkoli, saj je predolgo za normalne napade s silo. Napad s slovarjem ne pride v poštev, saj imaš samo konj kot besedo, socialni inženiring pa tudi ne pride v upoštev, ker kako boš ugotovil Konj in vse znake, kamen pa tudi pozicijo stvari.
Vseč mi je