Az elmúlt néhány évben a kétfaktoros hitelesítés (2FA) koncepciója, amely sokáig a kockák privilégiuma volt, utat talált a mainstream felé. A beszéd azonban még mindig nagyrészt a 2FA SMS-en keresztüli egyszeri jelszavakra történő használatára korlátozódik. Sajnos ez nem a legmegbízhatóbb lehetőség. Íme, miért:

  • Az SMS-ben küldött jelszavakba könnyen bele lehet kukkantani, ha a képernyőzárolási értesítések be vannak kapcsolva.
  • Még ha az értesítések ki is vannak kapcsolva, a SIM-kártya eltávolítható és egy másik okostelefonba telepíthető, így hozzáférhetünk a jelszavakat tartalmazó SMS-üzenetekhez.
  • A jelszavakat tartalmazó SMS-üzeneteket az okostelefonon belül leselkedő trójai elfoghatja.
  • A bűnözők különböző alattomos taktikák (meggyőzés, megvesztegetés stb.) alkalmazásával egy mobiltelefon-üzletből új SIM-kártyát szerezhetnek az áldozat számával. Az SMS-üzenetek ezután erre a kártyára mennek, és az áldozat telefonja lekapcsolódik a hálózatról.
  • A jelszavakat tartalmazó SMS-üzeneteket az üzenetek továbbítására használt SS7 protokoll alapvető hibája révén lehet lehallgatni.

Megjegyzendő, hogy a fenti SMS-jelszólopási módszerek közül a legmodernebb és legmunkaigényesebbet (SS7 kihasználása) is alkalmazták már a gyakorlatban. A többi mindennapi rutin a rosszfiúk számára. Ezzel együtt nem hipotetikus, hanem élő fenyegetéssel van dolgunk.

Az SMS-jelszavak összességében nem túl biztonságosak, és néha nagyon is bizonytalanok. Ezért van értelme alternatívák után kutatni a horizonton, amikor a 2FA-ról van szó, ami a mai témánk.

Egyszeri kódok egy fájlban vagy papíron

A legegyszerűbb módja az SMS-alapú egyszeri jelszavak kiváltásának, ha, igen, egyszeri jelszavakat használunk, de előre elkészítve. Ez nem a legrosszabb megoldás, különösen olyan szolgáltatások esetében, amelyekbe ritkán jelentkezik be. Még a jó öreg Facebook esetében is jó lehet ez a módszer, különösen tartalék tervként.

Ez elég egyszerű: Kérésre a szolgáltatás generál és megjelenít egy tucatnyi egyszer használatos kódot, amelyeket később a bejelentkezés hitelesítésére lehet használni. Ezeket a kódokat ki lehet nyomtatni vagy le lehet firkálni, és el lehet tenni egy széfbe. Vagy, ami még egyszerűbb, titkosított jegyzetekben elmenthetők egy jelszókezelőben.

Nem olyan fontos, hogy a kódokat fizikai vagy digitális formában tároljuk – a lényeg, hogy (1) ne vesszenek el, és (2) ne lehessen ellopni őket.

Ezekre is van alkalmazás: Hitelesítő alkalmazások

Az ebben a mondatban szereplő összes “egy” mellett az egyszeri generált egyszeri kódok készletének van egy hátránya: Előbb-utóbb véget ér, és előfordulhat, hogy a legalkalmatlanabb pillanatban kód nélkül maradsz. Szerencsére van ennél jobb megoldás is: Az egyszer használatos kódok menet közben is generálhatók egy kis és (általában) nagyon egyszerű hitelesítő alkalmazás segítségével.

Hogyan működnek a hitelesítő alkalmazások

A 2FA-alkalmazások használata nagyon egyszerű. A következőket kell tennie:

  • Telepítse a hitelesítő alkalmazást az okostelefonjára,
  • Menjen annak a szolgáltatásnak a biztonsági beállításaihoz, amellyel használni szeretné az alkalmazást,
  • Válassza ki a 2FA-t (feltéve, hogy van ilyen lehetőség); a szolgáltatás egy QR-kódot fog mutatni, amelyet közvetlenül a 2FA-alkalmazásba szkennelhet be,
  • Szkennelje be a kódot az alkalmazással – az 30 másodpercenként új egyszeri kódot kezd generálni.

