www.SAMURAJ-cz.com 

02.05.2024 Zikmund Translate to English by Google     VÍTEJTE V MÉM SVĚTĚ

Články

Vícefaktorová autentizace (MFA) v Microsoft Entra ID

Čtvrtek, 19.10.2023 12:42 | Samuraj - Petr Bouška |
Využití Multi-Factor Authentication (MFA) je dnes běžným standardem. Podíváme se na možnosti, které nabízí Microsoft pro firemní účty v Microsoft Entra ID. Toto ověřování můžeme využít v rámci Microsoft 365, ale také napojit aplikace třetích stran či naše interní aplikace. Uvedeme si, jaké ověřovací metody jsou k dispozici, a proč jsou některé více bezpečné než jiné. Popíšeme fungování různých kategorií MFA.

Pozn.: Celá oblast cloudu, a zvlášť bezpečnost, se neustále vyvíjí a mění. Informace jsou platné k době napsání článku. Také aktualizují informace z některých starších článků na tomto webu.

Praktický popis registrace ověřovacích metod, a jejich použití pro přihlášení k účtu, se nachází v článku Vícefaktorová autentizace (MFA) registrace ověřovacích metod a přihlašování.

Úvod do vícefaktorového ověřování (MFA)

Microsoft dokumentace

Adresářové služby (služby správy identit a přístupu)

  • Active Directory Domain Services (AD DS) - interní/lokální (On-Premises) adresářová služba pro firmy, využívá Forest a Domain
  • Microsoft Entra ID (starší pojmenování Azure AD) - Microsoft cloudová adresářová služba pro firmy, využívá Tenant

Můžeme využívat hybridní řešení, kdy jsou lokální doménové účty replikovány do cloudového adresáře. Jde tedy vlastně o stejný účet. Ale podle toho, kde se ověřujeme, tak máme k dispozici různé možnosti autentizace. I pro služby v rámci lokální sítě je možno provádět autentizaci v Microsoft Entra ID (za určitých podmínek).

V cloudu je podporována Microsoft Entra Multifactor Authentication (MFA) a Conditional Access Policies, které umožňují definovat parametry různých přístupů (přihlášení).

Ověřování uživatelů

  • Autentizace (Authentication) - ověření identity, jde o potvrzení, že osoba je ta, za kterou se vydává
  • Autorizace (Authorization) - oprávnění, jde o ověření, že osoba má oprávnění provést o co se snaží

Moderní ověřování (Modern Authentication)

Moderní ověřování je metoda správy identit, která nabízí bezpečnější ověřování a autorizaci uživatelů. Termín moderní autentizace zastřešuje kombinaci metod autentizace a autorizace mezi klientem a serverem. Obsahuje metody ověřování (jako vícefaktorové ověřování, ověřování pomocí čipové karty), autorizace (Open Authorization (OAuth)) a zásady podmíněného přístupu (Conditional Access Policies, Mobile Application Management).

Jako starší ověřování (Legacy Authentication) se označují dlouho využívané protokoly Kerberos, NTLM, CHAP, apod., které obecně nepracují dobře přes internet. Často se využívá Basic Authentication, která je velice jednoduchá (používá textové jméno a heslo, pouze kódované pomocí base64, takže se musí kombinovat se SSL), ale má řadu zranitelných míst.

Moderní autentizace je skupina protokolů, které mají zvýšit bezpečnost cloudových zdrojů. Například Security Assertion Markup Language (SAML), WS-Federation, OAuth. Jejich cílem je odejít od metody jméno/heslo a místo toho využívat potvrzení na principu tokenů (token-based claims). Při ověření se vygeneruje token pro přístup, kde se určuje, jaké přístupy žadatel má. Tokeny jsou časově omezené a mohou se odvolat.

U Microsoft služeb poznáme, o jakou jde autentizaci, podle vzhledu přihlašovacího dialogu. První obrázek je Basic Authentication, druhý Modern Authentication.

Microsoft Basic Authentication Microsoft Modern Authentication

Pozn.: Přihlášení pomocí MFA je dostupné pouze při moderní autentizaci.

Co to je MFA?

Vícefaktorová autentizace (Multi-Factor Authentication) je takové ověření, kdy použijeme dva nebo více různých (nezávislých) faktorů. V praxi se nejčastěji používá dvoufaktorové ověřování (2FA), ale poslední roky se převážně využívá termín MFA.

Faktory ověření uživatele jsou

  • znalostní faktor - něco, co uživatel zná, třeba uživatelské jméno a heslo, PIN
  • faktor vlastnictví - něco, co uživatel má, třeba mobilní telefon, bezpečnostní klíč, čipová karta, certifikát, TPM čip
  • inherentní faktor - něco, čím uživatel je, tedy biometrické údaje (otisk prstu, sken duhovky či sítnice, rozpoznání obličeje apod.)

