Browsed by
Tag: dvoufaktor

Bezpečnost účtů – část první

Bezpečnost účtů – část první

Už několik týdnů, možná spíš měsíců, řeším zabezpečení svých účtů. A i když jsem předpokládal, že v dnešní době všudepřítomné osvěty o bezpečnosti to bude hračka, tak bohužel ani omylem. Navíc, vše musí být tak jednoduché, aby řešení používala i má žena. Jinak by celá bezpečnost byla ta tam.  A jako třešnička na dortu, celé zabezpečení musí být udělané tak, aby se v případě živelné katastofy, nebo kdyby se mi nedejbože něco stalo, dalo stále ke všem účtům a penězům (a kryptoměn) dále dostat.

Dnešní stav bezpečnosti je slušně řečeno smutný. Na jedné straně tady máme USB tokeny jako je třeba Yubikey, Trezor a další a na druhé straně pak poskytovatele služeb, kde je vrchol zabezpečení šestimístné heslo. Do toho vše zhoršuje ještě fakt, že se většina uživatelů potřebuje přihlašovat na více zařízeních s více různými operačními systémy. Pak už je to úplná katastrofa.

A tak jsem opravdu dlouhou dobu řešil, jak zabezpečit své pracovní PC postavené na Widnows, přitom mít možnost pracovat občas i na OSX a do toho mít přístup k datům i z Android telefonu. Jakmile totiž chce člověk opravdu dobré zabezpečení, je to problém.

Původně jsem používal kombinaci Lastpass a Authy. V Lastpass jsem měl všechna hesla a měl je chráněné pomocí 2FA TOTP (dvoufázová autentizace založená na časových kódech). Tyto 2FA kódy jsem generoval původně přes Google Authenticator, později pak přes Authy.

Celé řešení má ale hned několik problémů. Zaprvé, Lastpassu se prostě nedá věřit na 100%. Pořád jsou data uložena někde v cloudu (i když šifrovaná) a pořád se dá k datům v prohlížeči teoreticky dostat. Pár průšvihů už Lastpass mělo a hlavně, data jsou v určitou chvíli rozkódovaná v pluginu prohlížeče, kde je může vyluxovat někdo dalši.

A to stejné platí o 2FA kódech v Authy. Ačkoli je authy zaheslované masterpasswordem, tak jsem používal cloudsync, abych mohl 2FA kódy používat jak na pracovním PC, tak notebook a mobilu. A všude tak hrozilo, že se k těmto kódům nějaká další cizí aplikace dostane (a bohužel to nelze vyloučit nikdy).

Moje původní představa, jak z toho ven, byla, že si pořídím HW klíč a vše už bude jenom krásné. Bohužel, záhy člověk zjistí, že podpora HW klíču je opravdu tristní. Velcí hráči ala Google, Microsoft, Dropbox a další už ji mají, ale 95% (možná i 99%) ostatních webů vůbec. Když už nějaké zabezpečení, tak v lepším případě časové 2FA TOTP kódy, v horším případě potvrzení přes email, v nejhorším případě nic.

A tak jsem začal vymýšlet, co by se s tím dalo v rámci možností udělat, aby to splňovalo bezpečnost, ale zároveň i komfort použití. Jako první je potřeba si definovat cíl zabezpečení. Cílem není mít 100% bezpečnost u všech služeb. Cílem je mít 100% bezpečné kritické věci a u těch ostatních se spokojit s 99%.

Za kritickou službu číslo jedna považuju email. Konkrétně Gmail a GoogleApps email. Pokud by se mi někdo dostal do emailu, je konec. Přes něj už se dokáže dostat skoro všude, vynutit si změnu hesla u ostatních služeb atd.

Mezi další kritické služby samozřejmě patří Lastpass, kde jsou všechna hesla, dále pak Crypto burzy, Trezor na kryptoměny, … zkrátka takové služby, kde fakt nechcete, aby byl někdo cizí.

A zde je zatím to nejlepší, co jsem vymyslel –  HW Key Yubikey, KeePass, Lastpass, Yubico Authenticator a na kryptoměny Trezor. Jak jsem psal, není to úplně triviální. Bohužel je dnes potřeba několika aplikací a zařízení, aby byla ochrana ideální.

Nejlepší na synchronizaci hesel je stále Lastpass. Potřebuji přístup k heslům jak na Windows, tak OSX a Androidu a to ve více různých prohlížečích. Jelikož ale Lastpassu úplně nevěřím, všechny kritické služby krom hesla mají nějakou další formu 2FA. Tím pádem, pokud mi Lastpass hesla vyluxují, dostanou se sice třeba na vodniky, ale do kritických služeb nikoli.

Na 2FA kódy jsem ale Authy zavrhl. Ne, že by s ním byl problém, ale je to služba třetí strany, které úplně nevěřím. A tak jsem řešil, kam s 2FA. Nakonec se mi povedlo zjistit, že se 2FA kódy dají generovat pomocí určitých pluginů i v aplikace Keepass.

Samotné zabezpečení KeePassu je také kapitola sama pro sebe. Opět, díky pluginům, lze dosáhnout velmi kvalitního zabezpečení. A to díky Challenge-response protokolu a tajnému klíči, který je nahraný do Yubikey. O tom později.

Bohužel, Keepass je jen pro Windows (ten původní Keepass). Existuje několik alternativ KeePassu, které umí fungovat i na OSX či Linuxu. Jenže tam už nemáte tu jistotu bezpečí, navíc, nepodporují pluginy. Například KeePassX jich má pár implementovaných v sobě, ale není to úplně ono.

A pak tu máme android. Rozhodně jsem nechtěl mít generátor 2FA TOTP klíčů na Androidu nechráněný. Takže nějaká read-only databáze KeePassu nepřipadala v úvahu. Stejně tak GoogleAuthenticator neumožňuje žádné zabezpečení. Naštěstí jsem narazil na Yubico Authenticator for Android, který umí zadat klíče do Androidu, ale jsou přitom šifrované konkrétním Yubikey klíčem.

A to je hrubý nástin toho, jaké aplikace jsem se rozhodl použít. Bohužel, jen o aplikacích to není. Je potřeba do Keepasu hodně věcí doinstalovat a nastavit a nebo vymyslet workflow tak, aby ho zvládla používat i žena. Například přenos 2FA TOTP  klíčů mezi Android a Windows, způsob generování 2FA klíčů pomocí Keepassu, zůsob zálohování Yubikey, jelikož jeden klíč je málo, způsob zabezpečení Keepassu, ….

Je toho opravdu hodně. A aby toho nebylo málo, je tam ještě ten jeden požadavek. Toto všechno se musí dát nějak jednoduše popsat tak, aby to mohlo být uloženo v bezpečnostní schránce v bance, aby kdyby se něco stalo, tak se šlo stále ke všemu dostat. Jak zajistit, že se nebude muset obsah schránky neustále aktualizovat. Jak vyřešit, že některé věci musí být jen fyzicky na HW klíči, atd. kryptoměnám a dalším elektronickým statkům by se totiž v případě mého zmizení či demence už nemusel nikdo další k majetku dostat. A proto jsem začal dávat dohromady rovnou i recovery plán.

A o tom budou další články. Uvidím, jak na tom budu s časem, protože tyhle články bohužel nejsou na pár minut. Pokusím se postupně sepsat návod na všechny oblasti zabezpečení, ukázat jak si vše nastavit a rozběhat. A to tak, aby Vaše emaily, účty i Bitcoiny byly v bezpečí :).