Vytvořte si bezpečné U2F USB: Průvodce pro svépomocí při vytváření ověřovacích klíčů

  • Klíče U2F/FIDO2 poskytují druhý fyzický faktor, který je díky kryptografii s veřejným klíčem vysoce odolný vůči phishingu.
  • Jako lokální klíč k zámku je možné použít běžný USB disk, i když nenahrazuje vyhrazený a certifikovaný U2F token.
  • Služby jako Google, GitHub nebo Dropbox umožňují registrovat zabezpečené USB klíče jako primární metodu dvoufázového ověřování.
  • Objevila se řada zařízení a DIY projektů zaměřených na téma klíčů, posílení soukromí, šifrování a zabezpečení sítě.

Vytvořte si bezpečné U2F USB: Průvodce pro svépomocí při vytváření ověřovacích klíčů

Pokud se obáváte o bezpečnost svých online účtů a rádi si hrajete s technologiemi, vytvoření vlastního bezpečného USB klíče může být zábavný i užitečný projekt. Dnes se dozvíte, jak pomocí nástrojů, jako jsou Rufus a Ventoy , proměnit jednoduchý USB disk v silný ověřovací klíč založený na U2F nebo ekvivalentních mechanismech . Nejprve si ujasníme, co přesně dělá tento typ klíče bezpečným a jaká omezení má možnost svépomocí ve srovnání s profesionálním hardwarem.

V tomto článku si probereme, co je bezpečnostní USB klíč a standard U2F/FIDO, jaké komerční alternativy existují, jak interně fungují a jaké jsou různé způsoby, jak pomocí softwaru ve Windows, Linuxu a dalších systémech proměnit běžný USB disk v klíč pro zámek, přihlášení nebo dvoufaktorové ověřování . Uvidíme také open-source projekty a některá velmi zajímavá paranoidní zařízení, která posunou vaši kybernetickou bezpečnost na další úroveň.

Co je to bezpečnostní klíč USB a proč je bezpečnější?

Když se přihlašujete do online služby, obvykle používáte jako první faktor svou e-mailovou adresu a heslo . Problém je v tom, že hesla se kradou, opakovaně používají a hádají snadněji, než bychom si přáli, proto se již léta doporučuje aktivovat dvoufázové ověřování (2FA) nebo vícefaktorové ověřování (MFA).

Tento druhý krok obvykle přichází ve formě kódu prostřednictvím SMS, automatického hovoru, ověřovací aplikace nebo push notifikace . Všechny tyto nástroje zlepšují zabezpečení, ale mnohé z nich selhaly v ochraně proti pokročilým phishingovým útokům, výměně SIM karet nebo falešným webovým stránkám, které zachycují vaše kódy v reálném čase.

Fyzické klíče U2F a FIDO2 posouvají tento systém o krok dále: jsou to malá zařízení s rozhraním USB, NFC nebo Bluetooth, která provedou kryptografickou kontrolu na serveru. Místo zadávání kódu připojíte klíč, klepnete na tlačítko a prohlížeč bezpečně dokončí druhý krok. Nemůžete nic přepsat a žádný kód vám nikdo nemůže ukrást tím, že vás oklame pomocí falešné webové stránky.

V případě U2F standard vytvořený aliancí FIDO (v čele s Googlem a Yubico) definuje, jak se generuje pár klíčů, jak se klíč registruje u každé služby a jak se provádí ověřování pomocí kryptografie s veřejným klíčem . Soukromý klíč nikdy neopouští zařízení; server pouze ukládá veřejný klíč a ověřuje podpisy, což výrazně snižuje plochu pro útok.

Dobře navržené klíče navíc generují pro každou službu odlišné páry klíčů , takže poskytovatel nemůže použít váš veřejný klíč k vašemu sledování napříč webovými stránkami nebo ke korelaci vašich přihlašovacích údajů.

typy USB klíčů U2F

Typy bezpečnostních klíčů: komerční vs. kutilské

Na trhu najdete dvě hlavní rodiny zařízení: na jedné straně komerčně certifikované klíče U2F/FIDO2 a na druhé straně domácí nebo polo-DIY řešení, která převádějí USB disky, mikrokontroléry nebo dokonce Raspberry Pi na bezpečnostní klíče nebo zamykací zařízení.

