Så går det till när hackarna knäcker ditt lösenord

2018-07-12 06:00  

En vanlig speldator kan testa miljarder lösenord i sekunden. Ny Teknik går igenom hur hackarna tar till råstyrka och list för att knäcka ditt lösenord.

De senaste åren har en lång rad enorma dataläckor avslöjats. Miljarder användarkonton hos it-jättar som Yahoo, Dropbox och Linkedin har drabbats när hackare kommit över enorma databaser med användardata.

En av måltavlorna är de långa listorna med användarnamn, e-postadresser och lösenord som de här företagen har lagrat på sina servrar. Fast lösenord lagras i regel aldrig i klartext, om du inte använder en tjänst med obefintligt säkerhetstänk. I stället sparas lösenordet som en hash, en slags envägskryptering där ditt lösenord omvandlas till en serie tecken.

Om jag till exempel matar in lösenordet ”nyteknik” i hashningsfunktionen MD5 får jag hashen ”d964ff812eeb6d0edc89c2e62a0e0792” tillbaka. När jag knappar in mitt lösenord i inloggningsrutan hashas det för att sedan kollas av om det matchar hashen i systemet.

Så det första hackarna som kommer över de här databaserna vill är att försöka lista ut lösenorden som gömmer sig bakom hasharna. Där finns det ett antal olika sätt att gå till väga.

Råstyrka

Det mest rättframma sättet att ta sig an problemet är en så kallade brute force-attack. Det går i enkla ordalag ut på att testa alla tänkbara teckenkombination till dess att du träffar rätt. En process som kan kräva både lång tid och resurser.

Hackaren använder en specialutformad mjukvara som testar alla tänkbara lösenordskombinationer inom en viss teckenlängd. Vill du prova att knäcka lösenord på mellan fyra och åtta tecken kommer den att börja med ”aaaa” och gå vidare till ”aaab” och så vidare till dess att alla kombinationer testats.

Det finns två faktorer som har stor inverkan på den här typen av attacker. Ju längre lösenord desto längre tid. Ju snabbare dator desto kortare tid. Dessutom påverkas tiden av vilken kryptering, eller hashfunktion, som använts för att skydda lösenordet.

Antalet möjliga lösenord kallas för antalet permutationer och går att räkna ut genom en formel som ser ut så här: antalet möjliga tecken upphöjt i antalet tecken i lösenordet.

Läs mer: Han lägger cybersäkerheten i statens händer

I regel finns det 95 tecken att välja på när du skapar ett lösenord. Bokstäverna a-z i gemener och versaler, de tio siffrorna och de vanligaste specialtecknen. Ska du ha ett lösenord som är precis åtta tecken långt och fritt får välja ur den här poolen av tecken finns det alltså 95 ^ 8 tänkbara kombinationer, det vill säga drygt sex miljoner miljarder möjliga lösenord.

En modern dator kan göra flera miljarder gissningar i sekunden, och en specialbyggd maskin med flera grafikkort som hjälps åt att utföra beräkningar kan nå över 200 miljarder försök i sekunden.

Ett lösenord som ”nyteknik” skulle med andra ord inte stå sig länge. Men redan vid tio tecken börjar det ta månader eller år för min laptop, även om någon med en handfull kraftfulla grafikkort eller tillgång till flera servrar skulle kunna knäcka lösenordet betydligt snabbare. Fast börjar vi närma oss 20 tecken eller fler blir ren råstyrka i princip ohållbart med dagens hårdvara.

Bästa försvaret: riktigt långa lösenord.

Ordboksattack

Råstyrka kan alltså vara för tidskrävande för långa lösenord. Ordboksattacker är ett lite listigare tillvägagångssätt där hackarna testar att använda listor över vanliga ord och fraser för att försöka gissa sig till rätt lösenord.

Det går också att lägga på några vanliga siffror eller specialtecken för att komma åt lösenord som ”nyteknik123” eller ”nyteknik!” eller genom att byta ut siffror mot bokstäver som till exempel ”nytekn1k”. Beroende på hur mycket datorkraft man har tillgång till går det också att testa kombinationer av flera ord så att man kan komma åt användare som använder längre lösenordsfraser för att logga.