A kódok egy (csak Ön és a szerver által ismert) kulcs és az aktuális, 30 másodpercre kerekített idő alapján jönnek létre. Mindkét összetevő ugyanaz az Ön és a szolgáltatás számára, így a kódok szinkronban generálódnak. Ezt az algoritmust OATH TOTP-nek (Time-based One-Time Password) nevezik, és messze ez a leggyakrabban használt.

Létezik egy alternatív megoldás, az OATH HOTP (HMAC-based One-Time Password). Ez az algoritmus az aktuális idő helyett egy számlálót használ, amely minden egyes újonnan létrehozott kódnál 1-gyel nő. A való életben azonban ritkán találkozunk vele, mert használata megnehezíti a kódok szinkron generálását az alkalmazás és a szolgáltatás oldalán. Egyszerűen fogalmazva, fennáll annak a nem elhanyagolható kockázata, hogy a számláló éppen a rossz időpontban tönkremegy, és az egyszer használatos jelszó nem fog működni.

Az OATH TOTP tehát de facto szabványnak tekinthető (bár hivatalosan nem is szabvány, ahogy a készítők a specifikációban ragaszkodnak hozzá).

2FA-alkalmazások és szolgáltatások kompatibilitása

A 2FA-alkalmazások túlnyomó többsége ugyanazt az algoritmust használja, így bármelyik használható az autentikátorokat támogató szolgáltatásokhoz; válasszon maga.

Természetesen, mint minden ökölszabály esetében, itt is vannak kivételek. Egyes szolgáltatások csak általuk ismert okokból inkább saját 2FA-alkalmazásokat készítenek, amelyek csak náluk működnek. Mi több, maguk a szolgáltatások a sajátjukon kívül semmilyen más alkalmazással nem működnek együtt.

Ez különösen gyakori a nagy videojáték-kiadók körében: például a Blizzard Authenticator, a Steam Mobile a beépített Steam Guarddal, a Wargaming Auth és mások nem kompatibilisek harmadik féltől származó alkalmazásokkal és szolgáltatásokkal. Csak ezek az egyedi fejlesztésű alkalmazások használhatók az adott játékplatformokkal.

Ezt a furcsa utat választotta az Adobe is az Adobe Authenticatorral, amely csak AdobeID fiókokkal működik. Az AdobeID-ben azonban más hitelesítőkkel is lehet hitelesíteni, így egyáltalán nem világos, hogy miért volt szükség külön alkalmazásra.

A legtöbb normális informatikai vállalat mindenesetre nem korlátozza a felhasználókat a 2FA-alkalmazások kiválasztásában. És még ha egy vállalat hirtelen úgy dönt is, hogy saját alkalmazást hoz létre, az legtöbbször nemcsak a saját, hanem más szolgáltatások fiókjainak védelmére is használható.

Egyszerűen válassza ki azt a hitelesítési alkalmazást, amelyik a kiegészítő funkciók szempontjából a legjobban tetszik – ez a legtöbb olyan szolgáltatással működni fog, amelyek általában támogatják a 2FA-alkalmazásokat.

A legjobb alkalmazások a kétfaktoros hitelesítéshez

A 2FA-alkalmazások választéka meglepően széles. Keressen rá a “hitelesítő” kifejezésre a Google Playben vagy az App Store-ban, és több tucatnyi lehetőséget fog látni. Nem javasoljuk, hogy telepítse az első alkalmazást, amelyre szemet vet; nem biztos, hogy az a legbiztonságosabb. Ne feledje, hogy a fiókjai kulcsait készül rábízni (a jelszavait természetesen nem fogja ismerni, de azért ad hozzá 2FA-t, mert a jelszavak hajlamosak kiszivárogni). Általánosságban érdemes egy nagy és megbízható fejlesztő által készített alkalmazást választani.

Bár az összes ilyen alkalmazás alapfunkciója ugyanaz – egyszer használatos kódok létrehozása egy és ugyanazon algoritmus segítségével -, egyes hitelesítők olyan extra funkciókkal vagy felületi jellemzőkkel rendelkeznek, amelyek vonzóak lehetnek. Íme néhány a legérdekesebb lehetőségek közül.

1. Google Authenticator

Támogatott platformok:

Amint azt az összes technológiai médium megjegyezte, a Google Authenticator a legkönnyebben használható a számos 2FA-alkalmazás közül. Még csak beállításai sincsenek. Mindössze annyit tesz lehetővé, hogy új tokent (az egyedi fiók kódgenerátorának adott elnevezés) adjon hozzá, vagy törölje a meglévőt. A kód másolásához csak annyit kell tennie, hogy rákoppint. Ennyi!

