Dvoufaktorové ověřování identity

Proč dvoufaktorová autentifikace (2FA) stále rozhoduje o bezpečnosti

Dvoufaktorová autentifikace kombinuje něco, co znáte (heslo), s něčím, co máte (telefon, hardwarový klíč) nebo jste (biometrie). Cílem je dramaticky snížit úspěšnost útoků založených na odcizení hesel. V praxi však existují významné rozdíly mezi 2FA přes SMS, přes aplikaci (TOTP/push) a přes hardwarový bezpečnostní klíč (FIDO2/WebAuthn). Tento článek vysvětluje technické principy, hrozby, vhodné scénáře a doporučenou migrační strategii.

Stručný přehled metod: definice a mechanismy

  • SMS 2FA: Služba vygeneruje jednorázový PIN (OTP), který přijde v SMS zprávě a uživatel ho přepíše do přihlašovacího formuláře. Ověření probíhá na serveru poskytovatele služby.
  • Aplikace (TOTP/HOTP/push): Nejčastěji časově synchronizovaná jednorázová hesla (Time-based One-Time Passwords, TOTP) generovaná v autentifikační aplikaci offline. Případně „push“ notifikace, které vyžadují potvrzení v aplikaci.
  • Hardwarový klíč (FIDO2/WebAuthn): Kryptografický token (USB/NFC/Lightning) generuje a uchovává soukromé klíče. Při přihlašování vykoná výzvu-odpověď (challenge-response) vázanou na konkrétní doménu, často s podporou biometrie.

Hlavní hrozby a odolnost jednotlivých metod

  • Phishing: Útočník simuluje legitimní web a vyláká kód nebo potvrzení.
    • SMS/TOTP: náchylné na real-time phishing (zadání kódu na falešné stránce).
    • Push: náchylný na „push bombing“ (únava z notifikací); mitigace: číselný match, kontext.
    • FIDO2: phishing-resistant; vazba na origin (doménu) brání zachycení.
  • Únos účtu na straně operátora/telekomunikační infrastruktury:
    • SMS: riziko SIM-swap, zranitelností SS7, přesměrování.
    • TOTP/Push: nezávislé na operátorovi; riziko je v kompromitaci zařízení/aplikace.
    • FIDO2: nezávislé na operátorovi; tajemství neopouští klíč.
  • Malware na koncovém zařízení:
    • SMS/TOTP/Push: pokud je zařízení kompromitováno (keylogger/overlay), útočník může kód zachytit nebo potvrdit push.
    • FIDO2: i při infikovaném zařízení soukromý klíč neuniká; útočník však může ovládnout relaci, pokud uživatel fyzicky potvrdí.
  • Opakovatelné použití kódu a zpoždění:
    • SMS: zpoždění doručení, blokace v roamingu; kód lze použít jen krátce, ale v reálném čase ho lze přeposlat.
    • TOTP: offline generování, pevné časové okno (typicky 30 s); odolnější vůči zpožděním.
    • FIDO2: bez kódů; podpis výzvy je vázán na relaci a origin.

Porovnávací tabulka: bezpečnost, použitelnost, náklady

Vlastnost SMS Aplikace (TOTP/Push) Hardwarový klíč (FIDO2)
Odolnost vůči phishingu Nízká Střední (lepší s číselným match) Vysoká (vazba na origin)
Riziko SIM-swap/SS7 Vysoké Žádné Žádné
Závislost na signálu Ano Ne (TOTP), občas data (push) Ne
UX při cestování/roamingu Často problematické Dobré Výborné (pokud máte klíč s sebou)
Podpora bez administrace Téměř všude Široká Rostoucí (moderní služby)
Počáteční náklady Nízké (přenáší operátor) Nízké (zdarma aplikace) Střední (klíč 30–80 €)
Správa a škálování ve firmách Střední (závislost na telco) Dobré (MDM, seed management) Výborné (flotila, prověření – attestation)
Odstranění kódů z uživatelské práce Ne Částečně (push) Ano (dotyk/biometrie)

Standardy: TOTP/HOTP vs. FIDO2/WebAuthn

  • TOTP/HOTP: Sdílený tajný klíč (seed) mezi serverem a aplikací. TOTP používá časové okno (typicky 30 s), HOTP čítač. Výhody: offline, interoperabilní, jednoduché. Nevýhody: sdílené tajemství, náchylnost na phishing.
  • FIDO2/WebAuthn: Párové klíče vytvářené v hardwarovém nebo platformovém autentikátoru; soukromý klíč neopouští zařízení, podpis je vázaný na origin. Výhody: odolnost proti phishingu, žádné kódy, možnost biometrie, škálovatelná správa ve firmách. Nevýhody: potřeba kompatibilního autentikátoru a prohlížeče; proces adopce.

Praktické scénáře použití a doporučení

  • Obyčejný uživatel sociálních sítí a e-mailu: Aktivujte alespoň TOTP v aplikaci (např. jako náhradu za SMS). U klíčových účtů (e-mail, bankovnictví) zvažte hardwarový klíč.
  • Práce na dálku, freelanceri: Upřednostněte TOTP/push; u kritických účtů FIDO2. Zajistěte záložní kódy a druhý autentikátor.
  • Malé a střední firmy: Minimálně TOTP s MDM politikami a centralizovaným onboarding/offboarding procesem. Pro administrátory a cloudové účty nasadit FIDO2.
  • Regulovaná odvětví a vysoké riziko (fintech, zdravotnictví, novináři): FIDO2 jako primární faktor; SMS vypnout, TOTP jako dočasná fallback volba.

