Dvoufaktorová autentizace (2FA): srovnání bezpečnosti a uživatelské zkušenosti (SMS vs. aplikace vs. hardwarový klíč)

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

Dvoufaktorová autentizace 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 prostřednictvím SMS, přes aplikaci (TOTP/push) a pomocí hardwarového bezpečnostního klíče (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 ve formě SMS zprávy a uživatel jej 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 autentizační aplikaci offline. Alternativně „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řihlášení provede 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é k real-time phishingu (zadání kódu na falešné stránce).
    • Push: náchylný k „push bombardování“ (únava z notifikací); mitigace: číselná shoda, kontext.
    • FIDO2: phishing-resistant; vazba na origin (doménu) brání zachycení.
  • Únos účtu na straně operátora/telekomunikační infrastruktury:
    • SMS: riziko SIM-swapu, SS7 zranitelností, přesměrování.
    • TOTP/Push: nezávislé na operátorovi; riziko spočívá v kompromisu 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á; ovšem útočník může ovládnout relaci, pokud uživatel fyzicky potvrdí.
  • Opakované použití kódu a prodlevy:
    • SMS: zpoždění doručení, blokace v roamingu; kód lze použít jen krátce, ale v reálném čase jej lze přeposlat.
    • TOTP: offline generování, pevné časové okno (typicky 30 s); odolnější vůči prodlevám.
    • FIDO2: bez kódů; podpis výzvy je vázán na relaci a origin.

Srovná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 číselnou shodou) Vysoká (vazba na origin)
Riziko SIM-swap/SS7 Vysoké Žádné Žádné
Závislost na signálu Ano Ne (TOTP), občasná data (push) Ne
UX při cestování/roamingu Často problematické Dobré Výborné (pokud klíč máte u sebe)
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é (bezplatné aplikace) Střední (klíč 30–80 €)
Správa a škálování ve firmách Střední (závislost na telco) Dobré (MDM, správa seedů) Výborné (fleet management, 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 k phishingu.
  • FIDO2/WebAuthn: Párové klíče vytvářené v hardwarovém nebo platformním autentizátoru; soukromý klíč neopouští zařízení, podpis je vázán na origin. Výhody: odolnost proti phishingu, žádné kódy, možnost biometrii, škálovatelná správa ve firmách. Nevýhody: nutnost kompatibilního autentizá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 minimálně TOTP v aplikaci (např. jako náhradu za SMS). Pro klíčové účty (e-mail, bankovnictví) zvažte hardwarový klíč.
  • Práce na dálku, freelanceři: Upřednostněte TOTP/push; u kritických účtů FIDO2. Zajistěte záložní kódy a druhý autentizátor.
  • Malé a střední firmy: Minimálně TOTP s MDM politikami a centralizovaným onboarding/offboardingem. Pro administrátory a cloudové účty nasadit FIDO2.
  • Regulovaná odvětví a vysoké ohrožení (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ředejít

  1. MFA fatigue (push bombardování): 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 (prohlížečový správce hesel + HSTS), migrujte na FIDO2.
  3. Ztráta zařízení/klíče: Mějte záchranné kódy, druhý registrovaný autentizátor a definovaný recovery proces (HR/IT ověření identity).
  4. Shadow IT a neregistrované aplikace: Politiky MDM, whitelist autentizá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; ponechejte SMS pouze jako dočasný recovery kanál s přísnými kontrolami (bezpečnostní otázky odstraňte).
  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), proškolte uživatele.
  5. Fáze 4 – vypnutí kódů: Pokud služba umožňuje, zrušte OTP jako primární faktor; ponechejte je pouze jako řízený break-glass mechanismus.

Bezpečnostní a provozní doporučení

  • Politiky registrace: Vyžadujte minimálně dva autentizá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í identity; omezte telefonickou podporu.
  • Monitorování anomálií: Upozornění na netypické lokality, časy, 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í platformní autentizátory (např. Secure Enclave/TPM). Ty umožňují „passkeys“ – FIDO2 klíče vázané na zařízení s biometrickým odemknutím. Pro multiplatformní využití a týmové scénáře jsou ale nadále praktické externí hardwarové klíče (USB-C/NFC) – zejména jako přenosné, sdílené mezi zařízeními a kompatibilní s politikami organizace.

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

  • Evidování a inventář: Vést seznam registrovaných klíčů, dat vydání a odvolání.
  • Rotace a odvolání: Po ztrátě nebo odchodu zaměstnance okamžité odvolání 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čí v prostředí se zvýšenou hrozbou, 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 ziskem.
  • „TOTP je stejně bezpečný jako FIDO2“: TOTP chrání před únikem hesel, ale ne před živým phishingem; 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 rychlou modernizaci ze SMS? Přepněte na TOTP v aplikaci.
  3. Preferujete nejjednodušší uživatelské prostředí? Push s number-match nebo FIDO2.
  4. Firemní privilegia nebo kritická infrastruktura? Povinně FIDO2 + druhý klíč.

Kontrolní seznam pro nasazení

  • SMS ponechat pouze 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 min. 2 klíče/osoba.
  • Nastavit politiky recovery, logování a detekce 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 výše 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á autentizace pomocí hardwarového klíče nebo platformního FIDO autentizátoru, s promyšleným záložním mechanismem a důsledným dohledem.