Mezi komerčně dostupné modely patří mezi významné příklady YubiKey, rodina Titan od Googlu, SoloKey, NitroKey, OnlyKey, LibremKey, Secalot a Thetis . Mnohé z nich podporují více protokolů současně: U2F/FIDO2 pro webové přihlášení, OTP, čipové karty OpenPGP, správu klíčů GPG, přihlášení SSH a další.

Tyto flash disky se liší také typem připojení: existují verze s klasickým USB-A, USB-C, nano formáty, které sotva vyčnívají z portu, NFC pro mobilní zařízení a dokonce i varianty s Bluetooth . Kompatibilita obvykle zahrnuje Windows, macOS a Linux a fungují s prohlížeči, které podporují FIDO U2F/FIDO2, jako jsou Chrome, Edge, Firefox a nejnovější prohlížeče Safari.

Na straně svépomoci existuje mnoho různých přístupů. Některé zahrnují použití standardního USB disku se softwarem, který zamyká nebo odemyká počítač (například USB Raptor, Predator, KeyLock nebo Logon Key), jiné promění mikrokontrolér ESP8266 nebo Raspberry Pi Zero ve skutečný U2F token, nebo dokonce sdílejí zařízení pomocí VirtualHere , a další vám umožňují vytvářet si správce hesel nebo kryptoměnové peněženky na vašem vlastním hardwaru.

Je důležité si uvědomit, že vlastní bezpečnostní klíč založený výhradně na softwaru není totéž co dedikovaný token U2F . První závisí na konfiguraci vašeho systému, pevném disku a USB disku, zatímco druhý obsahuje bezpečný čip, který chrání soukromý klíč i před malwarem nebo fyzickým přístupem.

Jak U2F funguje interně: veřejné klíče a výzvy

Jádrem U2F a FIDO2 je kryptografie s veřejným klíčem . Když zaregistrujete klíč u Googlu, Dropboxu, GitHubu, Facebooku nebo jiné kompatibilní služby, zařízení interně vygeneruje pro daný web jedinečný pár veřejného a soukromého klíče.

Soukromý klíč je zapečetěn uvnitř klíče a neexistuje způsob, jak ho extrahovat bez fyzického poškození zařízení, což je záměrně navrženo tak, aby to bylo nemožné. Server ukládá veřejný klíč, spojený s vaším účtem, a identifikátor klíče.

Po přihlášení, po zadání správného uživatelského jména a hesla, server odešle prohlížeči výzvu, která ji přepošle na připojený klíč. Tento klíč podepíše výzvu soukromým klíčem odpovídajícím doméně a vrátí podpis. Server pomocí veřejného klíče ověří, zda se vše shoduje, a dokončí ověření.

Pokud se útočník pokusí zachycenou komunikaci zopakovat, je to zbytečné: výzva je pokaždé jedinečná. Pokud se útočník pokusí zaregistrovat váš klíč na falešné doméně, samotná specifikace zabrání opětovnému použití podpisu na jiném webu, čímž se minimalizuje možnost phishingu, a to i v případě, že vás někdo oklame a navštíví URL adresu, která vypadá autenticky.

Další důležitou výhodou je, že klíč nikdy neodhalí váš soukromý klíč ani opakovaně použitelné tajemství . Poskytuje pouze specifické podpisy pro každou výzvu, takže ani napadený server by nemohl získat materiál potřebný k zosobnění vašeho klíče v jiných službách.

Projekt s USB U2F pro vlastní potřebu

Vytvoření pseudoklíče s běžným USB diskem (softwarový přístup)

Pokud hledáte rychlý způsob, jak zamknout a odemknout počítač pomocí standardního USB disku , můžete použít software, který promění USB disk v jakýsi lokální klíč: když je USB disk připojen, počítač funguje; pokud jej odpojíte, zamkne se.

Ve Windows je jedním z nejoblíbenějších programů USB Raptor , open-source projekt, který šifruje soubor „k3y“ na vašem USB disku a sleduje jeho přítomnost. Pokud při aktivaci systému soubor není k dispozici, relace se automaticky uzamkne.

Základní postup s USB Raptorem zahrnuje stažení spustitelného souboru, jeho extrahování, připojení USB disku, který budete používat jako klíč, a spuštění souboru USB Raptor.exe pro vygenerování hesla a souboru k3y . Poté vyberte možnost aktivace systému a nakonfigurujte jej tak, aby se spouštěl se systémem Windows, takže zámek bude účinný od okamžiku přihlášení.

