Varför webbplatser bör strö salt på hasherna för att skydda dina lösenord

[ware_item id=33][/ware_item]

Varför webbplatser bör strö salt på hasherna för att skydda dina lösenord


Trots deras brister är lösenord fortfarande den faktiska standarden för autentisering på webben.

ExpressVPN har redan skrivit om fördelarna med att skapa säkra lösenord med hjälp av Diceware, använda lösenordshanterare och bygga ytterligare ett lager av säkerhet runt dina konton med tvåfaktorsautentisering..

Men vad händer bakom kulisserna? Vilka åtgärder kan och bör en webbplatsoperatör vidta för att säkra dina lösenord?

Födelsen av datorhackning

Det första datorsystemet som använde lösenord var Compatible Time-Sharing System vid Massachusetts Institute of Technology, byggd 1960. Tidsdelning gjorde att datorn kunde delas upp och användas som flera arbetsstationer.

Fortfarande fanns det fler forskare än arbetsstationer, och användarna tilldelades begränsad tid på systemet (som vissa uttömdes ganska snabbt). För att se till att forskarna stannade inom sina gränser tilldelades var och en ett unikt lösenord att logga in med.

Men naturligtvis med de första lösenorden kom den första hackaren. En forskare, Allan Scherr, använde ett system som gjorde det möjligt för användare att skriva ut filer via punchkort (datorer hade inga skärmar på 1960-talet). Scherr lokaliserade och skrev ut filen som lagrade lösenorden, vilket möjliggjorde för honom att logga in som andra användare och använda datorn längre.

I dag anses det vara grovt försumligt att lagra lösenord i tydlig text i ett system, även om hackningen 2016 på den ryska sociala mediesidan VK.com visar att vissa stora webbplatser fortfarande gör det. VK.com-lösenorden för 100 miljoner användare stalna och är nu till försäljning.

Varför hash-funktioner är en envägsgata

En hashfunktion är en envägskryptering och fungerar som ett fingeravtryck. Varje fil, ord eller textsträng betecknas som ett "fingeravtryck" som identifierar det exakta innehållet i originalfilen.

Hashes kan användas för att bestämma information, men inte vad informationen representerar. Ett enkelt sätt att föreställa sig hur hash fungerar med siffror (summan av alla siffrans siffror).

Den siffriga summan 9807347 är 9 + 8 + 0 + 7 + 3 + 4 + 7 = 38

Även om det är lätt att se siffran på 987347 är 38, är det omöjligt att beräkna 987347 från siffran 38.

Säkra lösenord med hashSHA-256 hashes för olika textsträngar och en bildfil.

SHA-256 erbjuder ett universum av permutationer

Otroligt, 256 bitar är en tillräckligt lång utgång för att identifiera unikt varje atom i det observerbara universum (2 ^ 256 = 1,157920892 × 10⁷⁷).

Även om det i teorin kan finnas två olika värden som båda har samma SHA-256-hash. En sådan händelse kallas en hashkollision, och säkerheten för någon hashfunktion är beroende av att de är oupptäckliga.

Föregångaren till SHA-2 (varav SHA-256 är en variant) - den en gång populära SHA-1-algoritmen - är känd för att vara sårbar för haschkollisioner. Även om det är värt att notera, har ingen någonsin hittat en.

En annan populär hash, MD5, hade så många sårbarheter att det inte är ett användbart försvar mot skadlig manipulering av filer.

Förutom att kryptera lösenord kan hashfunktioner också vara användbara för att säkerställa att filer inte har manipulerats, liknande kryptografiska signaturer, eftersom en förändrad textsträng kommer att ändra hash-tangenten.

Att lagra lösenord som hashes, snarare än tydlig text, gör det möjligt att kontrollera att ett lösenord är korrekt utan att lämna lösenordet sårbart för hackare.

Salt och hash skyddar dina lösenord

