Uživatelská autentikace a identita uživatele

Honza Bednarik
EDTECH KISK
6 min readFeb 1, 2020

--

Navzdory tomu, že se o internetu často mluví jako o anonymním prostoru pro vyjadřování názorů, by si ho asi málokdo z nás dnes dokázal představit bez uživatelských jmen a hesel. Mechanizmus uživatelské autentizace slouží, alespoň většinou, ke spárování člověka z masa a kostí s jeho elektronickou identitou, rozpoznávanou tou službou, ke které se právě přihlašuje. Pokud se ale nad celým procesem pozorně zamyslíme, můžeme dojít k tomu že běžný model s heslem a přihlašovacím jménem nemusí být v mnohých případech zcela adekvátní.

I opravdu silné heslo, které by podle dnešních standardů trvalo prolomit miliony let, ve skutečnosti možná podlehne už v příštích několika desítkách let vlivem neustálého technologického vývoje. Příkladem tohoto může být například i soubor z roku 1980 se zahashovanýmí (pozměněnými asymetrickým šifrovacím algoritmem) hesly zakladatelů systému BSD, jehož obsah byl plně prolomen již minulý rok, méně než čtyřiceti letech, a prolomení nejsložitějšího hesla trvalo pouhé čtyři dny. Ani fakt, že některé dnes používané funkce pro šifrování hesel dokážou v udržovaných systémech růst výkonu vyrovnávat, bohužel nic nemění na tom, že heslo je ve své podstatě jen nahodilou kombinací běžných znaků a jako takové je vždy teoreticky uhodnutelné. I když zvláště u dlouhých řetězců s velkou rozmanitostí použitých znaků je to reálně dost nepravděpodobné.

Fakt že žádný lepší mechanismus ještě nikdo nevymyslel je o to víc frustrující v situaci, kdy se stále větší část našich interakcí s jinými lidmi, obchody, bankami, ale i úřady, přesouvá online. Proto mnozí poskytovatelé služeb zahrnují do svého autentikačního procesu dodatečné faktory, případně ověření identity uživatelů přesouvají na někoho úplně jiného.

Co je to více-faktorové ověřování a jak to funguje

Velká část lidí si pod pojmy více-faktorové ověřování (MFA) nebo dvou-faktorové ověřování (2FA) představí opisování číselných kódů z SMS, nebo aplikace na mobilním telefonu, což jsou ovšem pouze specifické případy použití více-faktorového ověřování. Obecně by se dalo tvrdit že používané faktory lze rozdělit do tří kategorií: něco co uživatel zná, například heslo; věc ke které má uživatel přístup, zde se často jedná o soubor s certifikátem, nebo právě i mobilní telefon; a v neposlední řadě také určitá charakteristika uživatele, příkladem tohoto jsou biometrické údaje, které v posledních několika letech zažívají velký boom, a to hlavně u mobilních zařízení jako jsou laptopy a mobilní telefony. Za více-faktorové ověřování pak můžeme považovat autentikační mechanizmus, který používá libovolnou kombinaci několika těchto faktorů.

Kombinací dvou faktorů, rozpoznaného mobilního telefonu a otisku prstu se tedy můžeme dostat k autentikační metodě, která vůbec nevyžaduje použití hesla a která je zároveň dostatečně bezpečná například i pro přihlašování k online bankovnictví. Zajímavý přístup k více-faktorovému ověřování zaujímá také například firma Microsoft ve svém operačním systému Windows 10. Při přihlašování do systému Windows pomocí online účtu, je totiž samotné zařízení bráno jako jeden z autentikačních faktorů. Je tedy možná i taková implementace, při které si uživatel použití dalšího autentikačního faktoru nemusí ani všimnout.

Jak jsem ale zmínil víše, pro velkou část uživatelů je více-faktorové ověřování stále spojeno s opisováním kódů z SMS, je ale třeba zmínit že výběr způsobu ověřování je často spíše otázkou poskytovatele služby, tedy ověřujícího a nikoliv ověřovaného. Alespoň podle statistických dat ze spojených státu, je zde pozorovatelný trend nástupu autentikačních aplikací na generování jednorázových kódu, a stále ještě relativně nová ale už dost rozšířená možnost ověření přes push notifikace. Což je důležité, jelikož ověřování skrze SMS je napadnutelné skrze SIM karty v útocích jako jsou například SIM Splitting nebo SIMjacking, a tedy ne tak bezpečné, jak by mohlo zdát.

Delegace, specializace… centralizace?

Je snad už dost zřejmé, že mechanizmy, které jsou skryté za uživatelskou autentikací, něčím, co se na první pohled jeví jako relativně jednoduchá záležitost, jsou poměrně složité, především v důsledku neustálého přetahování se mezi provozovateli online služeb a různými zlovolnými živly. Není proto divu, že někoho napadlo vyvinout nástroj, pro delegování služby ověření identity uživatele. V důsledku toho se na mnohých webových stránkách objevila možnost přihlášení pomocí učtu na Facebooku nebo na Googlu, dávající této stránce limitovaný přístup k danému účtu.

Delegování autentikace je velkým zjednodušením pro stránku, ale především také pro uživatele. Autentikační autorita by měla být díky větší specializaci, a/nebo díky tomu že se většinou jedná o opravdové technologické giganty, často schopná rychlejší reakce na nová rizika a plynulejší implementace nových technologii. Na straně uživatele je pak největším pozitivem to, že pro novou službu nemusí vytvářet novou identitu. Tím se redukuje počet přihlašovacích údajů, které uživatel potřebuje spravovat a v případě některých také počet identit s totožnými přihlašovacími údaji. Čímž mohou klesat rizika unesení nebo zneužití identity třetí stranou, vlivem jejího neadekvátního zabezpečení.

