Mi az a kétfaktoros hitelesítés? Érthető útmutató
A kétfaktoros hitelesítés (2FA) olyan bejelentkezés, amely kétféle igazolást kér arra, hogy valóban te vagy az, akinek mondod magad: általában valamit, amit tudsz, például jelszót, plusz valamit, amid van, például a telefonodat vagy egy biztonsági kulcsot. Ha egy bűnöző ellopja vagy kitalálja a jelszavadat, a második faktor nélkül akkor sem léphet be. Ez az egyik legegyszerűbb módja annak, hogy a fontos fiókokat védd.
Miért fontos, ha AI-val építesz
Ha az AI-építőtől „bejelentkezést” kérsz, általában e-mail és jelszó jön ki. Ez jó kiindulás, de a jelszavakat újrahasználják, adathalászattal szerzik meg vagy kiszivárogtatják. Ha az appod értékes dolgokat tárol — ügyféladatokat, számlákat, adminisztrátori vezérlést, fizetési beállításokat —, egyetlen ellopott jelszó mindezt kiszolgáltathatja.
A 2FA olyan döntéseket is érint, amelyekre elsőre nem gondolnál:
- Kinek kötelező. Mindenkinek opcionális, az adminoknak kötelező, vagy mindenkinek kötelező?
- Mely módszereket támogatod. App által generált kódok, SMS, passkeyk, biztonsági kulcsok.
- Mi történik, ha valaki kizáródik. Az elveszett telefon a leggyakoribb ügyfélszolgálati kérés minden 2FA-s appnál.
- Hol érvényesül. Az ellenőrzésnek a szerveren kell megtörténnie. Egy 2FA-képernyő, amely csak a böngészőben rejti el az oldalt, kijátszható.
A kriptográfiát nem kell neked megírnod — a jól tesztelt könyvtárak és hitelesítési szolgáltatók ezt elvégzik. Azt viszont tudnod kell, mit kérj.
Mindennapi hasonlat
Gondolj egy bankbetéti széfre. A kinyitásához kell a személyazonosító igazolványod (valami, amit a bank ellenőriz, hogy vagy vagy tudsz) és a fizikai kulcs (valami, amid van). Aki lemásolja az aláírásodat, még nincs meg a kulcsod. Aki elcsenti a kulcsot, az sem jut át a személyazonosság-ellenőrzésen.
A 2FA ugyanígy működik. A jelszó az aláírás; a telefon vagy a biztonsági kulcs a fizikai kulcs. Egyik önmagában sem elég.
A három faktortípus
A biztonsági szabványok, például az amerikai Nemzeti Szabványügyi és Technológiai Intézet (NIST) digitális identitásra vonatkozó irányelvei a faktorokat három típusba sorolják:
| Faktor | Példák |
|---|---|
| Valami, amit tudsz | Jelszó, PIN-kód |
| Valami, amid van | Telefon hitelesítő appal, biztonsági kulcs, passkeyt tároló eszköz |
| Valami, ami vagy | Ujjlenyomat, arc — általában egy eszköz feloldására használják, amely aztán elvégzi a tényleges ellenőrzést |
A kulcsszó a különböző. A jelszó plusz biztonsági kérdés két dolog, amit tudsz, tehát ez nem valódi kétfaktoros hitelesítés. Ha egyetlen szivárgás mindkettőt felfedheti, az csak egynek számít.
A gyakori 2FA-módszerek összehasonlítása
| Módszer | Hogyan működik | Erősség | Megjegyzés |
|---|---|---|---|
| SMS-kód | Kódot kapsz SMS-ben a telefonszámodra | Leggyengébb | SIM-cserével és adathalászattal támadható, de sokkal jobb, mint a 2FA hiánya |
| E-mail-kód | Kódot kapsz e-mailben | Gyenge | Csak annyira biztonságos, mint az e-mail-fiók |
| Hitelesítő app (TOTP) | Az app, például a Google Authenticator, 30 másodpercenként új, 6 jegyű kódot generál | Jó | Internet nélkül is működik; áloldal kérésére a kódot még ellophatják |
| Push-jóváhagyás | Az app megkérdezi: „Te vagy ez?”, és te jóváhagyod | Jó | Figyelj a „jóváhagyási fáradtságra”, amikor a felhasználók ismételt kérések miatt automatikusan igent nyomnak |
| Passkey vagy biztonsági kulcs | Eszközön tárolt kriptográfiai kulcs igazolja, hogy a valódi oldalon vagy | Legerősebb | Ellenálló az adathalászattal szemben, mert nem válaszol hasonló hangzású domainen |
A NIST irányelvei szerint a kódok begépelését igénylő módszerek (SMS, e-mail, hitelesítő appok) nem adathalászat-ellenállóak, a telefonhálózaton küldött kódokat pedig „korlátozottként” jelölik. Az adathalászat-ellenállónak a WebAuthn/FIDO2 szabványokon alapuló passkeyk és hardveres biztonsági kulcsok számítanak.
Gyakorlati tanulság: a hitelesítő app erős, könnyen használható alapértelmezés a legtöbb appnál, a passkeyk pedig érdemes felajánlani, ha a felhasználóid kényelmesen használják őket.
Példa: 2FA egy ügyfélportálhoz
Tegyük fel, hogy olyan portált építettél, ahol egy kis könyvelőiroda adóügyi dokumentumokat oszt meg az ügyfeleivel. Így néz ki egy észszerű 2FA-beállítás lépésről lépésre.
Bekapcsolás (regisztráció). Panna, egy ügyfél, megnyitja a Beállításokat, és rákattint: „Kétfaktoros hitelesítés bekapcsolása”. Az app generál egy titkot, és QR-kódként mutatja. Panna beolvassa a hitelesítő appjával, amely elkezd hatjegyű kódokat mutatni. Beírja az aktuális kódot a portálba, hogy igazolja: a beállítás működik. Az app megmutat tíz helyreállítási kódot, és kéri, hogy tárolja őket biztonságos helyen.
Bejelentkezés később.
- Panna megadja az e-mail-címét és a jelszavát. A szerver ellenőrzi őket.
- Ahelyett, hogy azonnal beengedné, a szerver úgy jelöli a munkamenetet, hogy „jelszó rendben, második faktor folyamatban”, és megmutatja a kódképernyőt.
- Beírja a kódot az appjából. A szerver összeveti a tárolt titokkal, kis órakésést megengedve.
- Csak ezután hoz létre a szerver teljes munkamenetet, és csak ekkor láthat dokumentumokat.
Mit lát egy támadó. Ha Panna jelszava egy másik oldalról kiszivárgott, a támadó a 3. lépésnél elakad. Minden hibás kódkísérletet számolnak, és több rossz próbálkozás után a fiók átmenetileg zárolódik, Panna pedig e-mailt kap.
Ha elveszíti a telefonját. Panna az egyik helyreállítási kóddal lép be, kikapcsolja, majd az új telefonjával újra bekapcsolja a 2FA-t, és új helyreállítási kódokat kap. A felhasznált kódot soha többé nem lehet használni.
Munkatársaknak. A könyvelők minden ügyfél fájlját láthatják, ezért a portál a munkatársi fiókokhoz megköveteli a 2FA-t: nem érik el az irányítópultot, amíg regisztrálnak.
Fontos fogalmak
| Fogalom | Jelentés |
|---|---|
| 2FA / MFA | Kétfaktoros / többfaktoros hitelesítés: bejelentkezés többféle igazolással. |
| Faktor | Egyféle igazolás: valami, amit tudsz, van vagy vagy. |
| TOTP | Időalapú egyszer használatos jelszó — a hitelesítő appok forgó kódjai. |
| Megosztott titok | Az a rejtett érték, amelyet QR-kódon keresztül állítanak be, és amelyből az app és a telefonod egyező kódokat generál. |
| Helyreállítási (tartalék) kódok | Egyszer használható kódok arra az esetre, ha elvesztetted a második faktort. |
| Passkey | Az eszközön tárolt bejelentkezési hitelesítő, amely jelszó helyett nyilvános kulcsú kriptográfiát használ. |
| Biztonsági kulcs | Kis fizikai eszköz (USB vagy NFC), amely ugyanazt a feladatot látja el, mint a passkey. |
| SIM-csere | Egy mobilszolgáltató rávétele arra, hogy valakinek a számát új SIM-re vigye, így az SMS-ek a támadóhoz érkeznek. |
| Adathalászat (phishing) | Hamis oldal vagy üzenet, amely rávesz, hogy jelszót vagy kódot add meg. |
| Lépcsőzetes hitelesítés (step-up) | A második faktor újbóli kérése érzékeny művelet előtt, például a kifizetési adatok módosításakor. |
Gyakori hibák és tévhitek
- „A 2FA feltörhetetlenné teszi a fiókot.” Sokkal nehezebbé teszi. Az adathalász oldalak valós időben el tudják fogni a begépelt kódokat, ezért léteznek a passkeyk.
- A kód ellenőrzése csak a böngészőben. Ha a szerver a jelszó után teljes munkamenetet ad ki, a kódképernyő díszlet. A szervernek addig kell megtagadnia a hozzáférést, amíg a második faktor át nem megy.
- Nincs korlát a kódtippelésre. Egy hatjegyű kódnak millió lehetősége van. Sebességkorlátozás és zárolás nélkül a támadó egyszerűen tovább találgathat.
- A helyreállítás elfelejtése. Helyreállítási kódok nélkül minden elveszett telefon ügyfélszolgálati jegy lesz, vagy zárt fiókú ügyfél.
- A TOTP-titok gondatlan tárolása. A megosztott titkot adatbázisban titkosítva kell tárolni, és beállítás után soha nem szabad újra megmutatni.
- Hogy a felhasználók újraellenőrzés nélkül kikapcsolhassák a 2FA-t. A 2FA kikapcsolásához vagy az e-mail-cím módosításához a jelszó és egy aktuális kód legyen szükséges.
- A jelszó plusz biztonsági kérdés 2FA-nak számít. Nem számít — mindkettő valami, amit tudsz.
Mit kérj az AI-építődtől
- „Adj hozzá opcionális kétfaktoros hitelesítést hitelesítő app (TOTP) használatával, QR-kódos beállítással és megerősítő kóddal, mielőtt bekapcsolódik.”
- „A 2FA bekapcsolásakor mutass tíz egyszer használható helyreállítási kódot. Jelszóként hashelve tárold őket.”
- „A 2FA-t a szerveren érvényesítsd: teljes munkamenet csak a második faktor sikeres igazolása után legyen.”
- „Korlátozd a kódkísérleteket, és ismételt hibák után zárold a bejelentkezést 15 percre. Ilyenkor e-mailben értesítsd a felhasználót.”
- „Az adminfiókokhoz 2FA legyen kötelező.”
- „A 2FA kikapcsolása vagy a fiók e-mail-címének módosítása előtt kérd a jelszót és egy aktuális kódot.”
- „Használj egy ismert könyvtárat vagy a hitelesítési szolgáltatónk beépített 2FA-ját — a kriptográfiát ne írd meg kézzel.”
- „Magyarázd el, melyik módszert használtad, és hol tárolod a titkokat.”
Ha külső hitelesítési szolgáltatót használsz, nézd meg, kínál-e már 2FA-t vagy passkeyket; a beépített funkció bekapcsolása általában biztonságosabb, mint egyedi kód. A lépésről lépésre leírt változat a kétfaktoros hitelesítés bekapcsolása útmutatóban van, a mögötte álló bejelentkezés alapjait pedig a mi a hitelesítés oldal ismerteti.
Kétfaktoros hitelesítés a Mythexben
A Mythex nem tartalmaz beépített bejelentkezési rendszert az app felhasználóinak, ezért a 2FA annak a hitelesítési megoldásnak a része lesz, amelyet választasz — saját e-mail-és-jelszavas bejelentkezés a projekt adatbázisára építve, vagy olyan külső szolgáltató, amely kínál 2FA-t. A chatben kérheted az ügynöktől, hogy adja hozzá, a szolgáltatói kulcsok pedig a projekt titkai közé kerülnek, nem magába a chatbe. A dokumentációs recept a bejelentkezés hozzáadása az appodhoz témában kiindulási promptot ad, a biztonság az általad épített appokhoz pedig a kulcsokkal kapcsolatos szokásokat írja le. Indulás előtt menj végig a biztonsági ellenőrző listán AI-val épített appokhoz.
Kérdések
Mi a kétfaktoros hitelesítés egyszerűen fogalmazva?
A kétfaktoros hitelesítés (2FA) azt jelenti, hogy a bejelentkezéshez kétféle igazolás kell, általában a jelszavad és a telefonodra küldött kód vagy egy biztonsági kulcs. Aki csak a jelszavadat lopja el, még akkor sem tud belépni.
A 2FA ugyanaz, mint az MFA?
Majdnem. A többfaktoros hitelesítés (MFA) két vagy több faktort jelent; a kétfaktoros hitelesítés a leggyakoribb eset, pontosan két faktorral. Hétköznapi használatban a kifejezéseket felcserélhetően használják.
Biztonságos az SMS-es kétfaktoros hitelesítés?
Sokkal jobb, mint pusztán a jelszó, de a leggyengébb elterjedt módszer. Az SMS-eket el lehet fogni, vagy SIM-csere révén át lehet irányítani, a hamis bejelentkezési oldal pedig rá tudja venni az embereket, hogy beírják a kódot. A hitelesítő appok erősebbek, a passkeyk és a biztonsági kulcsok pedig még erősebbek.
Szükséges a 2FA az appomhoz?
Ha a fiókok pénzt, személyes adatokat vagy más felhasználók felett adminisztrátori jogot tartalmaznak, érdemes 2FA-t kínálni, és gyakori az adminoknak kötelezővé tenni. Egy egyszerű hobbiappnál ez lehet opcionális, vagy később is bevezethető.
Mi történik, ha a felhasználó elveszíti a telefonját?
Erre valók a helyreállítási kódok: egy rövid lista egyszer használható tartalék kódról, amelyet a 2FA bekapcsolásakor mutatnak meg. Nélkülük a helyreállítás általában az app tulajdonosa által végzett kézi személyazonosság-ellenőrzést jelent, ezért indulás előtt tervezd meg.