Modul 2 · 2.4
Passkeyevi i sigurnosni ključevi
Modul 2: Lozinke i prijava · Vrijeme čitanja: 10 minuta
Cilj učenja: Nakon ove lekcije moći ćete objasniti zašto su passkeyevi i sigurnosni ključevi otporni na phishing, navesti razliku između sinkroniziranih i uređajno vezanih passkeyeva te odrediti kada ih je najbolje koristiti.
Ključni pojmovi: passkey, FIDO2, WebAuthn, javni i privatni ključ, vezanost uz domenu, sigurnosni ključ, sinkronizirani passkey, uređajno vezani passkey
Problem sa svime što prepisujete
U lekciji 2.3 vidjeli ste da kod iz aplikacije ili sms poruke ne štiti od dobre lažne stranice. Vi upišete kod na rnijnbank.example, prevarant ga u roku od nekoliko sekundi proslijedi na mijnbank.example i upadne u račun. Slaba točka je uvijek ista: Vi morate procijeniti jeste li na pravoj stranici. Čovjek koji žuri ili vidi uvjerljivu stranicu, prije ili kasnije pogriješi.
Passkeyevi i sigurnosni ključevi tu odluku uklanjaju od Vas. Adresu ne provjeravate Vi, nego Vaš preglednik i Vaš uređaj. I nema ničega što biste trebali prepisati ili proslijediti.
Što je passkey
Passkey je sredstvo za prijavu koje zamjenjuje lozinku. FIDO Alliance, organizacija koja stoji iza standarda, opisuje ga kao zamjenu za lozinku koju otključavate na isti način kao i svoj uređaj: otiskom prsta, licem ili PIN kodom.
Tehnički gledano, passkey je par ključeva:
- privatni ključ koji ostaje na Vašem uređaju (ili u Vašem upravitelju lozinki, vidi dolje) i nikada ne odlazi na web stranicu;
- javni ključ koji čuva web stranica.
Ono što je potpisano privatnim ključem, web stranica može provjeriti javnim ključem. No javnim ključem sami ne možete ništa potpisati. Ako baza podataka web stranice procuri, napadač ima samo javne ključeve, s kojima se ne može prijaviti. Dakle nema se što provaliti kao kod procurjelih lozinki iz lekcije 2.1.
Tehnologija se zove FIDO2. Dio koji se nalazi u Vašem pregledniku je WebAuthn, standard organizacije W3C (konzorcija koji izrađuje web standarde). Dio između Vašeg računala i zasebnog sigurnosnog ključa zove se CTAP.
Ovako izgleda prijava
- Na
mijnbank.exampleodaberete "Prijava pomoću passkeya". - Web stranica šalje slučajni izazov: broj koji se koristi samo jednom.
- Vaš preglednik predaje taj izazov Vašem uređaju, zajedno s domenom na kojoj se nalazite.
- Vaš uređaj traži da ga otključate: prstom, licem ili PIN kodom. Ta provjera odvija se na Vašem uređaju. Vaš otisak prsta nikada ne odlazi na web stranicu; web stranica saznaje samo da je provjera uspjela.
- Vaš uređaj potpisuje izazov privatnim ključem koji pripada domeni
mijnbank.example. - Web stranica provjerava potpis Vašim javnim ključem. Ako je točan, prijavljeni ste.
Zašto passkey ne radi na lažnoj stranici
Prilikom izrade, passkey se povezuje s domenom web stranice. U WebAuthn standardu to se zove Relying Party ID: passkey pripada domeni mijnbank.example (i eventualno njezinim poddomenama) i ničemu drugom. Preglednik određuje koja domena stoji u zahtjevu, a ne web stranica. Lažna stranica to ne može krivotvoriti.
Ako preko phishing e-poruke dođete na https://rnijnbank.example ili https://mijnbank.example.inlog-check.example, dogodi se sljedeće:
- Lažna stranica traži passkey.
- Vaš preglednik traži passkey za tu domenu. Ne postoji.
- Dobijete poruku poput "nema passkeya za ovu stranicu" ili prazan popis za odabir.
Nema ničega što biste slučajno mogli odobriti ili prepisati. Čak i ako ne primijetite da je stranica lažna, passkey na njoj jednostavno ne radi. To je ono što nazivamo otpornošću na phishing. I NIST to potvrđuje: otpornost na phishing zahtijeva kriptografsku autentifikaciju; lozinke, kodovi koje prepisujete i obavijesti za odobravanje to nisu.
Ako na stranici na kojoj se inače uvijek prijavljujete passkeyem odjednom dobijete samo polje za lozinku, ili upit da "samo prepišete kod iz aplikacije"? To je upozorenje. Pogledajte adresu.
Sinkronizirani ili uređajno vezani
Postoje dvije vrste passkeyeva. Razlika je u tome gdje se nalazi privatni ključ.
| Sinkronizirani passkey | Uređajno vezani passkey | |
|---|---|---|
| Gdje se nalazi privatni ključ? | Kod pružatelja passkeya: u sustavu za upravljanje ključevima Vašeg operacijskog sustava ili Vašem upravitelju lozinki, koji ga šifrirano kopira na Vaše druge uređaje | Na jednom uređaju, primjerice sigurnosnom ključu, i ne može se s njega premjestiti |
| Novi telefon? | Passkey dolazi automatski kada se prijavite kod svog pružatelja usluge | Na novom uređaju morate izraditi novi passkey |
| Izgubljeni uređaj? | Nema problema sve dok je Vaš račun kod pružatelja usluge siguran | Bez rezervnog ključa ostajete bez pristupa |
| Slaba točka | Račun kod Vašeg pružatelja usluge: tko uđe tamo, ima sve Vaše passkeyeve | Gubitak; potreban Vam je rezervni ključ |
| Prikladno za | Gotovo sve obične račune | Administratorske račune, hosting, registraciju domene, banku, sam račun kod pružatelja usluge |
U WebAuthn standardu, sinkronizirani passkey naziva se "multi-device credential". FIDO Alliance uređajno vezane passkeyeve na sigurnosnom ključu smatra oblikom s najvišom razinom sigurnosti, a sigurnosni ključ preporučuje i kao sredstvo za oporavak ako izgubite pristup svojim sinkroniziranim uređajima.
Ako koristite sinkronizirane passkeyeve, dodatno dobro zaštitite račun kod svog pružatelja usluge: jakom lozinkom, dvofaktorskom autentifikacijom (2FA), a po mogućnosti i vlastitim sigurnosnim ključem.
Sigurnosni ključevi
Sigurnosni ključ je mali uređaj koji utaknete u usb priključak ili prislonite uz telefon (NFC). Na njemu se nalaze uređajno vezani passkeyevi. Prijava se obavlja dodirom ključa, često uz PIN kod samog ključa ili otisak prsta na ključu.
Postoji više proizvođača; pri odabiru obratite pažnju na podršku za FIDO2, vrstu priključka koja Vam je potrebna (USB-A, USB-C, NFC) te podržava li ključ PIN kod ili otisak prsta.
Najvažnije pravilo: uvijek registrirajte najmanje dva ključa. Drugi je Vaš rezervni ključ. Povezujete ga kod svake usluge, baš kao i prvi, i čuvate ga na drugom mjestu, primjerice kod kuće u ladici ili u sefu. Ako izgubite svoj svakodnevni ključ, prijavite se rezervnim ključem, uklonite izgubljeni ključ iz svojih računa i kupite novi drugi ključ. Ključ se ne može kopirati; to je upravo njegova svrha.
Prijava na drugom računalu
Želite se prijaviti na prijenosnom računalu, ali Vaš passkey nalazi se na telefonu. Preglednik tada često nudi prikaz QR koda. Skenirate ga telefonom i tamo ga otključate. FIDO Alliance to naziva cross-device authentication. Telefon putem Bluetootha provjerava je li doista u blizini prijenosnog računala. Netko tko ima samo fotografiju QR koda, dakle, ne može se njime prijaviti na daljinu.
Zamke i kada ih koristiti
Passkeyevi su velik korak naprijed, ali nisu čarobni:
- Lozinka često i dalje postoji. Mnoge usluge, uz passkey, i dalje omogućuju prijavu lozinkom i kodom. Prevarant tada pokušava tim putem. Ako je moguće, isključite stare načine prijave ili neka lozinka bude duga i jedinstvena.
- Oporavak je najslabija karika. Ako netko uz pomoć e-poruke "zaboravljena lozinka" ili poziva službi za podršku može zaobići Vaš passkey, Vaš je račun siguran onoliko koliko i taj put oporavka. Provjerite koji su podaci za oporavak postavljeni (lekcija 2.5).
- Ne podržava ih svaka usluga. U tom slučaju koristite aplikaciju za autentifikaciju.
- Dijeljeni računi loše se slažu s passkeyevima na jednom osobnom uređaju. Radije svakome dodijelite vlastiti račun s vlastitim passkeyem (modul 7).
- Otključani uređaj je otvorena vrata. Zaštitite svoj telefon i prijenosno računalo dobrim zaključavanjem zaslona (modul 5).
Gdje početi? Kod računa s najvećom mogućom štetom ako budu preuzeti: Vaša e-pošta, Vaš upravitelj lozinki ili pružatelj passkeyeva, hosting i registracija domene, banka i knjigovodstvo. Ako jedna od tih usluga nudi passkeyeve ili sigurnosne ključeve, uključite ih tamo prvo.
Sažetak
- Passkey je par ključeva: privatni ključ ostaje kod Vas, web stranica ima samo javni ključ. Curenje podataka kod web stranice ne daje ništa što bi se moglo provaliti.
- Preglednik povezuje passkey sa stvarnom domenom. Na lažnoj stranici nema passkeya, pa nema ništa za ukrasti ili odobriti.
- Sinkronizirani passkeyevi prate Vas na druge uređaje; uređajno vezani passkeyevi (sigurnosni ključ) ostaju na jednom uređaju.
- Uvijek registrirajte rezervni ključ i čuvajte ga na drugom mjestu.
- Passkey je siguran onoliko koliko je siguran put oporavka i stari načini prijave koji su još uvijek otvoreni.
Kviz
Zadatak
Zadatak D2.4: Vaš prvi passkey ili sigurnosni ključ. Istražite koji od Vaših najvažnijih računa podržavaju passkeyeve ili sigurnosne ključeve, postavite ga za barem jedan od njih i osigurajte rezervu. Označite kontrolnu listu i odgovorite na pitanja za razmišljanje.
Zadatak D2.4: Vaš prvi passkey ili sigurnosni ključ
Evo kako to riješiti: (1) Kod svojih najvažnijih računa (pošta, upravitelj lozinki ili pružatelj passkeya, hosting, registracija domene, banka, knjigovodstvo) provjerite u postavkama sigurnosti podržavaju li passkeyeve ili sigurnosne ključeve. (2) Odaberite za svaki račun: sinkronizirani passkey (u Vašem operacijskom sustavu ili upravitelju lozinki) ili onaj vezan uz uređaj (sigurnosni ključ). Za upravljanje hostingom, domenama i Vašim pružateljem passkeyeva poželjan je sigurnosni ključ. (3) Postavite passkey ili ključ za barem jedan račun. (4) Uredite rezervu: registrirajte drugi ključ i čuvajte ga na drugom mjestu, ili kod sinkroniziranog passkeya osigurajte drugi uređaj i dobru zaštitu računa kod pružatelja usluge. (5) Provjerite je li stari način prijave (lozinka uz SMS ili kod) još uvijek uključen. Isključite ga ako je moguće, ili neka lozinka bude dugačka i jedinstvena. (6) Jednom isprobajte prijavu na drugom uređaju (na primjer putem QR koda i svog telefona).
Vaše kvačice i bilješke ostaju samo u ovom pregledniku; ne šaljemo ih nikamo. Ako ste prijavljeni, u Moji tečajevi čuvamo samo podatak da ste zadatak završili.
Dodatno štivo
- FIDO Alliance, Passkeys (engleski): https://fidoalliance.org/passkeys/
- W3C, Web Authentication Level 3 (engleski, standard): https://www.w3.org/TR/webauthn-3/
- passkeys.dev, Terms (engleski, pojmovnik članova FIDO Alliancea i W3C-a): https://passkeys.dev/docs/reference/terms/
- NIST SP 800-63B-4, dio o otpornosti na phishing i syncable authenticators (engleski): https://pages.nist.gov/800-63-4/sp800-63b.html
- Nizozemski NCSC, Kako odabrati MFA metodu? (nizozemski): https://www.ncsc.nl/multifactor-authenticatie/hoe-kies-je-een-mfa-methode