Proč používat MFA?

Podle řady bezpečnostních studií (Verizon, Forrester a další) souvisí nejvíce (přes 80 %) úniků dat či průniků do organizací s kompromitovanými privilegovanými přihlašovacími údaji. Pokud se pro přihlášení používá pouze heslo, tak jeho zcizení nebo prolomení umožní útočníkovi přístup do systémů oběti.

Proto je dnes celosvětový standard využívat vícefaktorovou autentizaci. Používáme ji pro přístup k bankovnictví i pro řadu soukromých účtů (jako Google, Apple, Microsoft).

Ověřovací metody (Authentication methods)

Ověřovací metody jsou různé způsoby, jak se může uživatel autentizovat. Seznam ověřovacích metod pro MFA Microsoft průběžně vyvíjí a mění. Podle bezpečnostních trendů se některé metody přestávají používat a vznikají nové.

Aktuálně jsou k dispozici tyto MFA metody (od nejsilnějších po nejslabší):

  • FIDO2 security key - HW bezpečnostní klíč, který využívá asymetrický pár klíčů, údaje jsou chráněny PINem nebo biometrií, doporučená metoda od CISA, více v článku Přihlašování pomocí FIDO2 bezpečnostního klíče
  • Windows Hello for Business - využívá asymetrický pár klíčů, který je vázán na daný počítač (ideálně TPM) a chráněn lokálním PINem nebo biometrií, více v článku Windows Hello for Business - úvod
  • Certificate-based authentication (CBA) - nová možnost využít pro přihlášení X.509 certifikát například na čipové kartě (smart card, chráněný PINem), certifikáty také pracují s asymetrickým párem klíčů
  • Microsoft Authenticator (Phone Sign-in) - aplikace Microsoft Authenticator podporuje přihlášení bez hesla, kdy se využívá asymetrický pár klíčů chráněný PINem nebo biometrií, zobrazí se zpráva na zadání čísla z přihlašovacího dialogu, metoda je označena jako Phone Sign-in (přihlášení telefonem)
  • Microsoft Authenticator (Push Notification) - další možnost využití Microsoft Authenticator, na telefonu se zobrazí notifikace (zpráva), kterou uživatel schválí pomocí párování čísel (zadání dvou číslic z přihlašovacího dialogu)
  • OATH Token - HW tokens jsou zatím v preview, používají se SW tokens, generují OATH ověřovací kód (funguje offline), využívají se mobilní aplikace jako například Microsoft Authenticator a Authenticator Lite, Google Authenticator a další
  • Mobile Phone - registrujeme telefonní číslo a využíváme SMS, pomocí které dostaneme ověřovací kód, nebo hlasový hovor (Voice), který přijmeme a potvrdíme (klávesa #)
Schéma MFA ověřovacích metod z webu Microsoft

Microsoft Authenticator zvyšování bezpečnosti notifikací

Microsoft průběžně zvyšuje bezpečnost v rámci své aplikace Microsoft Authenticator. Metoda Push Notification dříve spočívala pouze v kliknutí na tlačítko Aprove.

Aby se zabránilo náhodným schválením a útoku MFA Fatigue, tak na začátku roku 2023 bylo změněno na párování čísel (Number Matching). V přihlašovacím dialogu se zobrazí dvě číslice, které je potřeba zadat v aplikaci Microsoft Authenticator. Je to obdobné schválení jako u metody Phone Sign-in. Toto řešení doporučuje také organizace CISA (Cybersecurity & Infrastructure Security Agency).

Dále byla přidána možnost zobrazit uživatelům v požadavku v aplikaci Microsoft Authenticator další kontext. Jde o jméno aplikace, kam se uživatel přihlašuje. A zeměpisnou polohu podle IP adresy zařízení, kde se přihlašuje.

MFA autentizace schválení v aplikaci Microsoft Authenticator

Použití telefonu - SMS a hlas

Již před nějakou dobou začali bezpečnostní experti považovat autentizaci pomocí SMS nebo hlasu za nedostačenou. Ke konci roku 2023 upravil Microsoft registrační kampaň a pomocí ní se snaží uživatele přesvědčit (donutit) k použití bezpečnější metody (aktuálně aplikace Microsoft Authenticator).

SMS a hlas využívá veřejnou telefonní síť (PSTN), kde existují útoky na výměnu SIM a odposlech přes veřejné sítě. Nemůžeme si být jisti, že SMS dorazila k zamýšlenému příjemci, díky přesměrování nebo zachycení SMS zpráv. Zprávy jsou omezené, nešifrované, nejsou stoprocentně spolehlivé, omezují je regulace, je tu náchylnost k sociálnímu inženýrství. Proto se doporučuje přejít na mobilním telefonu na bezpečnější metodu pomocí aplikaci.

Kategorie ověřovacích metod

Ověřovací metody se rozdělují do několika kategorií podle síly autentizace (Authentication Strengths) a bezpečnosti:

  • Single-Factor Authentication - pokud nepoužíváme MFA a máme pouze jeden faktor ověření, hlavně jméno a heslo nebo třeba samotný certifikát (bez ochrany PINem)
  • MFA s heslem - tradiční MFA, jméno a heslo plus další faktor, patří sem SMS, telefonní hovor, SW nebo HW OATH token, Authenticator s Push Notification a samostatně trochu speciální případ Temporary Access Pass
  • MFA bez hesla (Passwordless MFA) - nezadáváme heslo, ale pouze jméno a pak se použije soukromý klíč (asymetrická kryptografie), který odemkneme lokálním PINem nebo biometrií, patří sem Microsoft Authenticator Phone Sign-in a všechny Phishing-resistant MFA
  • MFA odolné proti phishingu (Phishing-resistant MFA) - ověření bez hesla, kdy se vyžaduje interakce mezi metodou ověřování a přihlašovací plochou (klíč se používá na zařízení, kde se přihlašujeme), patří sem FIDO2 security key, Windows Hello for Business, ověřování pomocí certifikátů

Pozn.: Kategorie jsou uvedeny od nejslabších po nejsilnější z pohledu bezpečnosti. Metody z vyšší kategorie splňují podmínky nižších.

Rozdělení MFA ověřovacích metod do kategorií z webu Microsoft

Vícefaktorová autentizace (MFA) s heslem

Standardní MFA přihlášení znamená, že identifikujeme svůj účet jeho jménem (emailem, doména určí Tenant) a zadáme heslo. Pak použijeme něco, co máme. Nejčastěji se využívá ověřovací kód (Verification Code), ale může jít také o schválení přihlášení na určitém zařízení.

Microsoft podporuje standard Open Authentication (OATH) časově omezený jednorázový kód (Time-based One Time Password - TOTP). Který generuje 6 až 8 číselný kód každých 30 vteřin. Pro generování se mohou využít SW nebo HW OATH tokens. Typicky se využívají různé mobilní aplikace, jako Microsoft Authenticator, které slouží jako Software OATH Token. Pro registraci autentizační aplikace se v Microsoft Entra ID generuje Secret Key (nebo Seed), který se zadá v aplikaci (většinou se skenuje QR kód). Ten se následně používá pro generování OTP. Aplikace nepotřebuje připojení k internetu.

Klasický průběh MFA autentizace - heslo a druhý faktor

Vícefaktorová autentizace (MFA) bez hesla

MFA bez hesla (Passwordless MFA) při přihlášení nepoužívá heslo (nezdáváme jej, ani se neodesílá přes internet). Místo toho se při registraci metody vygeneruje (na zařízení) asymetrický pár klíčů. Veřejný klíč se uloží (registruje) k účtu uživatele v Microsoft Entra ID. Soukromý klíč se uloží na zařízení, ideálně pomocí kryptografického čipu. Na počítačích se využívá Trusted Platform Module (TPM), samostatné zařízení je FIDO2 bezpečnostní klíč, pro certifikáty čipová karta. Případně se uloží v mobilním zařízení v aplikaci Microsoft Authenticator.

Přihlašovací údaje jsou tak svázány s určitým zařízením (počítač, telefon, FIDO2 klíč, čipová karta). Tedy něco, co máme. Přístup k nim musí být chráněn pomocí PINu nebo biometrie. Tedy něco, co víme nebo co jsme.

Při MFA přihlášení použijeme určité zařízení, kde odemkneme (PIN, biometrie) přístup k soukromému kryptografickému klíči. Tímto klíčem se podepíšou data přijatá z Microsoft Entra ID (nonce). Microsoft Entra ID ověří podpis pomocí veřejného klíče, pak ověří vrácený nonce a uživatele přihlásí (získá Primary Refresh Token (PRT) s MFA claim).

Přes síť se neposílá žádná forma hesla ani soukromého klíče. PIN nebo biometrické údaje jsou použity pouze lokálně a spojeny s jedním konkrétním zařízením. Z těchto důvodů je PIN bezpečnější než heslo, které se přenáší po síti a jeho forma je uložena na serveru. Na PIN mohou být kladeny menší nároky.

MFA autentizace bez hesla - schválení aplikace Microsoft Authenticator

Vícefaktorová autentizace (MFA) odolná proti phishingu

Některé MFA metody se označují jako odolné proti phishingu (Phishing-resistant). Tyto metody mají zabránit odhalení autentizačních tajemství webu nebo aplikaci, která se vydává za legitimní systém.

Taková metoda musí splňovat několik podmínek. Eliminace sdílených tajemství (heslo), místo toho se využívá asymetrická kryptografie a silný vztah důvěry prostřednictvím kryptografické registrace. Reagování pouze na platné požadavky od známých a důvěryhodných stran. Je nutný záměr uživatele, je vyžadováno zapojení uživatele jak pro zahájení, tak pro autorizaci přihlašovací akce.

V praxi se jedná o MFA metody bez hesla, kdy se přihlašujeme na zařízení, kde máme fyzicky připojený privátní klíč. Jde o Windows Hello for Business, který funguje pouze na konkrétním počítači, FIDO2 bezpečnostní klíč, který musíme připojit k zařízení a při přihlášení se jej dotknout nebo čipovou kartu s certifikátem. Nepatří sem metody, kdy můžeme schválit přihlášení, které probíhá někde jinde. Což jsou všechny možnosti použití aplikace Microsoft Authenticator.

MFA autentizace odolná proti phishingu - FIDO2 bezpečnostní klíč

Útoky na MFA

Phishing útok na MFA probíhá typicky tak, že útočník odešle podvodný email. Oběť klikne na odkaz, který vede na podvodný systém vydávající se za legitimní. Zde je kopie MS přihlašovacího dialogu, ale zadané údaje dostává útočník. Ten v tu chvíli provádí přihlášení k legitimní službě. Oběť dostane například SMS, schválení přihlášení či použije OTP. Korektní údaje předá útočníkovi, který se pomocí nich přihlásí místo oběti. Provádí útok Man-in-the-middle (MITM).

Jiný útok se označuje MFA Fatigue a spočívá v zaplavení oběti požadavky na ověření (Push Notification). Ty uživatele frustrují natolik, že by mohl ignorovat běžná bezpečnostní opatření, a nakonec přijmout jakékoli požadavky na ověření. Obranou proti tomu je používání párování čísel.

Frekvence ověřování a životnost session

Zabezpečení uživatelského účtu pomocí MFA nemá za cíl neustále uživateli zobrazovat dotaz k přihlášení, kde by se musel autentizovat. To by bylo nepohodlné a uživatelé by pak zadávali přihlašovací údaje bez přemýšlení, třeba i na škodlivé stránky. Autentizace uživatele na určitém zařízení nebo v určité aplikaci má danou dobu života relace (session lifetime). Například pro Office aplikace je defaultně 90 dní. Pro prohlížeče nejsou žádné trvalé cookies. Až po vypršení session (nebo změně hesla, odvolání session apod.) je potřeba provést novou autentizaci. Chování je možno ovlivnit konfigurací a speciálními vlastnostmi.

Na spravovaných zařízeních, která jsou registrovaná (Registered) nebo připojená (Joined) do Microsoft Entra ID, je možno využít přihlášení pomocí SSO (Single Sign-On) či Seamless SSO. Zařízení, která jsou Microsoft Entra Joined nebo Microsoft Entra Hybrid Joined, získávají Primary Refresh Tokens (PRT), který dovoluje využít SSO mezi aplikacemi. Tedy přihlášení do jedné aplikace funguje jako přihlášení do ostatních.

Na mobilních zařízeních se využívá aplikace Microsoft Authenticator jako zprostředkovatel pro jiné Microsoft Entra ID aplikace. Na zařízeních, která nemají identitu v Microsoft Entra ID (nejsou registrovaná), má každá aplikace vlastní OAuth Refresh Token, takže se samostatně ověřuje.

Pomocí Conditional Access Policies můžeme vynutit opětovnou autentizaci po kratší době. Nastavujeme frekvenci přihlašování (Sign-in frequency) v rámci ovládání relace (Session Controls).

zobrazeno: 2253krát | Komentáře [0]

Autor:

Související články:

Azure AD / Entra ID identity a autentizace

Články související s identitou uživatelů a zařízení (nejen) v Microsoft Entra ID. Různé možnosti přihlašování a ověřování. Oblasti jako moderní autentizace, vícefaktorová autentizaci, přihlašování bez hesla, apod.

Azure, Microsoft 365, Office 365, Cloud

Různá populární témata ohledně veřejného cloudu. Více zaměřeno na služby Microsoft, tedy IaaS, PaaS, SaaS Azure, adresářové služby Azure AD a hostované služby Microsoft 365 / Office 365.

Pokud se chcete vyjádřit k tomuto článku, využijte komentáře níže.

Komentáře

Zatím tento záznam nikdo nekomentoval.

Přidat komentář

Vložit tag: strong em link

Vložit smajlík: :-) ;-) :-( :-O

Nápověda:
  • maximální délka komentáře je 2000 znaků
  • HTML tagy nejsou povoleny (budou odstraněny), použít se mohou pouze speciální tagy (jsou uvedeny nad vstupním polem)
  • nový řádek (ENTER) ukončí odstavec a začne nový
  • pokud odpovídáte na jiný komentář, vložte na začátek odstavce (řádku) číslo komentáře v hranatých závorkách