Webb & teknik

Så fungerar tvåfaktorsautentisering i praktiken

Tvåfaktorsautentisering, ofta förkortat 2FA, har blivit ett standardkrav för de flesta tjänster som hanterar känslig information. Principen är enkel: ett lösenord räcker inte längre för att logga in, utan användaren måste också bekräfta sin identitet med en andra metod. Det låter okomplicerat på pappret, men i praktiken finns det flera olika tekniker som fungerar på skilda sätt och som ger olika grader av skydd.

Den här artikeln går igenom hur tvåfaktorsautentisering faktiskt fungerar rent tekniskt, vilka metoder som är vanligast och vad som skiljer dem åt i säkerhet och användarvänlighet.

Grundprincipen bakom två faktorer

Autentisering brukar delas in i tre kategorier: något du vet, något du har och något du är. Ett lösenord tillhör den första kategorin. För att uppnå tvåfaktorsautentisering måste inloggningen kompletteras med minst en faktor från en annan kategori. Det innebär att den som stjäl ett lösenord ändå inte kan logga in utan att också komma över den fysiska enheten eller den biometriska egenskap som utgör den andra faktorn.

Det är denna kombination som gör metoden effektiv mot vanliga attacker som nätfiske och läckta lösenordslistor. Även om en angripare lyckas lura till sig ett lösenord genom en falsk inloggningssida, saknar de fortfarande den andra komponenten som krävs för att slutföra inloggningen.

Engångskoder via sms och e-post

Den enklaste och mest utbredda formen av tvåfaktorsautentisering bygger på engångskoder som skickas via sms eller e-post. När användaren loggar in med rätt lösenord skickar tjänsten en kod till det registrerade telefonnumret eller den registrerade e-postadressen. Koden måste sedan skrivas in inom en viss tid för att inloggningen ska fullföljas.

Metoden är populär eftersom den kräver minimal teknisk kunskap och fungerar utan extra applikationer. Samtidigt har den kända svagheter. Sms kan avlyssnas eller omdirigeras genom så kallad sim-swapping, där en angripare lurar en operatör att flytta offrets telefonnummer till ett nytt sim-kort. E-postkonton kan i sin tur bli kapade om de själva saknar tillräckligt skydd, vilket gör hela kedjan sårbar.

Autentiseringsappar och engångskoder som genereras lokalt

Ett säkrare alternativ är att använda en autentiseringsapp som genererar tidsbegränsade koder direkt på enheten, utan att någon kod skickas över nätet. Tekniken kallas TOTP, tidsbaserad engångslösenordsalgoritm, och bygger på att både tjänsten och appen delar en hemlig nyckel som sattes upp vid aktiveringen, oftast genom att användaren skannar en QR-kod.

Utifrån den delade nyckeln och den aktuella tiden räknar både server och app fram samma sexsiffriga kod, som vanligtvis byts var trettionde sekund. Eftersom koden aldrig skickas via sms eller internet finns det ingen trafik att avlyssna. Svagheten ligger i stället i själva enheten: om telefonen tappas bort eller går sönder utan att en säkerhetskopia av nycklarna finns, kan användaren bli utestängd från sina konton tills en återställningsprocess genomförs.

Fysiska säkerhetsnycklar

Den mest robusta formen av tvåfaktorsautentisering bygger på fysiska säkerhetsnycklar, ofta i form av en usb- eller nfc-enhet som ansluts till datorn eller telefonen vid inloggning. Dessa nycklar använder kryptografiska protokoll, till exempel FIDO2 eller U2F, som gör att inloggningen är bunden till just den specifika webbadressen som begär den.

Denna bindning till domänen är anledningen till att fysiska nycklar är i princip immuna mot nätfiske. Om en angripare bygger en falsk inloggningssida som ser identisk ut med den äkta, kommer nyckeln ändå att vägra svara eftersom domänen inte stämmer överens med den som registrerades från början. Nackdelen är kostnaden för att skaffa nycklarna samt risken att tappa bort dem, vilket gör att de flesta tjänster rekommenderar att man registrerar minst två nycklar som backup.

Biometri som andra faktor

Fingeravtryck och ansiktsigenkänning används alltmer som en del av tvåfaktorsautentisering, särskilt på mobila enheter. I praktiken fungerar biometrin oftast som en lokal upplåsning av en kryptografisk nyckel som redan finns lagrad i telefonens säkra hårdvara, snarare än att biometriska data skickas till tjänsten som ska verifiera inloggningen.

Det gör metoden både bekväm och relativt säker, eftersom den biometriska informationen aldrig lämnar enheten. Samtidigt är biometri inte oproblematiskt som ensam faktor, eftersom ett fingeravtryck eller ansikte inte kan bytas ut på samma sätt som ett lösenord om det på något sätt skulle komprometteras. I de flesta implementationer fungerar biometrin därför som en bekväm väg in till en redan etablerad kryptografisk nyckel, inte som den enda skyddsmekanismen.

Vad som skiljer metoderna åt i praktiken

Valet av metod handlar ofta om en avvägning mellan säkerhet, kostnad och hur enkelt systemet är att använda i vardagen. Sms-koder är enklast att komma igång med men lämnar dörren öppen för vissa typer av attacker. Autentiseringsappar höjer säkerhetsnivån utan större kostnad, men kräver att användaren har tillgång till en fungerande enhet vid varje inloggning. Fysiska nycklar ger det starkaste skyddet men innebär en investering och kräver att man alltid har nyckeln till hands.

För tjänster som hanterar särskilt känslig information, som bank- och myndighetstjänster, är det vanligt att flera av dessa metoder kombineras eller erbjuds parallellt, så att användaren kan välja den nivå som passar det egna behovet. Oavsett vilken metod som väljs innebär tillägget av en andra faktor ett betydande steg upp jämfört med att enbart förlita sig på ett lösenord.