För en hackare som kommit över en stor databas med lösenord går det ofta att hitta många lågt hängande frukter genom att köra den här typen av attack. Så länge användaren i fråga har ett lösenord som innehåller vanligt förekommande ord i någon form är metoden betydligt mycket mer effektiv än en brute force-attack.

Bästa försvaret: långa, slumpade lösenord som du lagrar i en lösenordshanterare.

Regnbågstabeller

En när hackarna vill slippa genomföra en ny tidskrävande brute force-attack varje gång är att skapa så kallade regnbågstabeller. Det är en databas där angriparen samlar möjliga hashar för alla lösenord upp till en viss teckenlängd.

Om databasen innehåller lösenord som krypterats med MD5-funktionen står det redan där att lösenordet ”nyteknik” blir till hashen ”d964ff812eeb6d0edc89c2e62a0e0792”. Det går alltså blixtsnabbt att koppla ihop hashen och lösenord i klartext.

Metoden är inte helt oproblematisk. Det tar lång tid att bygga upp den här typen av databas och den kan ta enormt stor plats. Det finns färdiga regnbågstabeller att ladda ned, men för längre lösenord blir de för stora för att vara praktiskt användbara för de flesta. Är lösenordet mer än tio tecken långt blir regnbågstabellerna helt enkelt för omfattande.

Bästa försvaret: långa lösenord.

Så jobbar riktiga lösenordsknäckare

Alla metoderna ovan har sina fel och brister, och är kanske framförallt inte alltid användbara. I vissa fall kan du bara testa lösenordet över ett nätverk vilket drar ned hastigheten rejält. I andra fall kanske du bara har några få inloggningsförsök på dig.

Jonas Lejon som driver säkerhetsfirman Triop har gedigen erfarenhet av att utföra så kallade penetrationstester där man försöker hitta sårbarheter i ett företags it-system. Att knäcka eller lista ut lösenord ingår nästan alltid i uppdraget, och svårighetsgraden kan variera något enormt.

För honom börjar jakten alltid med ett gediget bakgrundsarbete.

– Det vinnande konceptet är att göra ett bra grundarbete och lära känna organisationen. Om någon bara ger dig en hash kan det vara väldigt svårt att få ut lösenordet. Du behöver ofta allt runt omkring, säger Jonas Lejon.

Det kan handla om att på olika sätt räkna ut sannolika brister i hur de anställda valt sina lösenord. En guldgruva är ett företags lösenordspolicy. Om företaget kräver att lösenordet är minst åtta tecken långt och innehåller en siffra och ett specialtecken kan du vara rätt säker på att en ganska god portion av de anställda har byggt ett lösenord på sex bokstäver, en siffra och ett specialtecken. Därmed går det att dra ned på antalet kombinationer som du behöver testa för att lista ut lösenordet.

Läs mer: ”Stater och företag har inte förstått hur digitalt bundna de är”

Vilken utrustning och metod Jonas använder kan också variera från fall till fall. Under rätt förutsättningar går det att komma över enstaka lösenord med ganska enkla medel.

– Hur mycket tid har jag på mig? Behöver jag lösenordet nu? Vilken ekonomi har jag? Jag börjar ofta försöka knäcka lösenordet med min egen laptop. Har jag 10 000 hashar med en svag hashalgoritm finns det stor sannolikhet att jag lyckas få fram flera av lösenorden på bara några sekunder, säger Jonas Lejon.

Andra gånger kan det vara betydligt svårare, och ibland är det rakt av inget alternativ att låta datorn testa tusentals tänkbara lösenord.

– I vissa fall måste du testa lösenordet över nätverket. Då kanske du bara har ett eller tre försök på dig per användarnamn. Då måste du göra det bästa utifrån de förutsättningarna. Så att tänka att man alltid kan "knäcka" lösenordet är att förenkla det lite, säger Jonas Lejon.

Simon Campanello

Kommentarer

Välkommen att säga din mening på Ny Teknik.

Principen för våra regler är enkel: visa respekt för de personer vi skriver om och andra läsare som kommenterar artiklarna. Alla kommentarer modereras efter publiceringen av Ny Teknik eller av oss anlitad personal.

Här är reglerna för kommentarerna på NyTeknik

  Kommentarer

Dagens viktigaste nyheter

Aktuellt inom

Debatt