11. dubna 2019

Google včera představil další Security Key, který se dá použít pro dvoufaktorovou autentizaci (2FA, Two-Factor Authentication, někdy též dvoufázové ověření, 2-step verification, 2SV) pro Gůglí služby. Tenhle je rovnou vestavěný v Androidu 7+, takže ho už možná máte v kapse, používá Bluetooth (ale není třeba nic párovat) a funguje zatím jen v Chrome a prohlížečích postavených na Chromiu – Google to sám označuje za beta verzi. A to je v podstatě všechno co o tom víme. Používám 2FA všude kde se dá, doporučuji to kudy chodím, takže jsem to prostě musel zkusit.

Google už nabízí vlastní bezpečnostní klíč Titan. Stojí $50, musíte ho párovat (v případě Bluetooth verze) nebo připojovat do USB (a do USB-C navíc přes redukci) a je to prostě další věc, kterou musíte nosit. Jsem si celkem jist, že něco z toho od používání odradí naprostou většinu uživatelů. Ani výrobce YubiKey, podobných ověřovacích čudlů, nebyl z Titanu příliš nadšený.

Bezpečnostní klíče Google Titan (zdroj)

Google pro 2FA podporuje i tzv. výzvy (Google Prompt): po zadání jména a hesla vás telefon (Android nebo iOS s patřičnou aplikací) připojený k Internetu vyzve, abyste potvrdili, že jste to opravdu vy. Tohle je skvělé, jen potřebujete připojení k Internetu v telefonu (a dá se to použít jen pro Google).

Bezpečnostní klíč vestavěný v Androidu funguje podobně, ale nepotřebuje ani ten Internet. Google zatím neprozradil jak je to vyřešeno technicky, nicméně když v browseru vypnu podporu Bluetooth klíčů pro Web Authentication API, tak to stále funguje. Že by to používalo spíš U2F API (které je založené na FIDO U2F API)? Vypadá to tak, FIDO je zmíněno i na stránce s popisem bezpečnostních klíčů a Android 7+ je „FIDO2 Certified“ od února.

Snad je bezpečnostní klíč v mobilu postavený na standardech a takové ověřování bude brzy dostupné i pro jiné služby, systémy a aplikace. Moc se mi líbí, že se na tomhle poli něco děje a nezůstáváme jen u přepisování číslíček, která se každých 30 sekund mění. Čím víc to bude pro lidi jednoduchý, tím víc to budou používat a tím méně je nějaká uniklá hesla ohrozí. Bezpečnostní klíče jsou mnohem bezpečnější než SMS i opisování kódů, nemůžete je totiž zadat do jiné stránky – jsou odolné proti phishingu.

Takhle se to používá

Pokud si chcete používání bezpečnostního klíče vestavěného do Androidu nastavit, tak se můžete podívat do nápovědy Googlu nebo na moje screenshoty tu.

nastavení dvoufázového ověření si můžete zvolit, jaký „druhý krok“ chcete při přihlášení použít. Jednou z možností je i bezpečnostní klíč:

Přidat bezpečnostní klíč

Nelekněte se, že v popisu (zatím?) chybí klíč v telefonu

Poté si vyberete, jestli chcete používat externí USB nebo Bluetooth klíč, nebo ten vestavěný v mobilu, ve kterém jste přihlášení ke Google účtu:

Zvolte bezpečnostní klíč: Bluetooth, USB, vestavěný v zařízení

Po zvolení možnosti používání vestavěného klíče v mobilu se dozvíte, že musíte mít zapnutý Bluetooth v mobilu i počítači, že telefon musí umět určit polohu (a musí mít Android verze 7 a novější) a že to funguje zatím jen v Chrome (a také v prohlížečích postavených na Chromiu jako Brave, Opera a nový Edge):

Bluetooth i určování polohy musí být zapnuté, funguje pouze v Chrome, zatím

Kliknout na „Přidat“ a je hotovo, není potřeba párovat žádná Bluetooth zařízení, ani nic opisovat nebo potvrzovat v e-mailu:

Byl přidán bezpečnostní klíč

Po návratu do nastavení se dozvíte, že bezpečnostní klíč je výchozí (je vhodné mít nastavené i další „druhé kroky“ pro případ ztráty telefonu např.) a že se používá ten v telefonu:

Výchozí bezpečnostní klíč: Google Pixel

Přihlášení do Google

Po zadání jména a hesla vyskočí v Chrome okýnko, ve kterém vám radí se podívat na telefon, můžete také vybrat možnost externího USB klíče:

Zkontrolujte telefon, na telefon vám bylo odesláno oznámení

Na telefonu bude po odemčení zobrazen dotaz jestli se k uvedenému účtu pokoušíte přihlásit s možností „Ne, nejsem to já“ a „Ano“:

Pokoušíte se přihlásit? Ne/Ano

Když vyberete „Ano“, tak tím to končí a jste přihlášení. Pokud to budete provádět z nového zařízení nebo anonymního okna prohlížeče, tak vám nejspíš ještě přijde jeden dotaz na potvrzení zařízení. Na stránce Nedávno použitá zařízení se pak můžete podívat, kde všude jste k účtu přihlášení a případně některé stará již nepoužívaná zařízení odstranit. Doporučuji se tam občas podívat.

V případě, že se z nějakého důvodu potvrzení v telefonu nezobrazí, máte možnost použít další nastavený druhý krok.

Nastavte si 2FA

Fakt bych doporučil si dvoufázové ověření (2FA, 2SV, jak tomu budeme říkat je teď asi celkem jedno) nastavit a to i když používáte správce hesel (používáte, že jo?) – jako další úroveň ochrany. Pokud máte Android 7 a novější, tak tohle je krásná a vysoce použitelná možnost pro každého, snad se to rozšíří i do jiných systémů a aplikací. Google tvrdí, že potřebujete Windows 10, Chrome OS nebo macOS X, ale mě se „Zkontrolujte telefon“ zobrazilo i na Ubuntu 18.04. Na telefon nic nedorazilo, ale to může být tím, že Ubuntu běželo jako virtuální stroj.

Nastavte si také další „druhé kroky“ pro případ, že vám telefon kamsi odejde (nebo uplave). Jo a nezapomeňte tohle (nebo jinou pro všechny použitelnou metodu ověřování přihlášení) taky nastavit ve firmě, hned poté, co lidem rozdáte správce hesel.


Mohlo by vás také zajímat

Aktualizace článku

12. dubna 2019 Informace o FIDO a podpoře dalších browserů založených na Chromiu

Michal Špaček

Michal Špaček

Vyvíjím webové aplikace, zajímá mě jejich bezpečnost. Nebojím se o tom mluvit veřejně, hledám hranice tak, že je posouvám. Chci naučit webové vývojáře stavět bezpečnější a výkonnější weby a aplikace.

Veřejná školení

Zvu vás na následující školení, která pořádám a vedu:

Bezpečnost PHP aplikací
(prosinec 2019 Praha)

HTTPS pro vývojáře a správce
(prosinec 2019 Praha)