Az ilyen egyszerűségnek azonban van egy hátránya: Ha valami nem tetszik a felületen, vagy több funkciót szeretne, akkor egy másik hitelesítő alkalmazást kell telepítenie.

+ Nagyon egyszerű a használata.

2. Duo Mobile

Támogatott platformok: A Duo Mobile

Támogatott platformok: Android, iOS

A Duo Mobile is rendkívül felhasználóbarát, minimalista és további beállításoktól mentes. Egy előnye van a Google Authenticatorral szemben: A Duo Mobile alapértelmezés szerint rejtve tartja a kódokat – a kódok megtekintéséhez a felhasználónak rá kell koppintania az adott tokenre. Ha hozzám hasonlóan nem szereti, ha minden alkalommal, amikor megnyitja a hitelesítőt, az összes fiókjának egy csomó kódja nyilvánosan látható, akkor a Duo Mobile ezen funkciója Önnek szól.

+ Alapértelmezés szerint elrejti a kódokat.

3. Microsoft Authenticator

Támogatott platformok:

A Microsoft is a sallangmentes megközelítést választotta minimalista hitelesítőjével. Ennek ellenére a Microsoft Authenticator érezhetően több funkcióval rendelkezik, mint a Google Authenticator. Először is, bár alapértelmezés szerint minden kód látható, minden egyes token külön-külön beállítható, hogy el legyen rejtve.

Másrészt a Microsoft Authenticator leegyszerűsíti a Microsoft-fiókokba való bejelentkezést. A jelszó megadása után csak annyit kell tennie, hogy az alkalmazásban a bejelentkezés megerősítéséhez megérinti a gombot – és ennyi, még egyszeri kódot sem kell megadni.

+ Beállítható a kódok elrejtése.
+ Extra funkciók a Microsoft-fiókokba való bejelentkezéshez.

4. FreeOTP

Támogatott platformok: Android, iOS

Négy okból érdemes ezt a Red Hat babát választani. Először is, a szoftver nyílt forráskódú. Másodszor, ez a legkönnyebb alkalmazás a listánkon – az iOS verzió mindössze 750 KB. (Összehasonlításképpen, a minimalista Google Authenticator majdnem 14 MB-ot igényel, az alább tárgyalt Authy alkalmazás pedig bő 44 MB.)

Harmadszor, az alkalmazás alapértelmezés szerint elrejti a kódokat, és csak a token megérintése esetén jeleníti meg azokat. Negyedszer, de nem utolsósorban a FreeOTP lehetővé teszi, hogy a tokeneket nagyon rugalmasan és manuálisan konfiguráljuk, ha szeretnénk. Természetesen a szokásos token létrehozási módszer, a QR-kód beolvasása is támogatott.

+ Alapértelmezés szerint elrejti a kódokat.
+ Csak 750 KB-ot foglal el.
+ Nyílt forráskód.
+ Maximális beállítások a token manuális létrehozásakor.

5. Authy

Támogatott platformok:

Authy a 2FA-alkalmazások közül a legfantáziadúsabb, fő előnye, hogy minden tokent a felhőben tárolnak. Ez lehetővé teszi, hogy bármelyik eszközéről hozzáférjen a tokenekhez. Ugyanakkor leegyszerűsíti az új eszközökre való áttérést. A 2FA-t nem kell minden egyes szolgáltatásban újra aktiválni, így a meglévő tokeneket továbbra is használhatja.

A felhőben lévő tokeneket a felhasználó által meghatározott jelszón alapuló kulccsal titkosítják, ami azt jelenti, hogy az adatokat biztonságosan tárolják, és egyáltalán nem könnyű ellopni. Bejelentkezési PIN-kódot is beállíthat az alkalmazáshoz, vagy ujjlenyomattal is védheti, ha okostelefonja rendelkezik megfelelő leolvasóval.

Az Authy legfőbb hátránya, hogy mobiltelefonszámhoz kötött fiókot kell létrehoznia – különben egyáltalán nem működik.