Programy jako Predator nebo KeyLock fungují na podobném principu: propojí jedinečný identifikátor USB s vaší relací a pokud zařízení zmizí ze systému, aktivují zámek. To je výhodné pro osobní stolní počítače nebo notebooky a lze to doplnit zkratkami pro rychlé uzamčení systému Windows , i když je důležité si uvědomit, že se nejedná o druhý šifrovací faktor pro webové služby, ale spíše o lokální ochranu.

macOS nabízí řešení jako Logon Key nebo USB Lock, která umožňují používat USB disk jako přihlašovací klíč nebo klíč pro zamykání obrazovky . Princip je opět stejný: fyzická přítomnost USB disku v konkrétním portu se stává nezbytnou podmínkou pro udržení aktivní relace.

Přejděte na skutečný U2F v Linuxu s YubiKey nebo jinými klíči

Pokud se chcete pustit do práce a používat U2F jako druhý faktor pro přihlášení k systému (TTY, sudo, SSH, GDM atd.) , v Linuxu se můžete spolehnout na modul U2F PAM, který je velmi oblíbený u klíčů jako YubiKey 4 a novějších modelů, stejně jako u dalších tokenů kompatibilních se specifikací FIDO Alliance.

Typický postup zahrnuje instalaci odpovídajícího balíčku (například libpam-u2f z repozitářů ) a následnou registraci klíčů v konfiguračním souboru, který PAM použije k přidružení lokálních účtů ke konkrétním fyzickým zařízením.

S nástroji jako pamu2fcfg Asociace vytvoříte vy: vložíte klíč, provedete příkaz, dotknete se zařízení, když bliká, a přesměrujete výstup do souboru. /etc/u2f_keys. Je vhodné zaregistrujte alespoň dva bezpečnostní klíče, jeden hlavní a jeden záložní, pro případ, že byste ten první ztratili nebo poškodili.

Dalším krokem je úprava souborů PAM. Můžete například začít použitím U2F pouze na sudo, přidáním řádku jako auth required pam_u2f.so authfile=/etc/u2f_keys pod zahrnutím common-authTakto otestujete, zda vše funguje: bez vloženého klíče příkaz sudo po zadání hesla selže; s ním vás požádá o dotyk zařízení a pokud je vše v pořádku, provede příkaz.

Po ověření můžete stejnou konfiguraci přenést do common-auth nebo jiné PAM služby, aby Veškeré ověřování systému vyžaduje klíč. Možnosti jako nouserok Umožňují účtům bez přidruženého klíče se stále přihlašovat pouze s heslem, což je užitečné, abyste se nezablokovali, pokud zapomenete heslo nakonfigurovat pro určité uživatele.

Kompatibilita klíče U2F s online službami a prohlížeči

Praktická užitečnost těchto klíčů se výrazně zvyšuje, když je integrujete s online službami, které podporují U2F nebo FIDO2 . Dnes vám Google, GitHub, Dropbox, Facebook, Twitter, Nextcloud a mnoho dalších platforem umožňují zaregistrovat fyzický klíč jako preferovanou metodu dvoufázového ověřování.

V oblasti prohlížečů je podpora poměrně rozsáhlá. Chrome a další prohlížeče založené na Chromiu již dlouho nabízejí nativní podporu pro FIDO U2F/FIDO2 . Firefox také zahrnul podporu, nejprve prostřednictvím doplňku a později integrovanou, zatímco Safari postupně dohání v novějších verzích macOS.

Na stolních operačních systémech fungují klávesy ve Windows 10 a novějších verzích, moderních systémech macOS a většině linuxových distribucí , za předpokladu, že prohlížeč standardu rozumí. Na mobilních zařízeních můžete používat klíče NFC nebo USB-C s kompatibilními prohlížeči a aplikacemi, které se integrují s rozhraním WebAuthn API.

Každý výrobce uvádí matici kompatibility ve specifikacích produktu, protože ne všechny modely podporují stejné protokoly nebo platformy . Před nákupem se vyplatí ověřit, co chcete chránit (účty Google, GitHub, přihlášení do Windows, SSH, šifrovaný e-mail atd.) a podle toho vybrat zařízení.

Praktický příklad: registrace klíče FIDO U2F ve vašem účtu Google

