17Aug
"Naša baza gesel je bila ukradena včeraj. Ampak ne skrbite: vaša gesla so bila šifrirana. "Redno vidimo izjave, kot je ta na spletu, tudi včeraj, od Yahooja. Toda, ali bi morali resnično upoštevati ta zagotovila po nominalni vrednosti?
Resničnost je, da gesla kompromisne baze podatkov so skrb, ne glede na to, kako lahko podjetje poskusi, da ga spin. Ampak obstaja nekaj stvari, ki jih lahko storite, da se izolirate, ne glede na to, kako slabi so varnostni postopki podjetja.
Kako naj se shranijo gesla
Podjetja morajo shraniti gesla v idealnem svetu: ustvarite račun in zagotovite geslo. Namesto shranjevanja samega gesla storitev iz gesla generira »hash«.To je edinstven prstni odtis, ki ga ni mogoče obrniti. Na primer, geslo "geslo" se lahko spremeni v nekaj, kar bolj kot "4jfh75to4sud7gh93247g. ..".Ko vnesete svoje geslo za prijavo, storitev ustvari razpršitev in preveri, ali se vrednost hash ujema z vrednostjo, shranjeno v bazi podatkov. V nobenem trenutku storitev nikoli ne shranite gesla na disk.
Če želite ugotoviti dejansko geslo, mora napadalec z dostopom do baze podatkov predhodno izračunati hešo za splošna gesla in preveriti, ali obstajajo v bazi podatkov. Napadalci to počnejo z iskalnimi mizami - ogromne sezname hiš, ki se ujemajo z gesli. Hišo se nato lahko primerja z bazo podatkov. Na primer, napadalec bi vedel razpršitev za "password1" in nato preveriti, ali kateri koli računi v bazi podatkov uporabljajo ta heš.Če so, napadalec ve, da je njihovo geslo "password1".
Da bi to preprečili, bi morale storitve "soliti" svoje hiše. Namesto ustvarjanja razprševanja iz gesla samodejno dodajo naključni niz na sprednji ali konec gesla, preden ga shrani. Z drugimi besedami, uporabnik bi vnesel geslo "geslo" in storitev bi dodal sol in geslo geslo, ki bolj ustreza "password35s2dg." Vsak uporabniški račun mora imeti svojo edinstveno sol, kar bi zagotovilo, da bo vsak uporabniški računbi imela v geslu drugačno vrednost za geslo za svoje geslo. Tudi če je več računov uporabilo geslo "password1", bi zaradi različnih vrednosti soli imeli drugačne razpoke. To bi premagalo napadalca, ki je poskušal predračunati haše za gesla. Namesto, da bi lahko ustvarili haše, ki se uporabljajo za vsak uporabniški račun v celotni bazi podatkov hkrati, bi morali ustvariti edinstveno hišo za vsak uporabniški račun in svojo edinstveno sol. To bi zahtevalo precej več časa in pomnilnika računanja.
Zato storitve pogosto rečejo, da ne skrbijo. Storitev, ki uporablja ustrezne varnostne postopke, naj bi rekla, da uporabljajo soljene gesla za gesla.Če preprosto rečejo, da so gesla "ished", je to bolj zaskrbljujoče. LinkedIn je na primer iztisnila gesla, vendar jih ni solila - tako je bilo veliko, ko je LinkedIn v letu 2012 izgubil 6,5 milijona hashed gesel.
Bad Password Practices
To ni najtežja stvar za izvedbo, vendar je veliko spletnih mestše vedno uspeva zmešati na različne načine:
- Shranjevanje gesel v navadnem besedilu : namesto da bi se motili s hashingom, lahko nekateri izmed najhujših kršiteljev pravkar vnesejo gesla v obliki navadnega besedila v bazo podatkov.Če je taka zbirka podatkov ogrožena, je vaša gesla očitno ogrožena. Ni pomembno, kako močni so bili.
- Hashing gesla brez soljenja : Nekatere storitve imajo lahko geslo gesla in se tam odrežejo, zato se ne odločijo za uporabo soli. Takšne baze podatkov o geslu bi bile zelo ranljive za pregledne tabele. Napadalec bi lahko ustvaril haše za številna gesla in nato preveril, če so obstajali v bazi podatkov - to bi lahko naredili za vsak račun hkrati, če ne bi uporabljali soli.
- Ponovna uporaba soli : Nekatere storitve lahko uporabljajo sol, vendar lahko uporabijo isto sol za vsako geslo uporabniškega računa. To je nesmiselno - če bi bila za vsako uporabnik uporabljena ista sol, bi imela dva uporabnika z istim geslom enak šašek.
- Uporaba kratkih soli : Če se uporabijo soli s samo nekaj števkami, bi bilo mogoče ustvariti pregledne tabele, ki vključujejo vsako možno sol. Na primer, če bi kot sol uporabili eno številko, bi lahko napadalec zlahka ustvaril sezname hašiša, ki so vključevali vsako možno sol.
vam ne bodo vedno povedala celotne zgodbe, zato tudi, če pravijo, da je bilo geslo vpeto( ali pa je bilo posušeno in soljeno), morda ne uporabljajo najboljših praks. Vedno poskrbite za previdnost.
Drugi pomisleki
Verjetno je, da je vrednost sola prisotna tudi v bazi gesel. To ni tako slabo - če bi za vsakega uporabnika uporabljali edinstveno vrednost soli, bi morali napadalci porabiti ogromne količine moči CPU, ki bi prekinila vsa ta gesla.
V praksi toliko ljudi uporablja očitna gesla, da bi bilo verjetno enostavno določiti gesla številnih uporabniških računov.Če na primer napadalec pozna vaš heš in pozna vašo sol, lahko zlahka preveri, ali uporabljate nekatera najpogostejša gesla.
Če je napadalec z vami in hoče poškodovati geslo, lahko to storijo z brutalno silo, dokler poznajo vrednost soli, kar verjetno počnejo. Z lokalnimi brezžičnimi dostopi do baz podatkov gesel lahko napadalci uporabijo vse napade, ki jih želijo brute sile.
Drugi osebni podatki verjetno tudi puščajo, ko je bila ukradena baza gesel: uporabniška imena, e-poštni naslovi in drugo. V primeru uhajanja Yahoo so bila tudi ušesa varnostna vprašanja in odgovori - kar je, kot vsi vemo, olajšalo krajo dostopa do nečega računa.
Pomoč, kaj naj storim?
Ne glede na to, ali storitev govori, ko je bila ukradena baza gesel, je najbolje domnevati, da je vsaka storitev popolnoma nesposobna in ustrezno deluje.
Najprej ne ponovite gesel na več spletnih mestih. Uporabite upravitelja gesel, ki ustvarja edinstvena gesla za vsako spletno mesto.Če napadalec ugotovi, da je vaše geslo za storitev "43 ^ tSd% 7uho2 # 3", in to geslo uporabljate samo na določeni spletni strani, se niso naučili ničesar uporabnega.Če uporabljate isto geslo povsod, bi lahko dostopali do vaših drugih računov. To je, koliko računov oseb je postalo "hacked."
Če storitev postane ogrožena, se prepričajte, da spremenite geslo, ki ga tam uporabljate. Prav tako morate geslo spremeniti tudi na drugih mestih, če ga znova uporabite - vendar tega ne bi smeli storiti na prvem mestu.
Prav tako bi morali razmisliti o uporabi dvocentrične avtentikacije, ki vas bo varovala tudi, če bo napadalec izvedel vaše geslo.
Najpomembnejša stvar ni ponovna uporaba gesel. Varne baze podatkov z geslom ne morejo poškodovati, če uporabljate edinstveno geslo povsod - razen če shranijo nekaj drugega v bazo podatkov, na primer številko vaše kreditne kartice.
Image Credit: Marc Falardeau na Flickr, Wikimedia Commons