In English
brute-force-attack

Lösenord • Artikel

29 mars, 2021

Vad är en brute-force attack?

En brute-force-attack är en metod för att systematiskt gissa ett lösenord genom att testa alla möjliga tecken i alla möjliga positioner. Angriparen försöker inte vara listig och endast testa vanliga lösenord som ”password”, skippa komplexa lösenord eller endast testa vanliga sätt för att göra lösenord unika (som ”secret01”, ”secret02” osv). Utan angriparen testar allt – därav namnet brute-force-attack.

Brute-force attack

Om en angripare kan genomföra en brute-force attack utan att några motåtgärder sätts in, så kommer angriparen till slut få fram lösenordet. Tiden det tar beror på:

  • Hur snabbt en gissning kan göras
  • Hur många gissningar som görs parallellt
  • Hur lång tid lösenordet är giltigt
  • Hur snabbt det upptäcks att en attack pågår och motåtgärder kan sättas in

Angripare kan vilja knäcka kryptering

Det normala scenariot för en lösenordsgissningsattack är ett vanligt inloggningsformulär med stegen: mata in användarnamn, mata in lösenord, tryck på logga in och se ifall det fungerade. Fungerade det inte, börja om, och gissa på ett annat lösenord.

I detta scenario bestämmer webbsideägaren över de flesta parametrarna som nämndes ovan:

  • Hur snabbt kan inloggningen göras
  • Hur många inloggningar tillåts göras parallellt
  • Vad är max antal inloggningsförsök per anslut och sekund

Om ägaren av ett konto använder ett lättgissat lösenord (som t.ex. password eller 12345678) kan det vara fråga om ett par sekunder innan kontot är hackat och informationen finns tillgänglig. I denna typ av attack behöver angriparna inte ha en specifik användare i åtanke, utan målet kan vara att hitta konton som går att knäcka enkelt och därefter undersöka om det finns något av intresse på dessa konton.

Ett alltför vanligt scenario är när en lösenordsdatabas med krypterade lösenord läckt. Något som ofta orsakar stora rubriker när det kommer till allmän kännedom. I en sådan situation så har webbsidesägaren inte längre något att säga till om. Hur många gissningar som kan göras per sekund beror nu på den datorutrustning som används för attacken. I detta scenario används ofta snabba grafikkort där gissningsförsöken kan bli flera miljoner per sekund.

I en sådan attackmiljö är det endast en fråga om tid och datorkraft innan ett lösenord knäcks. Tillämpas en brute-force-attack så testas alla kombinationer i lösenordet: förr eller senare kommer en kombination att bli rätt. Har en enkel krypteringsmetod använts, går det relativt fort. Har en mer komplex metod används, så måste flera beräkningar göras – vilket leder till att det tar längre tid. Har en mycket komplex metod använts kanske attacken avbryts efter en vecka eller två.

Om det inte finns begränsningar för hur många gissningsförsök som får göras mot ett konto kan konsekvensen bli att inte bara kontot i fråga påverkas utan även andra konton eller sidor som ligger på servern. Brute force-attacker påverkar prestandan på servrarna och kan resultera i överbelastning om attackerna är väldigt omfattande.

Hur kan man skydda sig mot brute-force-attacker?

Det största ansvaret ligger hos webbsideägaren.

1. Begränsa antalet inloggningsförsök

Har du en webbplats kan det vara en bra idé att begränsa så att ingen tillåts göra mer än tre inloggningsförsök inom ett kort intervall eftersom avancerade angripare kan hoppa mellan olika IP-adresser.

Ett alternativ är att låta varje inloggningsförsök ta mer och mer tid: vid första försöket får användaren vänta tre sekunder innan inloggning är möjlig, vid andra försöket tar det tio sekunder, efter tredje försöket 30 sekunder, osv.

2. Spärra konton när för många misslyckade försök har skett

Bankkortet är ett bra exempel: tre felaktiga försök att ange en pinkod lägger en spärr på kortet. På samma sätt kan blockering av IP-adresser användas av webbtjänster där tre felaktiga försök helt eller delvis blockerar inloggning från en specifik IP-adress.

Detta bör dock användas med försiktighet. En sådan spärr kan blockera alla användare från ett helt företag som kanske är en viktig kund.

3. Kombinera lösenord med ytterligare mekanismer

Captcha är en teknik som används för att säkerställa att det verkligen sitter en människa bakom skärmen. Vanligtvis bygger captcha på att det visas en bild med en bokstavskombination som användaren behöver skriva ned i ett formulär för att kunna logga in. Eftersom det är en bild kan en dator inte tyda bokstäverna i bilden och systemet släpper därför inte vidare inloggningsförsöket. Det finns också flera olika varianter av captcha, varav ett exempel är fyra bilder där användaren skall välja samtliga bilder som innehåller spagetti eller en variant där en enkel matematisk fråga besvaras.

Men om captcha-metoden används oskickligt kan dess skydd bli minimalt.

4. Välj lösenordskryptering som är svårknäckt

I idealfallet skall detta inte spela någon roll: ingen ska kunna komma åt lösenordsfilen. Men rent praktiskt finns risken att filen läcker, och då handlar det om hur svår krypteringen är att knäcka.

(Ur teknisk synvinkel sker sällan eller aldrig kryptering av lösenord, där är termen ‘”lösenordskryptering” inte helt korrekt. Vi använder den här för att undvika den mer svårbegripliga termen ”kryptografisk hashfunktion”.)

En del av ansvaret ligger dock också hos den enskilde användaren

1. Välj svårgissade lösenord

Om lösenordet är alltför lättgissat, så gissas det kanske på första försöket. Då spelar det ingen roll hur väl andra skyddsmekanismer är konstruerade. Lösenordet måste vara tillräckligt svårgissat för att kontospärren vid för många felaktiga försök slår till.

Allra helst, använd långa och slumpmässiga lösenord. Sådana är normalt omöjliga att memorera, så någon form av lösenordshanterare (eng. password manager) är nödvändigt.

Välj ett lösenord som innehåller många tecken, ju fler tecken desto svårare för en dator att knäcka det. Genom att även kombinera stora och små bokstäver, siffror och specialtecken (ex @_&) i lösenordet gör du det än svårare att knäcka det. Se även till att använda unika lösenord – använd aldrig samma lösenord till flera tjänster.

2. Byt lösenord regelbundet

Ju längre tid en attack får pågå mot samma mål, desto större är sannolikheten att den lyckas. Genom att förändra målet – lösenordet – så tvingas attacken starta från början igen.

Använder man en lösenordshanterare är det vanligen enkelt att byta lösenord utan att göra dem svagare.

3. Behandla lösenordet som nyckeln till ditt hem

Låt ingen obehörig få händerna på det.

Kontakta oss

Vi erbjuder flera kontaktvägar och återkopplar så snart som möjligt. Har du känslig information ber vi dig att maila krypterat.