Mam telefon a PC.
1. Pokud jsem na PC nezadal žádnou platbu, tak na žádné SMS nereaguju.
2. Pokud se nechám přesvědčit k tomu, abych někomu sdělil obsah SMS, tak stejně bych mu potvrdil i něco v aplikaci.
Zabezpečené je to tím, že pro každou platbu potřebuji 2 zařízení. To okno, kdy bych teoreticky mohl dostat podvrženou SMS a zároveň na ni reagovat je velmi malé.
Útočník by musel mít kontrolu nad mobilem i nad PC.
Ten třetí faktor (někdo jste
) je stále ještě dost nespolehlivý, zejména v mobilním provedení. Na jedné straně můj služební iPhone usilovně odmítá můj načtený otisk či obličej, takže bych reálně ani nezaplatil, na druhé straně kolegovy děti jeho Android odemknou (nebo odemkly - už to je nějakou dobu, kdy to zkoušel) svým obličejem.
Takže stále existuje nemalé procento uživatelů, kteří prostě tento faktor použít nemohou.
Za mne je základem prostě oddělení kanálů: zařízení, na kterém zadáváte/ověřujete transakci nesmí být totožné s tím, na kterém to ověření provádíte, a nesmí sdílet stejnou datovou trasu.
(Což, mimochodem, prakticky vylučuje bankovnictví v mobilu
v běžné podobě.)
Nevytrácí. Mobilní bankovnictví je založeno na faktorech, že 1. něco máte (mobilní telefon, resp. klíč v něm bezpečně uložený) a 2. něco víte (PIN, heslo) nebo někdo jste (otisk prstu, rozpoznání obličeje).
Na ten první faktor jste zapomněl. Mobilní bankovnictví nefunguje tak, že vezmete libovolný mobil, do něj nainstalujete aplikaci a dáváte pokyny k platbě. Vždy musíte aplikaci aktivovat, což právě vytvoří klíč, který je uložen v bezpečné části mobilu a jednoznačně identifikuje tu aplikaci na daném zařízení. (Proto je instalace mobilního bankovnictví do nového mobilu „složitá“.)
Nikoliv. U tech SMS v mobilu se hure kontroluje uz jen to, kdo vsechno (jake aplikace) k tem zpravam pristupuji - a rozhodne ne vsechny se s tim opravnenim k SMS musi navenek nejak projevovat. Rozhodne to nefunguje tak, ze by k tem zpravam mela exkluzivni pristup jen aplikace, co vam bezne ty zpravy ukazuje.
Zatimco u te "datove komunikace" se tohle hlida lip - kdyz krom jineho z te aplikace smerem k serveru mate zasifrovany kanal, do ktereho fakt nic okolo nevidi a videt nemuze. Jasne, asi by bylo lepsi, kdyby se tady pouzivaly otevrene standardy typu FIDO2, ale to je zas jina pisnicka.
Zrovna ty SMS... bych asi za nějak extra bezpečné nepovažoval (ale lepší, než nic).
PIN (jako takový) - a teď nepoučuji, tím méně Vás!, jen upřesňuji - by se nelišil od hesla; ten jen otevírá cestu k bezpečnému úložišti
, kde teprve jsou uložené klíče. Stejně tak tu cestu může otevřít otisk prstu nebo rozpoznání tváře = tedy v tomto případě skutečně nejde o třetí faktor (něco být
), ale o druhý (něco mít
- tedy to úložiště a k němu přístup (ověřený přes něco znát
nebo něčím být
).
V tomto bodě by IMHO bylo mnohem lepší, než úložiště v telefonu/tabletu/počítači, použít nějaké externí: (USB/NFC) token, čipovou kartu, vhodný OTP generátor...
Dobrým řešením je (bylo by, bylo-li by) mít plnohodnotné bankovnictví v tabletu a přihlašovací aplikaci (bankovní klíč
) v mobilu. Žel, to zatím (?) žádná z našich bank nenabízí a neumožňuje (?). ;o( Buď lze klíč
použít pouze pro internetové bankovnictví, nebo rovnou přecházejí na appku typu vše v jednom
.
Problém je, že jak na jedné straně ty banky stále zlepšují zabezpečení, zároveň tím snižují uživatelský komfort. Klientům je v podstatě jedno, jak moc neprůstřelné to je, stačí, když se to snadno používá a moc to neotravuje.
Což přesně vede k rozmachu all-in-one
aplikací, které uživatele přesvědčí, že o bezpečnost je postaráno
- a ti pak s tímto falešným pocitem bezpečí klidně udělají absolutní hloupost.
28. 8. 2024, 19:35 editováno autorem komentáře
Shodněme se na tom, že ty faktory jsou dva. ;o)
Nicméně: PIN není použit jako něco znát
vůči bance, ale pouze pro přístup k úložišti klíčů, které prokazují ono něco mít
(= registrovaný telefon). Totéž platí i pro otisk prstu či rozpoznání tváře.
Že to banka uzná za druhý faktor je jen z toho důvodu, že věří
té aplikaci (neboť ta je její
, tu má pod kontrolou) a systému/mobilu (že to nefláká a neleží to někde v souboru na disku).
O fous lepší je to tam, kde pro přihlášení do banky
potřebujete ještě heslo - pak má banka dva plnohodnotné faktory.
Jediný důvod, proč je u větších
transakcí požadován PIN, a nestačí otisk prstu či scan obličeje, je ten, že až tak moc této mobilové biometrii
ta banka zas nevěří. (Jak vysoká ta důvěra je, když ji převýší napsání třeba jen čtyřmístného čísla, posuďte sám.)
Jak ta snaha o uživatelskou přívětivost postupuje, lze pozorovat například na podmínkách k tomu elektronickému bankovnictví: kdysi tam opravdu bývalo důsledně uvedeno, že je nutné použít dvě zařízení - dnes vám banka naservíruje all-in-one
aplikaci jako výchozí či v podstatě jedinou možnost (Spořitelna, Partners...).
To vas ale neohrani proti vsem moznym problemum. Pripady, kdy utocnik ty overovaci SMS do druheho zarizeni z obeti vymamil tu uz take byly. A staci na to treba phisingovy email, jehoz obsahu uverite, ani neni potreba vylozene napadat vsechna zarizeni.
A v realu u tech SMS si ani nemuzete byt jisty ani tim, ze odesilatel je ten, za koho se vydava, ze? ;-) Nebo jak overite, ze SMS z cisla 699799899 skutecne odesla z toho cisla a odesilatel neni podvrzeny? Uroven ochrany uz jen tady je podobne mrzka, jako u emailu.
Tak ten aplikacni PIN je proste udelany tak, ze prostredky systemu ani jine podobne "pomucky" (aka treba password manager) pouzit proste nejde. Plus je to doplneno treba o to, ze po nekolika chybnych pokusech se s PINem ta aplikace zablokuje a je treba provest novou aktivaci. A treba u te biometriky - kdyz provedete zmenu (treba toho otisku) v systemu, musite to v te aplikaci znovupotvrdit. Aneb hromada zdanlivych detailu, ktere nevnimate, nebo vnimat nechcete... snazite se o nejake jakoze "zkratky", ale ono cele to reseni je proste komplexnejsi - zatimco vy to pojimate tak, ze do te aplikace muzete libovolne dlouho busit do chvile, nez se nekam konecne dostanete. Ale tak ty aplikace v mobilu proste nefunguji. Aneb v tomhle obstoji i ten ctyrmistny PIN - protoze tady vy proste prehlizite to, ze tech pokusu mate treba jen tolik, co mate prstu na ruce. A nekdy ani to ne.
Druhý faktor. Používá se buď heslo/PIN nebo obličej/otisk. Moje banka to má tak, že pro menší operace jí stačí otisk, pro větší vyžaduje PIN. Takže pokud někdo nemůže použít „někdo jste“, pořád může použít silnější „něco znáte“.
Za mne je základem prostě oddělení kanálů
Za vás možná, ale dvoufaktorová autentizace znamená dva faktory, tedy to, co jsem popsal – nevyžaduje, aby to byla dvě zařízení nebo dvě datové trasy (například proto, že to nejde ověřit).
Osobně považuju bankovnictví v mobilu za podstatně bezpečnější, než se přihlašovat na počítači a k tomu zadávat kód z nešifrované SMS – což by splnilo váš požadavek na dvě zařízení. (Možná by to sdílelo datovou trasu – třeba když byste měl pevné připojení od O2 a také mobilní tarif od O2. Ale předpokládám, že až tak vážně jste to s tím sdílením datových tras nebral.)
Nejprve se budeme muset shodnout v počtu faktorů. První faktor je klíč aplikace bezpečně uložený v telefonu – ten prokazuje, že něco máte (telefon). Tento klíč se registruje v bance při aktivaci mobilního bankovnictví.
Druhý faktor je heslo/PIN k internetovému bankovnictví – tím prokazujete, že něco víte. Pro usnadnění přístupu může být heslo/PIN nahrazeno třeba otiskem prstu nebo rozpoznáním obličeje – tedy prokázáním, že někdo jste. Pořád je to druhý faktor, protože heslo/PIN se v takovém případě nepoužívá. Tedy jeden druhý faktor je nahrazen jiným druhým faktorem.
Třetí faktor se běžně pro přístup do banky nepoužívá.
Pro mne se tedy uživatelský komfort zvyšuje. Dříve jsem musel údaje o platbě (číslo účtu, variabilní symbol, částku) naťukat do externího tokenu („kalkulátoru“), ten vypočítal jednorázové heslo a to jsem musel opsat zase zpět do internetového bankovnictví. Později jsem musel jít v mobilu do SIM toolkitu, zadat PIN pro dešifrování SMS, zkontrolovat platební údaje a opsat jednorázové heslo do internetového bankovnictví. Bylo to o něco málo komfortnější, než ta kalkulačka, ale ne o moc (dokud SIM toolkit v mobilech nějak rozumně fungoval). Dneska nemusím nikam nic opisovat, jenom (u plateb vyhodnocených jako málo rizikové) podržím prst na čtečce otisků na telefonu, u rizikovějších plateb místo toho zadám PIN. Komfort je nesrovnatelně větší, bezpečnost stejná, jako u toho kalkulátoru, a vyšší než u šifrované SMS (protože ta závisela na tom, jak pečlivě jsem porovnal očekávané platební údaje s těmi v SMS).
Je správně, že se spolu s bezpečností řeší i uživatelská přívětivost. Protože když se to neřeší, jde do háje i bezpečnost – protože když je to nepohodlné, lidé to různě obcházejí.
PIN (nebo heslo) je „něco znát“. „Něco mít“ se týká telefonu, konkrétně klíče uloženého v TPM. Banka aplikaci pod kontrolou samozřejmě nemá, protože ta aplikace běží na vašem zařízení pod vaším operačním systémem.
kdysi tam opravdu bývalo důsledně uvedeno, že je nutné použít dvě zařízení
Jak už jsem psal, na počtu zařízení vůbec nezáleží, důležitý je počet a síla autentizačních faktorů. Že se zlepšuje uživatelská přívětivost je v pořádku. Bezpečnost se tím nesnížila, spíš naopak.
Ten čtyřmístný PIN pochopitelně nemůžete lámat hrubou silou! (Taky jsem nikde nepsal, ze do te aplikace muzete libovolne dlouho busit do chvile, nez se nekam konecne dostanete
.)
Ale prostě čtyřmístné číslo je špatné zabezpečení - už protože není takový problém je někomu odpozorovat pohledem přes rameno
.
(Na některých telefonech jej lze i nahradit gestem na obrazovce - a pak obvykle stačí sledovat tu umaštěnou stopu na displayi.)
Ono tohle zabezpečení (PIN/gesto/otisk...) obvykle vůbec nepatří k aplikaci - ta jen požádá systém o zpřístupnění bezpečného úložiště
(TPM...) a počká, co se stane. (Proto někdy při změně musíte udělat změnu i v aplikaci.)
Nepletu - některá bankovnictví (a podobné aplikace) to opravdu řeší tak, že zavolají systém: ověř mi...
.
Ostatně, sám o kus vedle píšete, že banka aplikaci pod kontrolou samozřejmě nemá, protože ta aplikace běží na vašem zařízení pod vaším operačním systémem.
. Tohle je jen jedna z variant, jak ta aplikace může fungovat - a popravdě často mnohem lepší, než aby si takové věci ta aplikace dělala sama.
Takže: jsou aplikace, kde můžete mít rozdílný PIN do bankovnictví a do mobilu, ale i takové, kde je použit pouze jeden.
(A aby to nebylo moc jednoduché, tak také může být další PIN k potvrzování transakcí, který se může od předchozích uvedených lišit třebas i délkou. Typicky jsem se potkával s šestimístným podepisovacím a čtyřmístným mobilovým.)
PIN musíte znát - ale bankovní aplikace ho obvykle nezná a neověřuje - prostě požádá o přístup k TPM
(úložišti tajemství
...) a systém se postará. Spoléhá na to, že ten systém se chová, jak má.
Banka má pod kontrolou to, jak ne naprogramovaná ta aplikace - nikoliv to, o co se stará systém. (A proto ty appky odmítají fungovat na rootnutém systému.)