Autentizace: Jednorázová hesla – PINsafe

Existuje mnoho způsobů, jak generovat jednorázová hesla (One Time Password, zkr. OTP), dnes se podíváme na řešení nazvané PINsafe.

Princip na jakém toto řešení funguje, je poměrně jednoduchý. Vychází se z předpokladu, že každý uživatel zná svůj PIN, který představuje sdílené tajemství (shared secret) mezi uživatelem a systémem. Vlastní autentizace pak probíhá tak, že systém vygeneruje náhodné 10místné číslo, uživatel si vybaví svůj PIN, a do systému pak zadá pouze ty číslice z onoho 10místného čísla, které se nacházejí na pozicích odpovídajících jednotlivým číslicím PINu.

Vzhledem k tomu, že uživatel PIN nikam nezadává, neboť ten slouží pouze jako klíč k vytvoření OTC (One Time Code, jak Swivel své jednorázové heslo nazývá) z náhodně vygenerovaného 10místného čísla, lze toto řešení považovat na první pohled za poměrně bezpečné. Stejně jako vždy ale záleží nejen na návrhu, ale i na implementaci. Pokud se ono náhodné 10místné číslo jednou zobrazí na obrazovce, a je jedno zda jako text nebo jako obrázek, může být malwarem zachyceno stejně jako vše, co uživatel zadal. Pokud útočník zachytí výzvu i odpověď uživatele, může snadno zjistit, jaké hodnoty PIN uživatele nabývá.

Řešením tedy logicky je nezobrazovat výzvu na obrazovce, ale sdělovat ji uživateli jiným kanálem (out-of-band), např. mu ji zaslat ve formě SMS na mobilní telefon, jehož číslo uživatel zadal při registraci. V takovém případě pak můžeme hovořit o vícefaktorové autentizaci. Možná si teď říkáte, že když už budeme uživateli posílat SMS, tak mu můžeme rovnou poslat jedinečný OTP a nemusíme ho vůbec otravovat extrahováním nějakých znaků z výzvy. Jistě, ale co když útočník oběti její telefon zcizí?

V takovém případě představuje extrahování znaků z výzvy poměrně účinnou obranu, byť před málo pravděpodobným útokem, při kterém by měl útočník pod kontrolu oba kanály. Tedy znal by jak uživatelské jméno a heslo, tak i OTP, ke kterému by se dostal tak, že by se fyzicky zmocnil telefonu oběti. Přesto by se ale útočník nebyl schopen se autentizovat, protože by neznal PIN, který uživatel nikam nezadává a tato metoda autentizace by slavila jasný úspěch. Ovšem v případě, že by si oběť do svého smartphonu stáhla nějaký bankovní malware jako je ZitMo, který by byl schopen přijaté OTP přeposílat, a zároveň by se podobný malware nacházel i na počítači oběti, získal by útočník vše, co potřebuje.

Nyní si uveďme konkrétní příklad. Předpokládejme, že PIN uživatele je 20159 a systém jako náhodné 10místné číslo vygeneroval 1085453762. První číslice v PINu je 2, na druhé pozici v náhodném 10místném čísle se nachází 0, takže ji opíšeme. Další číslicí v PINu je 0, té odpovídá číslice 2, která se nachází na desáte pozici. Třetí číslicí v PINu je 1, té odpovídá shodou náhod též 1, která se nachází na první pozici. Další číslicí v PINu je 5, té odpovídá 4, která se nachází na pozici 5. Poslední číslicí v PINu je 9, které odpovídá 6, která se nachází na deváté pozici. Jednorázový kód je tedy v tomto případě 02146.

OTP One Time Password - ala PINsafe - numeric

Tak, a jaká je jedinečnost těchto OTP? Může být vygenerováno 10^10 různých čísel, a pokud by byl použit alfanumerický řetězec, tak může být vygenerováno až 36^10 různých řetězců. Vzhledem k tomu, že námi zvolený PIN je 5místný, tak výsledkem je 10^5 nebo 36^5, což je 100 000 nebo 60 466 176 různých OTP. Je zřejmé, že při určitém počtu uživatelů, kteří se budou autentizovat, musí za čas dojít k tomu, že se OTP začnou opakovat, to by ovšem nemuselo vzhledem k tomu, že OTP má omezenou časovou platnost, vadit.

OTP One Time Password - ala PINsafe - alfanumeric

Chtěli byste takto generovaná jednorázová hesla používat?

Nahrávání ... Nahrávání ...


Pokud vás tento příspěvek zaujal, sdílejte ho!
Share on FacebookShare on LinkedInTweet about this on TwitterShare on Google+Email this to someonePrint this page

Štítky: ,


K článku “Autentizace: Jednorázová hesla – PINsafe” se zde nenachází žádný komentář - buďte první.

Diskuse na tomto webu je moderována. Pod článkem budou zobrazovány jen takové komentáře, které nebudou sloužit k propagaci konkrétní firmy, produktu nebo služby. V případě, že chcete, aby z těchto stránek vedl odkaz na váš web, kontaktujte nás, známe efektivnější způsoby propagace.

Přihlášeným uživatelům se tento formulář nezobrazuje - zaregistrujte se.

Jméno:(požadováno)
E-mail:(požadováno - nebude zobrazen)
Web:

Text vaší reakce: