Zpět na článek Mobilní eKonto Raiffeisenbank. Jednoduché a bezpečné
Přihlašování klienta a potvrzování jeho aktivních operací prostředkem SPEK se opírá o takzvanou dvoufaktorovou autentizaci. Při ní je zde ověřováno jednak to, co klient má (mobilní zařízení), jednak to, co klient zná (přihlašovací PIN).
Dvoufaktorová autentizace
Ve veřejných diskusích je možné zachytit názor, že dvoufaktorová autentizace není například na mobilním telefonu realizovatelná. Jde však o nepravdivé tvrzení, které odráží nesprávné pochopení principu této metody. Je ovšem nutné uznat, že bezpečná realizace dvoufaktorové autentizace v tomto prostředí není snadná. Proto jsme tomuto tématu věnovali velkou pozornost. Jejím výsledkem je propracované spojení prověřených kryptografických algoritmů a schémat (zejm. AES, RSA, GCM, HMAC, HOTP, OAEP) s osvědčenými principy systémové bezpečnosti. Zde se jedná například o zapouzdření kryptografických dat pomocí objektových metod, vlastní správu paměti a také přímé využití nativního binárního kódu ARM namísto hůř kontrolovatelného virtuálního prostředí typu Dalvík, atp.
Při autentizaci klienta je pro ověření prvního faktoru (tj. toho, co klient má) využit tajný klíč uložený během aktivace v mobilním zařízení. Při přihlášení klienta nebo potvrzování nějaké jeho aktivní operace vstupuje tento klíč společně s jeho PIN do kryptografického algoritmu, jehož výsledkem je interní autentizační/certifikační kód. Ověření tohoto kódu probíhá na straně banky a podle jeho výsledku je požadovaná operace buď povolena, nebo zamítnuta. Použitý kryptografický protokol vychází z všeobecně uznávaného standardu HOTP (RFC 4226), který jsme pro naše účely rozšířili, a to koncepčně stejným způsobem, jakým je odvozen například protokol OCRA (RFC 6287).
Dedaktický PIN
Na rozdíl od běžně používaných standardů a postupů jsme v našem pojetí dosáhli možnosti dílčího ověření generovaných autentizačních/certifikačních kódů. Na straně banky tak dokážeme například odlišit pokus o zablokování cizího účtu náhodnými pokusy o přihlášení od pokusu o uhádnutí PIN pro aplikaci na odcizeném telefonu. Díky této unikátní vlastnosti jsme schopni bez zbytečných kompromisů pokrýt současně obě nejrizikovější hrozby, a to sice útok zablokováním účtu a útok hádáním PIN. Obranou proti jedné z nich přitom nemusíme nijak oslabovat odolnost vůči druhé, což je jinak bohužel běžný jev. Možnost eliminaci pokusů o hádání cizího PIN způsobem, který je plně kontrolován na straně banky, nám dovoluje – podobně jako u platebních karet – nabídnout klientům použití prostého dekadického PIN namísto komplikovaného hesla.
Šifrující klávesnice
Kromě kryptografických protokolů byla věnována velká pozornost i otázce systémové bezpečnosti. Pro ochranu tajných klíčů na mobilním zařízení využíváme v maximální možné míře obecně dostupné služby příslušné platformy. Se samotným PIN je zacházeno tak, abychom eliminovali riziko zanechání jakýchkoliv jeho otisků na straně mobilního klienta. Toto zahrnuje další jedinečný koncept – šifrující klávesnici, která místo otevřené hodnoty PIN předává uživatelskému rozhraní pouze jeho kryptogram. Tím je řádově zvýšena odolnost vůči moderním hackerským technikám. S otevřenou hodnotou PIN smí pracovat jen bezpečnostní jádro aplikace, a to navíc jen po dobu nezbytně nutnou k výpočtu autentizačního/certifikačního kódu. Zdůrazněme, že kontrola PIN je prováděna až na straně banky, a to implicitně ověřením příslušného autentizačního/certifikačního kódu. Na mobilním zařízení není persistentní otisk správného PIN přítomen, ať už v přímé či nepřímé podobě. Správná hodnota PIN není ovšem přímo uložena ani v bance. Útočník, který by chtěl získat správnou hodnotu PIN nějakého klienta, by si musel zajistit přístup jednak k chráněnému úložišti v mobilním zařízení klienta, jednak k vysoce střeženému úložišti klíčů autentizačního serveru na straně banky.
Protokol SSL/TLS
Datová komunikace mobilní aplikace s bankou je chráněna osvědčeným protokolem SSL/TLS. Stejně jako v případě našich prověřených webových aplikací jsme i zde věnovali adekvátní pozornost správné konfiguraci dílčích kryptografických algoritmů.
S napadením účtu počítáme
Z hlediska útočných scénářů jsme od samého počátku pracovali s hrozbou napadení účtu klienta po odcizení jeho mobilního telefonu. Věříme, že použitím výše nastíněných metod se nám toto riziko podařilo prakticky eliminovat. Samozřejmě v takovém případě striktně doporučujeme provést blokaci mobilního prostředku v IB, nicméně není nutné propadat stresu. Vaše mobilní aplikace se i v takové situaci dokáže postarat sama o sebe.
Velkou pozornost věnujeme i ochraně proti škodlivému kódu. Jak už bylo uvedeno, jsou citlivé bezpečnostní operace soustředěny do speciálního jádra uvnitř aplikace, které komplikuje pokusy o napadení škodlivým kódem. Je ovšem nutné zdůraznit, že sebekvalitnější ochrana se zde neobejde bez uvážlivého přístupu ze strany uživatele.
Pravidla bezpečného bankování na mobilu
Následující body shrnují základní pravidla obezřetného chování k vašemu mobilnímu zařízení:
Neaplikujte zákroky typu jailbreak nebo root
Ačkoliv samy o sobě tyto zásahy nejsou útočné povahy, jejich důsledkem je razantní oslabení imunity celého operačního systému. V podstatě se jedná o otevřenou ránu, která jen čeká, kdy ji napadne nějaká infekce. Rozhodně to za to nestojí.
První pomocí je změna PIN!
Máte-li pochybnosti o důvěrnosti vašeho PIN do bankovní aplikace, neprodleně ho změňte. Vzhledem k tomu, že změna PIN vyvolá i určité občerstvení kryptografických klíčů, lze tento postup doporučit jako rychlou první pomoc pro případ, kdy vás v terénu přepadnou pochybnosti o bezpečnosti finančních prostředků na vašem kontě.
Nepoužívejte do mobilní bankovní aplikace stejný PIN, jaký používáte pro odemykání displeje
Samotné použití zámku displeje je vítaným posílením bezpečnosti a určitě ho doporučujeme. Vždy je však nutné volit zásadně jinou hodnotu PIN než do bankovní aplikace. Banka není schopna garantovat, že operační systém mobilního zařízení přistupuje k ochraně PIN pro zámek displeje se stejnou péčí, s jakou my chráníme PIN pro bankovní aplikaci.
Vzdálenou správu Vašeho zařízení akceptujte s rozvahou
Vzdálený administrátor získává nad vaším zařízením poměrně značnou kontrolu, což chtě nechtě znamená určitou hrozbu. Přitom nezáleží na tom, jak konkrétně vypadá příslušný administrační nástroj. Jde o obecný princip a možnosti takových nástrojů. Ty jsou dány už samotnou architekturou mobilních operačních systémů.
Instalaci jakýchkoliv konfiguračních profilů posuzujte s nedůvěrou
Přijde-li vám například poštou odkaz na „bezpečnostní profil“ výrobce telefonu, o který jste předtím nežádali, může jít o pokus o útok. Instalací takového profilu byste pak místo zvýšení ochrany naopak otevřeli dveře útočníkovi. Vždy proto akceptujte jen takové profily, o kterých bezpečně víte, kdo a proč vám je zaslal.
Aplikace instalujte uvážlivě
Před unáhlenou instalací lákavé aplikace věnujte alespoň krátkou chvíli prohlédnutí dostupných hodnocení. Zcela se přitom raději vyhněte instalaci aplikací z neověřených zdrojů. V oficiálních aplikačních zdrojích (Google Play, Apple App Store) je vždy věnována alespoň nějaká pozornost eliminaci výskytu potenciálně škodlivých kódů. Tato péče se vyvíjí v čase a reaguje na aktuální trendy. V případě neautorizovaných zdrojů se naopak může jednat i o zcela cílenou infekci poskytovaných aplikací.
Webové stránky navštěvujte s rozmyslem a nevyžádané přílohy e-mailů raději ignorujte
Stejně jako v případě osobních počítačů, tak i zde mohou být tyto kanály zneužity k rozsévání škodlivého kódu.
Znovunalezený telefon důkladně desinfikujte
Pokud se vám vrátí mobilní zařízení, které jste delší dobu postrádali, je vhodné provést kompletní reset a obnovu z poslední zálohy. Předejte tím riziku, že „poctivý“ nálezce instaloval nějaký škodlivý kód přímo do vašeho přístroje.
Sliby ochranných programů berte s rezervou
Coby nástroje neinvazivního monitorování prostředí mobilního zařízení mohou nějakou práci odvést. Neměli bychom však zapomínat, že architektura mobilních operačních systémů se od světa osobních počítačů liší a spoléhá na jiné principy. Jedná se například o důsledné uplatnění technologie sandbox, která razantně omezuje možnosti vzájemné infiltrace různých aplikací. Striktní použití sandboxu se však nutně týká i samotného ochranného programu, čímž ovšem zároveň významně limituje jakékoliv jeho aktivní zákroky a kontroly, kvůli kterým právě jsou tyto programy účinné na osobních počítačích
Pravidelně zálohujte a své zálohy chraňte heslem
Pokud se vám na vašem zařízení najednou něco „nezdá“ (vyšší chybovost, špatná uživatelská odpověď), je možné doporučit provést reset do továrního nastavení (postupem dle výrobce) a následně zařízení obnovit z důvěryhodné zálohy. Ochrana záloh heslem (postupem dle výrobce) dále v mnoha směrech výrazně komplikuje různé moderní scénáře útoků.
Autorem textu je Tomáš Rosa z Raiffeisenbank, kde působí jako kryptolog. Mezititulky a perex redakční.