Hur sprickkraftskrackning kan avslöja ditt lösenord

[ware_item id=33][/ware_item]

En hammare försöker brute kraft öppna ett hänglås.


I kryptografi försöker en brute force-attack att dechiffrera krypterat innehåll genom att gissa krypteringsnyckeln. Denna attack är genomförbar när krypteringsnyckeln är kort, eller om en angripare har tillräcklig information för att försöka gissa nyckeln.

När det gäller webbformulär har angripare inte mycket tid att gissa en nyckel. Google eller Facebook låter bara någon försöka logga in på ditt konto så många gånger innan de "låser ner det."

När hackare får den interna databasen för ett företag har de dock hela tiden i världen att gissa ditt lösenord - även om det är krypterat.

Webbplatser bör salta och hash-lösenord för att skydda användare

När webbplatser lagrar dina lösenord bör de (men inte alltid) salta och hash användarlösenorden, så att någon som har användardatabasen inte kan använda det.

Hashfunktioner, såsom SHA-256, är krypteringsfunktioner i en riktning. Alla data, text, bild eller nummer kan "hashas", och oavsett hur lång inmatning är, blir resultatet alltid 256 bitar i längd. När den kodas i hexadecimal (som nedan) resulterar detta i en sträng med 64 tecken.

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

Hur angripare knäcker ditt lösenord

För att göra det svårt för potentiella hackare kommer webbplatser att ändra lösenord med ett "salt", som är en slumpmässig uppsättning data (se hur saltning och hash fungerar).

Att beräkna en hash från text, en bild eller fil är trivial och tar inte en dator någon betydande tid eller resurser. Men om allt du vet är hash, är det enda sättet att ta reda på det ursprungliga värdet en attack för brute-force. Därför kallas en hashfunktion också envägskryptering. Det är lätt att gå från text till hash, men väldigt svårt att gå åt andra hållet.

Lösenordskrackare som har en stulen användardatabas kan se listan med användarnamn, saltvärdet för varje användare och hash.

Med dessa detaljer kan de försöka gissa lösenord för varje användare, salt och hash dem, och kontrollera deras resultat mot hash som lagras i databasen. Om hash matchar, vet de att de har hittat lösenordet.

En angripare måste ange användarnamn och lösenord exakt, eftersom ändring av hash till och med en liten bit (som ses ovan) kommer att resultera i en helt annan hash.

Hur många lösenordskombinationer finns det?

Förutsatt att ett lösenord endast består av små bokstäver, för varje tecken finns det 26 möjligheter. Därför kan du förvänta dig att kunna gissa ett lösenord med ett tecken inom 13 försök.

Ett lösenord med två tecken har 26 × 26 alternativ och skulle ta (26 × 26) / 2 försök att dechiffrera.

Formeln c = (m ^ n) / 2 beskriver förhållandet mellan möjligheterna för varje karaktär (M), lösenordets längd (N) och det förväntade antalet gissningar (C).

Förhållandet mellan lösenordets längd och antalet gissningar för att knäcka det

En graf som visar hur många gissningar det tar för att knäcka lösenord med olika längder.

  • Smålösenord (m = 26)
  • Små och stora versaler (m = 52)
  • Stor- och gemener och specialtecken (m = 67)

Även om både komplexitet och längd bidrar till lösenordets styrka, är det mycket mer värdefullt att lägga till en karaktär än att öka dess komplexitet.

Att lägga till ett extra tecken i ett lösenord med fyra tecken, med bara små bokstäver, gör det 26 gånger svårare att knäcka, medan du fördubblar de möjliga tecknen till 52 (dvs. lägger till stora tecken) gör det bara 16 gånger svårare att knäcka.

Den logaritmiska skalan gör förhållandet mellan lösenordslängd och nödvändiga gissningar för att spricka mer uppenbart

En graf som visar skalan på lösenordslängd mot nödvändiga försök att gissa det.

  • Smålösenord (m = 26)
  • Små och stora versaler (m = 52)
  • Stor- och gemener och specialtecken (m = 67)

Hur lång tid tar det att knäcka ett lösenord?

Hur snabbt en angripare kan knäcka ditt lösenord beror på hur snabbt angriparens datormaskinvara är.

En vanlig dator skulle antagligen göra cirka 100 000 gissningar per sekund. En dedikerad GPU kan vara 100 gånger snabbare än detta, och det är möjligt att skapa en lösenordskrackningsgård med hundratals GPU: er.

Om vi ​​antar att angriparen har en vanlig dator, som kan 100 000 gissningar per sekund, tar det mindre lösenord med mindre än sex tecken på mindre än en minut att knäcka.

Men löptiden ökar exponentiellt och ett lösenord på åtta tecken tar 12 dagar att spricka. Ett lösenord på 12 tecken skulle ta över 12 000 år.

Huruvida ett lösenord med 12 tecken räcker beror på värdet på vad det skyddar och attackens omfattning. Om angriparna bara är efter ett enda mål, kan ett lösenord med 12 tecken vara inom räckhåll.

Det är därför avgörande att skydda värdefull information (som personlig information eller Bitcoin privata nycklar) med långt längre lösenord. När du t.ex. krypterar din Bitcoin plånbok kan en nyckel på över 32 tecken vara en bra idé.

Ju mer information en angripare har, desto snabbare kommer en spricka att ske

Ovanstående beräkningar antar att angriparen inte vet något om lösenordet, utom om det innehåller stora och små bokstäver.

I verkligheten kan angriparen ha gissningar. Från tidigare dekrypterade lösenordlistor vet vi vad de vanligaste lösenorden är. Om det inte finns något specifikt mål kan en angripare kontrollera vanliga lösenord med en e-postlista relativt snabbt.

Folk tenderar också att välja lösenord som bara har nummer i slutet (som hello111) och inkluderar namnet på tjänsten eller URL någonstans. Ett lösenord som används för Gmail som innehåller orden google eller gmail och har fyra siffror i slutet (som gmailpanther1234), är lätt att knäcka, även om det är långt.

Folk brukar också använda namnen på sina husdjur eller barn som lösenord, ibland i kombination med födelsedatum eller år, vilket gör lösenordet lättare att gissa än vad folk kanske tror.

Använd starka lösenord med lösenordshanterare

Den viktigaste regeln är: Använd alltid ett starkt lösenord.

För att undvika besväret med att kompensera och komma ihåg så många robusta lösenord använder du en slumpmässig lösenordsgenerator för att enkelt skapa långa, unika och verkligen otänkbara lösenord.

Om du sedan lagrar dessa lösenord med en lösenordshanterare, behöver du bara komma ihåg ett enda lösenord (som du kan generera med Diceware för att göra det extra säkert). Dessutom hjälper tvåfaktorsautentisering att skydda konton mot ännu mer sofistikerade attacker, till exempel lösenord som erhålls genom nätfiskeattacker.

Hur sprickkraftskrackning kan avslöja ditt lösenord
admin Author
Sorry! The Author has not filled his profile.