Nastavení bezpečnostního klíče u Googlu je rychlý proces, který umožňuje, aby se váš USB disk stal druhým primárním ověřovacím faktorem pro Gmail a další související služby . Postup je s drobnými obměnami podobný i u jiných poskytovatelů, kteří implementují stejnou technologii.

Prvním krokem je zakoupení klíče kompatibilního s U2F nebo FIDO2. Jakmile jej budete mít, přejděte do svého účtu Google > Zabezpečení > Dvoufázové ověření . Pokud jste ho ještě nepovolili, systém vás požádá o nastavení počáteční metody (například SMS nebo ověřovací aplikace).

Jakmile povolíte 2FA, najdete na stejné obrazovce možnost přidat bezpečnostní klíč . Klepněte na něj, postupujte podle pokynů průvodce, po zobrazení výzvy klíč připojte a pokud má váš model tlačítko, stiskněte ho, když kontrolka bliká.

U klíčů bez fyzického tlačítka může proces zahrnovat vyjmutí a opětovné vložení zařízení k dokončení registrace. Po dokončení se klíč zobrazí jako další metoda ověření a při dalších přihlášeních vás Google vyzve k jeho připojení pro dokončení přístupu.

Pokud v jakémkoli okamžiku již nebudete chtít daný klíč s účtem používat, můžete se vrátit k dvoufázovému ověřování a pomocí ikony úprav odebrat přidružený klíč . Je vhodné mít vždy povolenou další možnost obnovení (další klíč, telefon, záložní kódy), abyste se k účtu nevymkli.

Výhody a nevýhody ve srovnání s jinými metodami 2FA

V reálném světě se setkáte s několika typy dvoufaktorového ověřování: SMS a hovory, ověřovací aplikace, push notifikace a fyzické klíče . Každý z nich má své výhody a nevýhody a není neobvyklé je kombinovat pro různé scénáře.

SMS a hovory se velmi snadno používají a nevyžadují žádnou instalaci, ale dnes jsou považovány za jedny z nejslabších metod: jsou zranitelné vůči výměně SIM karty, přesměrování linky a phishingovým útokům . Útočník vás může obelstít a přimět k zadání kódu na falešné webové stránce a tím získat přístup k vašemu účtu.

Aplikace jako Google Authenticator nebo Authy generují TOTP kódy offline a jsou robustnější než SMS, ale stále jsou zranitelné vůči phishingu: pokud zadáte kód na škodlivé webové stránce, útočník jej může okamžitě znovu použít.

Push notifikace zlepšují uživatelský zážitek, protože stačí notifikaci přijmout nebo odmítnout pouze na mobilu , ale nejsou bez rizik: pokud je přijmete bez kontroly nebo pokud se útočníkovi podaří interakci napodobit, mohl by tuto vrstvu obejít.

Klíče U2F/FIDO2 naopak nabízejí velmi vysokou ochranu proti phishingu, protože zařízení podepisuje specifické výzvy pro správnou doménu a prohlížeč. Nezadáváte kódy, nepíšete nic opakovaně použitelného a útočník klíč fyzicky potřebuje k pokračování.

Co se stane, když ztratíte USB disk a jak se na to připravit

Jednou z běžných obav při používání fyzických bezpečnostních klíčů je: „Co se stane, když ho ztratím?“ Odpověď závisí na vaší připravenosti, ale všichni hlavní poskytovatelé online služeb zahrnují mechanismy obnovy a záložní klíče.

Na Googlu a podobných platformách můžete ke stejnému účtu přiřadit více klíčů. Důrazně se doporučuje zaregistrovat si druhý klíč jako zálohu a uložit jej na bezpečném místě (trezor, zapečetěná obálka atd.) nebo jej zašifrovat pomocí VeraCryptu . Tímto způsobem budete mít v případě, že se vám klíč na klíčence rozbije, vždy náhradní.

Kromě klíčů si můžete nakonfigurovat alternativní e-maily pro obnovení, záložní telefonní čísla a statické kódy , které vám umožní znovu získat přístup v případě nouze. Proces je obvykle pomalejší a zahrnuje další kontroly, a to právě proto, aby se zabránilo tomu, aby někdo obešel vaše zabezpečení jednoduchým telefonátem.

Pokud jste ztratili klíč, ale stále máte přístup k účtu jinou metodou, nejlepším postupem je co nejdříve přejít do nastavení zabezpečení a ztracené zařízení zrušit nebo odstranit . Tímto způsobem, i když ho někdo najde, nebude ho moci zaregistrovat ani používat vaším jménem.