+ A tokeneket a felhőben tárolja, így azok az összes eszközén használhatók.
+ A más eszközökre történő áttelepítés ugyanezen okból nagyon egyszerű.
+ PIN-kóddal vagy ujjlenyomattal védett alkalmazás bejelentkezés.
+ Csak az utoljára használt token kódja jelenik meg a képernyőn.
+ Más alkalmazásokkal ellentétben nemcsak az Android és az iOS, hanem a Windows, a macOS és a Chrome is támogatja.

– Nem működik telefonszámhoz kapcsolt Authy-fiók nélkül.

6. Yandex.Key

Támogatott platformok:

Véleményem szerint a Yandex.Key koncepciója miatt a legjobb alkalmazás a 2FA-hoz. Egyrészt nem igényel azonnali regisztrációt – ugyanolyan egyszerűen elkezdheti használni, mint a Google Authenticator. Másrészt számos további funkcióval rendelkezik azok számára, akik nem félnek a beállításoktól.

Először is, a Yandex.Key PIN-kóddal vagy ujjlenyomattal zárható. Másodszor, lehetővé teszi, hogy jelszóval védett biztonsági másolatot készítsen a tokenekről a Yandex felhőben (ehhez a szakaszhoz valóban szükség van telefonszámra), és azt bármelyik használt eszközön visszaállítsa. Hasonlóképpen, lehetőség van a tokenek átvitelére egy új eszközre, ha migrációra van szükség.

A Yandex.Key-nek sikerül egyesítenie a Google Authenticator egyszerűségét az Authy kibővített funkcionalitásával, attól függően, hogy Ön mit szeretne. Az alkalmazás egyetlen hátránya, hogy a felület nem olyan könnyen kezelhető nagyszámú token esetén.

+ Kezdetben minimalizmus, a beállításokon keresztül elérhető bővített funkcionalitás.
+ A tokenek biztonsági másolatai létrehozhatók a felhőben több eszközön való használathoz és az új eszközökre történő migrációhoz.
+ Az alkalmazásba való bejelentkezés PIN-kóddal vagy ujjlenyomattal védett.
+ Csak az utoljára használt token kódja jelenik meg a képernyőn.
+ Helyettesíti az állandó Yandex-fiók jelszavát.

– Sok token esetén nem olyan könnyű megtalálni a szükségeset.

FIDO U2F hardveres hitelesítők: Ha az egyszeri kódokat generáló alkalmazás túlságosan gyenge és megfoghatatlan módszernek tűnik a fiókok védelmére, és valami szilárdabbat és megbízhatóbbat szeretne, amely egy olyan kulccsal zárja le a fiókját, amely szó szerint a zsebébe kerül, akkor ne keressen tovább, mint a FIDO Alliance által létrehozott U2F (Universal 2nd Factor) szabványon alapuló hardveres tokenek.

Hogyan működnek a FIDO U2F tokenek

Az U2F hardveres tokenek a biztonsági szakemberek kedvencei, elsősorban azért, mert a felhasználó szempontjából nagyon egyszerűen működnek. A kezdéshez egyszerűen csatlakoztassa az U2F tokent az eszközéhez, és regisztrálja azt egy kompatibilis szolgáltatásban. Az egész folyamat mindössze néhány kattintást vesz igénybe.

Ezután a szolgáltatásba való bejelentkezés megerősítéséhez csatlakoztatni kell az U2F tokent ahhoz az eszközhöz, amelyről bejelentkezik, és meg kell érinteni a token gombot (egyes eszközökhöz PIN-kód vagy ujjlenyomat beolvasása szükséges, de ez egy extra funkció). Ennyi – semmi bonyolult beállítás, véletlenszerű karakterek hosszú sorozatainak beírása vagy egyéb, a kriptográfia szóhoz gyakran társított hókuszpókusz.

Elhelyezi a kulcsot és megnyomja a gombot – és tényleg ennyi

A motorháztető alatt ugyanakkor a dolgok okosak és kriptográfiailag megbízhatóak: Amikor egy tokent regisztrálunk egy szolgáltatáson, egy kriptográfiai kulcspár jön létre – egy privát és egy nyilvános. A nyilvános kulcsot a szerveren tárolják, a magánkulcsot pedig a Secure Element chipen, amely az U2F token szíve, és soha nem hagyja el az eszközt.

A magánkulcsot a bejelentkezés megerősítésének titkosítására használják, amelyet a szervernek továbbítanak, és a nyilvános kulcs segítségével lehet visszafejteni. Ha valaki magát önnek kiadva megpróbál egy rossz privát kulccsal titkosított bejelentkezési megerősítést átadni, akkor a nyilvános kulccsal történő visszafejtés halandzsát eredményez, és a szolgáltatás nem ad hozzáférést a fiókhoz.

