Passkeys a bezpečnostní klíče
Modul 2: Hesla a přihlašování · Doba čtení: 10 minut
Cíl lekce: Po této lekci dokážete vysvětlit, proč jsou passkeys a bezpečnostní klíče odolné vůči phishingu, popsat rozdíl mezi synchronizovanými a zařízení vázanými passkeys a určit, kdy je použít.
Klíčové pojmy: passkey, FIDO2, WebAuthn, veřejný a soukromý klíč, vázání na doménu, bezpečnostní klíč, synchronizovaný passkey, zařízení vázaný passkey
Problém se vším, co přepisujete
V lekci 2.3 jste viděli, že kód z aplikace nebo sms Vás nechrání před dobře udělanou podvodnou stránkou. Vy kód zadáte na rnijnbank.example, podvodník jej během pár sekund přepošle na mijnbank.example a je uvnitř. Slabé místo je vždy stejné: Vy musíte posoudit, zda jste na pravé stránce. Člověk, který spěchá nebo vidí přesvědčivou stránku, tuto chybu dříve nebo později udělá.
Passkeys a bezpečnostní klíče Vám toto rozhodování odebírají. Adresu nekontrolujete Vy, ale Váš prohlížeč a Vaše zařízení. A není nic, co by se dalo přepsat nebo přeposlat.
Co je passkey
Passkey je přihlašovací prostředek, který nahrazuje heslo. FIDO Alliance, organizace stojící za tímto standardem, jej popisuje jako náhradu hesla, kterou odemykáte stejným způsobem jako své zařízení: otiskem prstu, obličejem nebo PINem.
Technicky je passkey pár klíčů:
- soukromý klíč, který zůstává ve Vašem zařízení (nebo ve Vašem správci hesel, viz níže) a nikdy neputuje na webovou stránku;
- veřejný klíč, který uchovává webová stránka.
Co bylo podepsáno soukromým klíčem, může webová stránka ověřit veřejným klíčem. S veřejným klíčem ale sám nic podepsat nemůžete. Pokud unikne databáze webové stránky, má útočník jen veřejné klíče, se kterými se nedá přihlásit. Není tedy co louskat, jako u uniklých hesel z lekce 2.1.
Technologie se nazývá FIDO2. Část, která běží ve Vašem prohlížeči, se nazývá WebAuthn, standard konsorcia W3C (sdružení, které tvoří webové standardy). Část mezi Vaším počítačem a samostatným bezpečnostním klíčem se nazývá CTAP.
Jak probíhá přihlášení
- Na
mijnbank.examplezvolíte "Přihlásit se pomocí passkey". - Webová stránka odešle náhodnou výzvu: číslo, které se použije jen jednou.
- Váš prohlížeč předá tuto výzvu Vašemu zařízení společně s doménou, na které se nacházíte.
- Vaše zařízení Vás požádá o odemknutí: prst, obličej nebo PIN. Tato kontrola probíhá ve Vašem zařízení. Váš otisk prstu nikdy neputuje na webovou stránku; ta se jen dozví, že kontrola proběhla úspěšně.
- Vaše zařízení podepíše výzvu soukromým klíčem, který patří k
mijnbank.example. - Webová stránka ověří podpis Vaším veřejným klíčem. Pokud souhlasí, jste přihlášeni.
Proč passkey nefunguje na podvodné stránce
Při vytváření se passkey naváže na doménu webové stránky. Ve WebAuthn se tomu říká Relying Party ID: passkey patří k mijnbank.example (a případně jeho subdoménám) a ničemu jinému. Prohlížeč určuje, jaká doména je v požadavku uvedena, nikoli webová stránka. Podvodná stránka to nedokáže zfalšovat.
Pokud se přes phishingový e-mail dostanete na https://rnijnbank.example nebo https://mijnbank.example.inlog-check.example, stane se toto:
- Podvodná stránka požádá o passkey.
- Váš prohlížeč hledá passkey pro danou doménu. Žádný tam není.
- Dostanete hlášení typu "pro tuto stránku není k dispozici žádný passkey" nebo prázdný výběrový seznam.
Není nic, co byste mohl omylem schválit nebo přepsat. I kdyby jste podvodnou stránku neodhalili, passkey tam prostě nebude fungovat. To je to, co myslíme odolností vůči phishingu. Uvádí to i NIST: odolnost vůči phishingu vyžaduje kryptografickou autentizaci; hesla, kódy, které se přepisují, a potvrzovací hlášení touto podmínku nesplňují.
Dostáváte na stránce, kam se vždy přihlašujete pomocí passkey, najednou jen pole pro heslo nebo žádost o "kód z aplikace"? To je varovný signál. Podívejte se na adresu.
Synchronizovaný nebo vázaný na zařízení
Existují dva druhy passkeys. Rozdíl je v tom, kde "žije" soukromý klíč.
| Synchronizovaný passkey | Passkey vázaný na zařízení | |
|---|---|---|
| Kde se nachází soukromý klíč? | U poskytovatele passkeys: ve svazku klíčů Vašeho operačního systému nebo ve Vašem správci hesel, který jej šifrovaně kopíruje do Vašich dalších zařízení | Na jednom zařízení, například bezpečnostním klíči, a z něj se nedá přenést |
| Nový telefon? | Passkey se přenese, jakmile se přihlásíte u svého poskytovatele | Na novém zařízení musíte vytvořit nový passkey |
| Ztráta zařízení? | Žádný problém, pokud je účet u poskytovatele zabezpečený | Bez záložního klíče se nedostanete dovnitř |
| Slabé místo | Účet u Vašeho poskytovatele: kdo se tam dostane, má všechny Vaše passkeys | Ztráta; potřebujete záložní klíč |
| Vhodné pro | Téměř všechny běžné účty | Administrátorské účty, hosting, registraci domén, banku, samotný účet u poskytovatele |
Ve standardu WebAuthn se synchronizovaný passkey nazývá "multi-device credential". FIDO Alliance označuje passkeys vázané na zařízení na bezpečnostním klíči za formu s nejvyšší mírou jistoty a doporučuje bezpečnostní klíč i jako záložní prostředek pro případ, že ztratíte přístup ke svým synchronizovaným zařízením.
Pokud používáte synchronizované passkeys, chraňte účet u svého poskytovatele o to lépe: silné heslo, dvoufázové ověření (2FA) a nejlépe i vlastní bezpečnostní klíč.
Bezpečnostní klíče
Bezpečnostní klíč je malé zařízení, které zapojíte do usb portu nebo přiložíte k telefonu (NFC). Jsou na něm uloženy passkeys vázané na zařízení. Přihlášení probíhá dotykem klíče, často s PINem samotného klíče nebo otiskem prstu na klíči.
Existuje více výrobců; při výběru se zaměřte na podporu FIDO2, typ konektoru, který potřebujete (USB-A, USB-C, NFC), a zda klíč podporuje PIN nebo otisk prstu.
Nejdůležitější pravidlo: vždy zaregistrujte alespoň dva klíče. Druhý je Váš záložní klíč. Propojíte jej u každé služby stejně jako ten první a uložíte na jiné místo, například doma v zásuvce nebo v trezoru. Pokud ztratíte svůj každodenní klíč, přihlásíte se pomocí záložního, odstraníte ztracený klíč ze svých účtů a koupíte nový druhý klíč. Klíč nelze zkopírovat; to je přesně jeho smyslem.
Přihlášení na jiném počítači
Chcete se přihlásit na notebooku, ale Váš passkey je uložen na telefonu. Prohlížeč v takovém případě často nabídne zobrazení QR kódu. Naskenujete jej telefonem a odemknete tam. FIDO Alliance toto nazývá cross-device authentication. Telefon přes Bluetooth ověří, zda se skutečně nachází v blízkosti notebooku. Někdo, kdo má jen fotku QR kódu, se tak na dálku přihlásit nemůže.
Úskalí a kdy passkeys použít
Passkeys jsou velký krok vpřed, ale nejsou kouzlem:
- Heslo často zůstává zachováno. Mnoho služeb umožňuje přihlásit se vedle passkey i heslem a kódem. Podvodník pak zkouší právě tuto cestu. Pokud to lze, vypněte staré způsoby přihlašování nebo si nastavte dlouhé a jedinečné heslo.
- Obnova je nejslabším článkem. Pokud někdo dokáže Váš passkey obejít pomocí e-mailu "zapomenuté heslo" nebo telefonátem na helpdesk, je Váš účet jen tak silný, jak silná je tato obnovovací cesta. Zkontrolujte, jaké obnovovací údaje jsou u účtu nastaveny (lekce 2.5).
- Ne každá služba to podporuje. V takovém případě použijte autentizační aplikaci.
- Sdílené účty se k passkeys na jednom osobním zařízení hodí špatně. Dejte raději každému vlastní účet s vlastním passkey (modul 7).
- Odemčené zařízení je otevřené dveře. Chraňte telefon i notebook dobrým zamykáním obrazovky (modul 5).
Kde začít? U účtů, kde by převzetí znamenalo největší škodu: Váš e-mail, Váš správce hesel nebo poskytovatel passkeys, hosting a registrace domény, banka a účetnictví. Pokud některá z těchto služeb nabízí passkeys nebo bezpečnostní klíče, zapněte je tam jako první.
Shrnutí
- Passkey je pár klíčů: soukromý klíč zůstává u Vás, webová stránka má jen veřejný klíč. Únik u webové stránky nedává nic k rozlousknutí.
- Prohlížeč naváže passkey na skutečnou doménu. Na podvodné stránce passkey neexistuje, takže není co ukrást ani schválit.
- Synchronizované passkeys se přenášejí i na Vaše další zařízení; passkeys vázané na zařízení (bezpečnostní klíč) zůstávají na jednom zařízení.
- Vždy zaregistrujte záložní klíč a uložte jej na jiném místě.
- Passkey je jen tak silný, jak silná je obnovovací cesta a staré způsoby přihlašování, které ještě zůstávají otevřené.
Kvíz
Úkol
Úkol D2.4: Váš první passkey nebo bezpečnostní klíč. Zjistěte, které z Vašich nejdůležitějších účtů podporují passkeys nebo bezpečnostní klíče, nastavte je alespoň u jednoho a zařiďte si záložní klíč. Odškrtněte si checklist a odpovězte na reflexní otázky.
Úkol D2.4: Váš první passkey nebo bezpečnostní klíč
Postupujte takto: (1) U svých nejdůležitějších účtů (e-mail, správce hesel nebo poskytovatel passkeys, hosting, registrace domény, banka, účetnictví) se podívejte v nastavení zabezpečení, zda podporují passkeys nebo bezpečnostní klíče. (2) Vyberte pro každý účet: synchronizovaný passkey (ve Vašem operačním systému nebo správci hesel) nebo vázaný na zařízení (bezpečnostní klíč). Pro správu hostingu, domén a Vašeho poskytovatele passkeys raději bezpečnostní klíč. (3) Nastavte alespoň u jednoho účtu passkey nebo klíč. (4) Zajistěte zálohu: druhý registrovaný klíč uložený na jiném místě, nebo u synchronizovaného passkey druhé zařízení a dobré zabezpečení účtu u Vašeho poskytovatele. (5) Zkontrolujte, zda stále funguje starý způsob přihlášení (heslo se SMS nebo kódem). Pokud to jde, vypněte ho, nebo nastavte dlouhé a jedinečné heslo. (6) Jednou vyzkoušejte přihlášení na druhém zařízení (například pomocí QR kódu a telefonu).
Vaše zaškrtnutí a poznámky zůstávají pouze v tomto prohlížeči; nikam je neposíláme. Pokud jste přihlášeni, ukládáme v sekci Moje kurzy pouze to, že jste úkol splnili.
Doporučené zdroje
- FIDO Alliance, Passkeys (anglicky): https://fidoalliance.org/passkeys/
- W3C, Web Authentication Level 3 (anglicky, standard): https://www.w3.org/TR/webauthn-3/
- passkeys.dev, Terms (anglicky, slovník pojmů členů FIDO Alliance a W3C): https://passkeys.dev/docs/reference/terms/
- NIST SP 800-63B-4, část o odolnosti vůči phishingu a synchronizovatelných autentizátorech (anglicky): https://pages.nist.gov/800-63-4/sp800-63b.html
- NÚKIB (Národní úřad pro kybernetickou a informační bezpečnost): https://nukib.gov.cz/