Om någon kunde hacka en databas som bara innehöll hash-lösenord, i teorin, skulle de inte få någon användbar information. Men i verkligheten återanvänder människor sina lösenord på många webbplatser eller använder vanliga ord i dem, och det finns många saker en hacker kan göra för att knäcka hasherna.

Varje SHA-256-hash med ordet ExpressVPN är alltid detsamma på alla system. Så om ditt användarnamn är Lexie och du använder ExpressVPN som ett lösenord (inte), kan en hacker söka efter hash "c9f45 ... 3d185" bland lösenorden för att se Lexies lösenord är ExpressVPN.

Även om detta inte låter särskilt bra på egen hand, finns det listor över de bästa tusentals mest använda lösenorden (som vi känner från tidigare hacks).

Med en sådan lista kan en hacker söka efter hasherna för de vanliga lösenorden och matcha dem till användarnamn.

Denna typ av attack kallas ett regnbågsbord, eller ordbok, attack. Det finns inte tillräckligt med tid kvar i universum för att en angripare kan prova alla möjliga hash / lösenordskombinationer i en brute force-attack. Men det finns tillräckligt med tid att prova de mest populära lösenorden, vilket förmodligen skulle äventyra en betydande del av databasen.

Saltning skyddar lösenord genom att tilldela dem unika nummer

För att skydda mot attacker från ordböcker kan en databasadministratör använda en metod som kallas "saltning", där varje lösenord tilldelas ett unikt slumpmässigt nummer. En SHA-256-hash av kombinationen av salt och lösenord beräknas, lagras och kontrolleras.

Alternativt kan lösenordet hashas i kombination med saltnumret och resultatet hashas igen.

Saltade haschar ger extra skyddExempel på "saltade" hash, hashas igen.

På grund av saltningstekniken är det inte längre attraktivt att skapa ett regnbågsbord. De slumpmässiga siffrorna skulle göra varje hash unikt, även om användaren inte valde ett unikt lösenord.

Om en hackare ville rikta in sig på användare med lösenordet "Passw0rd!" Skulle saltnumret hålla databasen säker.

Lösenordssystemens framtid

Lösenord är långt ifrån optimala för online-autentisering. En bra är svårt att komma ihåg, de är svåra att återkalla och en gång läckt kan orsaka betydande skador.

Lösenordshanterare kan göra lösenord mer användarvänliga och hjälpa dig att skapa unika. De kommer också att uppmuntra dig att ändra dina inloggningsuppgifter regelbundet, vilket är nödvändigt för god online-säkerhet.

Kanske i framtiden kommer vi att flytta till alternativa autentiseringsformer, till exempel offentliga / privata nyckelpar, eventuellt kombinerade med hårdvaruknappar. I en sådan modell skulle du bara behöva ladda upp din offentliga nyckel en gång till en server när du registrerar dig och sedan aldrig mer.

Även om det inte nödvändigtvis är större säkerheter än en korrekt implementerad lösenordslösning, är det mindre troligt att offentliga / privata nyckelpar tillämpas felaktigt av både användaren och tjänsten..

Vad du kan göra för att säkra dina lösenord

Tänk på att många av de tjänster du använder idag kanske redan har tappat kontrollen över dina lösenord. Kanske vet de inte om det än, eller kanske de vägrar att erkänna det offentligt - skydda deras image på bekostnad av deras användares säkerhet.

Använd en slumpmässig lösenordgenerator och ändra dina lösenord till långa slumpmässiga strängar av bokstäver och tecken. Du kan också aktivera tvåfaktorsautentisering på vissa tjänster för att lägga till ett extra lager av säkerhet.

Det är också en bra idé att ta bort alla konton som du inte längre använder, i hopp om att tjänsten tar bort dina användardata tillsammans med den.

Varför webbplatser bör strö salt på hasherna för att skydda dina lösenord
admin Author
Sorry! The Author has not filled his profile.