Milyen U2F eszközök léteznek

Az U2F leghíresebb és legelterjedtebb példája a YubiKey, amelyet a Yubico gyárt. A vállalat lényegében ennek a szabványnak az élére állt, de úgy döntött, hogy nyitottá teszi, erre a célra hozták létre a FIDO Szövetséget. És mivel a szabvány nyílt, az Ön választási lehetőségei nincsenek korlátozva: Az U2F-kompatibilis eszközöket különböző cégek gyártják és forgalmazzák, az online áruházakban pedig többféle modell is kapható.

YubiKey – talán a legnépszerűbb U2F-token

A Google például nemrég mutatott be egy autentikátorcsomagot Google Titan Security Keys néven. Valójában ezek a Feitian Technologies (a Yubico után a második legnépszerűbb U2F token gyártó) által gyártott kulcsok, amelyekhez a Google saját firmware-t fejlesztett.

Az U2F-szabvánnyal kompatibilis hardveres hitelesítők természetesen ugyanolyan jól működnek minden olyan szolgáltatással, amely szintén kompatibilis ezzel a szabvánnyal. Vannak azonban különbségek, amelyek közül a legfontosabbak a kulcs által támogatott interfészek. Ez közvetlenül meghatározza, hogy milyen eszközökkel működhet:

USB: PC-khez való csatlakozáshoz (nem számít, hogy Windows, Mac vagy Linux rendszert futtatnak-e; a kulcsok mindenféle illesztőprogram telepítése nélkül működnek). A szokásos USB-A mellett USB-C-hez is vannak kulcsok.

NFC: Androidos okostelefonokkal és táblagépekkel való használathoz szükséges.

Bluetooth: olyan mobileszközökön szükséges, amelyek nem rendelkeznek NFC-vel. Az iPhone-tulajdonosoknak például továbbra is szükségük van Bluetooth-alapú hitelesítőre. Bár az iOS most már lehetővé teszi az alkalmazások számára az NFC használatát (az idei év előtt csak az Apple Pay volt engedélyezett), a legtöbb U2F-kompatibilis alkalmazásfejlesztő még nem használta ki a funkciót. A Bluetooth-hitelesítőknek van néhány hátrányuk: egyrészt fel kell tölteni őket, másrészt sokkal tovább tart a csatlakozás.

Az U2F-tokenek alapmodelljei általában csak az U2F-et támogatják, és 10-20 dollárba kerülnek. Más, drágább eszközök ($20-$50) képesek intelligens kártyaként is működni, egyszer használatos jelszavakat generálni (beleértve az OATH TOTP és HOTP jelszavakat), PGP titkosítási kulcsokat generálni és tárolni, valamint Windows, macOS, Linux stb. rendszerbe való bejelentkezésre is használhatóak.

Mit válasszon: SMS, alkalmazás vagy YubiKey?

Szóval, mit válasszunk a kétfaktoros hitelesítéshez? Erre a kérdésre nincs univerzális válasz. Különböző 2FA-változatok és kombinációk használhatók különböző szolgáltatásokhoz. Például a legmagasabb prioritású fiókokat (más fiókokhoz kapcsolódó postafiók stb.) a végsőkig védeni kell – azaz hardveres U2F tokennel kell lezárni, minden más 2FA opciót blokkolva. Így biztos lehet benne, hogy e token nélkül soha senki nem férhet hozzá a fiókjához.

Jó megoldás, ha két kulcsot kapcsol a fiókjához, mint az autókulcsoknál: az egyik mindig a zsebében van, a másik pedig egy biztonságos helyen, arra az esetre, ha az első elveszne. Ráadásul különböző típusú kulcsokat is használhatsz: Például egy hitelesítési alkalmazást az okostelefonján, mint elsődleges, és egy U2F tokent vagy egy papírcetlit az egyszeri jelszavakkal a széfjében, mint tartalékot.

A legfontosabb tanács mindenesetre az, hogy lehetőség szerint kerülje az SMS-alapú egyszeri jelszavak használatát. Igaz, ez nem mindig lehetséges. A pénzügyi szolgáltatások például közismerten konzervatívak, és ritkán kínálnak SMS-en kívül mással történő hitelesítést.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.