Další zařízení a DIY projekty pro zvýšení vaší bezpečnosti

Pokud vás zajímá fyzická bezpečnost a soukromí, existuje celý ekosystém gadgetů a DIY projektů týkajících se U2F klíčů určených k ochraně vašeho digitálního života . Mnohé z nich jsou levné, některé si můžete postavit doma s jednoduchým hardwarem a jiné vám umožňují vytvořit Live USB s Tails pro prohlížení internetu bez sledování.

Jedním z nejužitečnějších příslušenství na cestách je blokátor dat z USB . Připojuje se mezi nabíječku a kabel telefonu, čímž deaktivuje přenos dat a umožňuje pouze elektrické nabíjení. Tím se zabrání útokům, které zneužívají veřejné USB porty k vkládání malwaru nebo krádeži informací.

Existují také zařízení jako Faradayovy sáčky, karty s RFID blokováním, kryty webových kamer, blokátory mikrofonů a filtry soukromí pro obrazovky . Všechna jsou založena na jednoduché myšlence: pokud nechcete být špehováni, přerušte fyzické cesty pro zadávání dat nebo pozorování.

V oblasti úložiště můžete použít USB disky a externí pevné disky s hardwarovým šifrováním , z nichž mnohé mají fyzickou klávesnici pro zadávání PINu nebo certifikace, jako je FIPS 140-2. A pokud dáváte přednost levnějším řešením, VeraCrypt vám umožňuje vytvářet šifrované svazky na téměř jakémkoli komerčně dostupném USB flash disku.

Pro síťovou stránku je k dispozici arzenál pokročilých firewallů a routerů (Firewalla, BitdefenderBox, InvizBox, Turris Omnia, Anonabox…), stejně jako DIY projekty s Raspberry Pi, jako je Pi-hole pro blokování reklamy a trackerů na úrovni sítě, PiVPN pro nastavení vlastní domácí VPN nebo OnionPi pro směrování provozu přes Tor.

U2F klíče, kryptoměnové peněženky a specializovaný hardware

Stejný koncept uchovávání soukromých klíčů mimo dosah potenciálně škodlivého softwaru se skrývá i za hardwarovými kryptoměnovými peněženkami, jako jsou Trezor, Ledger a Prokey . Tato zařízení ukládají klíče v izolovaném prostředí a podepisují transakce, aniž by kdy odhalila tajemství hostitelskému počítači nebo mobilnímu zařízení.

Někteří výrobci šli ještě o krok dál a nabízejí multifunkční zařízení, která kombinují U2F autentizátor, správce hesel a krypto peněženku do jednoho klíče (například QUANTUM, Secalot, OnlyKey nebo některé modely NitroKey). V těchto případech je vhodné pečlivě zkontrolovat, zda je hardware a firmware open source nebo alespoň auditovaný.

Pokud si obzvláště hlídáte své soukromí, můžete si dokonce vytvořit domácí řešení, jako jsou například peněženky typu „cold storage“ na kovových deskách, hardwarové generátory náhodných čísel (TrueRNG, FST-01) nebo kompletní bitcoinové uzly na Raspberry Pi v kombinaci s hardwarovými peněženkami.

Mimo kryptosvět najdete zařízení jako samodestruktivní počítače, jako je ORWL, odolné telefony jako Librem 5 a terminály určené pro šifrovanou komunikaci, které demonstrují, jak daleko lze posunout fyzické a logické zabezpečení zařízení . Pro běžného uživatele nejsou nezbytné, ale jasně ilustrují škálu možností.

Po tom všem je převládající myšlenka jasná: kombinace dobré hygieny hesel s bezpečnostními klíči U2F nebo FIDO2, dobře nakonfigurovanými systémy dvoufaktorového ověřování a několika klíčovými fyzickými zařízeními představuje obrovský rozdíl proti současným útokům a zahájení DIY projektu s USB diskem, Raspberry Pi nebo jednoduchým blokovačem dat je velmi praktický způsob, jak se učit a zároveň skutečně posílit svou digitální ochranu.

Jak používat VeraCrypt pro šifrování souborů
Související článek:
Šifrování souborů a kontejnerů pomocí VeraCryptu

Přidat jako preferovaný zdroj v Googlu