Nejčastější selhání a jak jim předcházet

  1. MFA fatigue (push bombing): Zapněte number matching a zobrazování geolokačního kontextu v push notifikaci.
  2. Phishing na OTP: Používejte pouze oficiální aplikace, přidejte detekci domény (browser password manager + HSTS), migrujte na FIDO2.
  3. Ztráta zařízení/klíče: Mějte záchranné kódy, druhý registrovaný autentikátor a definovaný recovery proces (HR/IT ověření identity).
  4. Shadow IT a neregistrované aplikace: Politiky MDM, whitelist autentifikátorů, logování a audit.

Migrační strategie: od SMS k FIDO2 bez bolesti

  1. Inventarizace: Zmapujte účty a služby, které podporují TOTP a WebAuthn.
  2. Fáze 1 – vypněte SMS tam, kde to jde: Přepněte na TOTP; ponechte SMS jen jako dočasný recovery kanál s přísnou kontrolou (odstranit bezpečnostní otázky).
  3. Fáze 2 – pilot FIDO2: Nasadit hardwarové klíče pro administrátory, DevOps a VIP účty. Využijte ověření autenticity (attestation) a vazbu na účty.
  4. Fáze 3 – široká adopce: Standardizujte nákup klíčů, nastavte politiky (počet registrovaných klíčů na osobu, povinné záložní klíče), vyškolte uživatele.
  5. Fáze 4 – vypnutí kódů: Pokud to služba umožňuje, zrušte OTP jako primární faktor; ponechte je jen jako řízený break-glass mechanismus.

Bezpečnostní a provozní doporučení

  • Politiky registrace: Vyžadujte minimálně dva autentikátory (např. dva FIDO2 klíče nebo klíč + TOTP) ještě před nasazením do produkce.
  • Recovery bez call centra: Upřednostněte self-service recovery s důkazem držby zařízení, eID nebo interní identitou; omezte telefonickou podporu.
  • Monitorování anomálií: Upozornění na netypická místa, čas, neúspěšné pokusy, opakované push žádosti.
  • Segregace rizika: Pro privilegované účty povinné FIDO2 a just-in-time přístupy.

Specifika mobilních platforem a prohlížečů

Moderní prohlížeče a operační systémy podporují platformové autentikátory (např. Secure Enclave/TPM). Ty umožňují „passkeys“ – FIDO2 klíče vázané na zařízení s biometrickým odemknutím. Pro multiplatformové využití a týmové scénáře jsou však nadále praktické externí hardwarové klíče (USB-C/NFC) – zejména jako přenosné, sdíletelné mezi zařízeními a kompatibilní s politikami organizace.

Compliance, audit a životní cyklus autentikátorů

  • Evidenční a inventární záznamy: Vést seznam registrovaných klíčů, dat vydání a zrušení platnosti.
  • Rotace a zrušení platnosti: Po ztrátě nebo odchodu zaměstnance okamžité zrušení platnosti a audit přihlašovacích událostí.
  • Testy obnovy: Pravidelně simulujte ztrátu zařízení; ověřte, že recovery proces je rychlý a bezpečný.

Časté mýty o 2FA a realita

  • „SMS stačí každému“: Nestačí ve vysoce rizikovém prostředí, při cestování nebo tam, kde hrozí SIM-swap.
  • „Hardwarové klíče jsou nepraktické“: Moderní klíče podporují NFC, biometrie a více protokolů; zavedení je jednorázová námaha s dlouhodobým přínosem.
  • „TOTP je stejně bezpečný jako FIDO2“: TOTP chrání před únikem hesel, ale ne proti živému phishingu; FIDO2 ano.

Rozhodovací strom: jakou metodu zvolit dnes

  1. Potřebujete odolnost vůči phishingu? Ano → FIDO2. Ne → pokračujte.
  2. Máte omezený rozpočet a chcete rychlý upgrade ze SMS? Přepněte na TOTP v aplikaci.
  3. Preferujete nejjednodušší UX? Push s number-match nebo FIDO2.
  4. Firemní privilegia nebo kritická infrastruktura? Povinně FIDO2 + druhý klíč.

Kontrolní seznam pro nasazení

  • SMS ponechat jen jako break-glass a vyžadovat dodatečné ověření identity.
  • TOTP zavést jako minimum; používat spolehlivé aplikace a chránit seed (záloha/šifrování).
  • FIDO2 připravit pro klíčové účty a privilegované uživatele; distribuovat minimálně 2 klíče/osoba.
  • Nastavit politiky recovery, logování a detekci anomálií; pravidelně testovat.

Hierarchie spolehlivosti

V pořadí od nejslabšího k nejsilnějšímu platí: SMS → TOTP/Push → FIDO2/WebAuthn. Každý krok směrem nahoru výrazně snižuje riziko kompromitace účtu a současně může zlepšit použitelnost. Minimem je odchod od SMS. Cílovým stavem pro kritické účty a organizace je phishing-odolná autentifikace přes hardwarový klíč nebo platformový FIDO autentikátor, s promyšleným záložním mechanismem a důsledným dohledem.