Delegování uživatelské autentikace s sebou ale bohužel nese svá vlastní rizika, která mohou pro mnohé převážit jejich benefity. Provázání jednotlivých služeb jednou společnou identitou může zjednodušit sklízení analytických dat o chování uživatele, což by mnozí vnímali jako výrazné nebezpečí pro jejich soukromí. Platnou obavou je také to, že v případě že se útočník zmocní identity u poskytovatele, ke kterému jsou autentikační služby delegovány, (například Google) získá tím i přístup ke všem navázaným službám. Je ale více než pravděpodobné že Google nebo Facebook budou proti útokům odolnější než průměrná internetová fóra, deníky, a jiné stránky které jejich autentikaci běžně využívají. Obdobná situace nastává také při ztrátě přístupu k hlavní identitě, v takovém případě uživatel z pochopitelných důvodů přijde i o přístup k navázaným službám.

Česká pošta, stát, banky

Dosti specifickým tématem je pak uživatelská autentikace občana a elektronická komunikace mezi občanem a státem vůbec. Pokud budeme autentikaci uživatele rozumět jako mechanizmu pro spárování fyzické (někdy i právnické) osoby s institucí nebo službou v elektronické komunikaci, pak je třeba zmínit i kvalifikované podpisové certifikáty vydávané (nejen) českou poštou. Ty mají ale natolik úzké možnosti využití, že pro velkou část občanů, kteří se nezabývají podnikáním nedávají smysl. Dosti problematické jsou i další aktuálně dostupné formy komunikace se státem. Datové schránky jsou zatíženy nepříjemnými pravidly a pro použití elektronické občanky je potřeba čipová čtečka.

Stát, zdá se není schopný, vytvořit řešení, které by bylo komfortní pro většinu občanu/uživatelů. Což je, vzhledem k tomu že jedinou alternativou k elektronické komunikaci s úřadem je často fyzická návštěva včetně vystávání ve frontě, dost znepokojující. Toto se může změnit od ledna 2021 (doufejme), kdy by měla byt (doufejme) spuštěna služba bankovní identity. Služba, tak jak je popisována, by mohla v mnohém připomínat právě už zmiňované přihlašování pomocí Googlu nebo Facebooku, akorát místo technologických gigantu bude zprostředkována giganty bankovními s tím, že by měla fungovat jako dobrovolný opt-in jak ze strany banky, tak ze strany občana. Jen čas ukáže, zda s sebou ponese i stejná rizika a nevýhody jako obdobné, čistě soukromé, systémy, které tolik připomíná.

Důvěra

Myslím si, že by se dalo celkem úspěšně argumentovat, že uživatelská autentikace je založená nejen na pokročilých kryptografických technologiích, ale také na důvěře mezi jednotlivými zúčastněnými subjekty. Přestože existují projekty jako například Solid, které usilují o vytvoření technologického řešení pro navrácení kontroly nad osobními daty zpět uživatelům, jsem k nim mírně skeptický. Bohužel to vypadá tak, že si přinejmenším v dohledné době budeme muset nadále vybírat, komu chceme věřit.

Zdroje:

How it works. In: Solid.inrupt.com [online]. [cit. 2020–02–01]. Dostupné z: https://solid.inrupt.com/how-it-works

Bankovni-identita.cz [online]. 2019 [cit. 2020–01–31]. Dostupné z: https://bankovni-identita.cz/

MONIOVÁ, Eva. Hesla do banky si dobře zapamatujte. Ani nevíte, jak se vám budou hodit. In: Seznamzpravy.cz [online]. 15. 12. 2019 7:17 [cit. 2020–01–31]. Dostupné z: https://www.seznamzpravy.cz/clanek/hesla-do-banky-si-dobre-zapamatujte-budou-se-vam-hodit-84916

Back to basics: Multi-factor authentication (MFA). In: Nist.gov [online]. June 28, 2016, Updated December 9, 2019 [cit. 2020–01–31]. Dostupné z: https://www.nist.gov/itl/applied-cybersecurity/tig/back-basics-multi-factor-authentication

HAMMER-LAHAV, Eran. Introduction. In: Oauth.net [online]. September 05, 2007 [cit. 2020–01–31]. Dostupné z: https://oauth.net/about/introduction/

CLEMENT, J. Share of internet users in the United States who use two-factor authentication in 2010 and 2017, by method. In: Statista.com [online]. Dec 12, 2017 [cit. 2020–01–31]. Dostupné z: https://www.statista.com/statistics/789942/us-use-of-two-factor-authentication/

PROVOS, Niels a David MAZIERES. A Future-Adaptable Password Scheme. [online]. 2001 [cit. 2020–1–31]. Dostupné z: https://www.researchgate.net/publication/2519476_A_Future-Adaptable_Password_Scheme

KUMAR, Mohit. UNIX Co-Founder Ken Thompson’s BSD Password Has Finally Been Cracked. In: Thehackernews.com [online]. October 11, 2019 [cit. 2020–01–31]. Dostupné z: https://thehackernews.com/2019/10/unix-bsd-password-cracked.html

Photo by Gilles Lambert on Unsplash

--

--