Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

(C) Ondřej Ševeček sevecek. com Windows User Group.CZ Troubleshooting Active Directory #1.

Podobné prezentace


Prezentace na téma: "(C) Ondřej Ševeček sevecek. com Windows User Group.CZ Troubleshooting Active Directory #1."— Transkript prezentace:

1 (C) Ondřej Ševeček ondra @ sevecek. com Windows User Group.CZ Troubleshooting Active Directory #1

2 Obsah přednášky  Autentizační metody  NTLM autentizace ve Windows  Kerberos v5 autentizace ve Windows  Synchronizace času  Active Directory a DNS  Logon process  Nástroje pro řešení problémů Active Directory a Kerberos  Inteoperabilita

3 Autentizační metody  NT Lan Manager (NTLM)  Challenge – response autentizace  Používaná staršími OS Windows 9x, NT, MS-DOS, OS/2  Kompatibilita s Windows 2000, XP, 2003, …  Několik verzí LM, NTLM, NTLMv2  Kerberos v5  Vztahy důvěry podobně jako PKI  Jen Windows 2000, XP, 2003, …  Interoprabilita (MIT Kerberos server)

4 Authentication Provider  Security Support Provider (SSP) .DLL instalovatelný modul  HKLM \ System \ CurrentControlSet \ Control \ LSA \ AuthenticationPackages  MSV1_0 – NTLM  Kerberos  SChannel – SSL, TLS  WDigest – digest authentication  Musí být vyzkoušeny a podepsány MS

5 NT Lan Manager (NTLM)  Challenge – response autentizace  Prokazování identity klienta na základě znalosti sdíleného tajného hesla  Heslo necestuje sítí v otevřené podobě  Autentizuje se pouze klient serveru, nikoliv server klientovi – není to mutual autentizace  Neposkytuje delegování identity (identity delegation)  Různé délky hesla v různých verzích protokolu  Náchylné na reply attack  Všechny systémy Windows obsahují NTLM Security Support Provider (NTLMSSP)  Passthrough autentizace vyžaduje konektivitu serveru a DC

6 Průběh autentizace NTLM Type 1 Type 2 Klient Jméno počítačeDoména Chci se autentizovat LM vs. NTLMv2 … Tohle mi zašifruj naším heslem Challenge (64 bit) Type 3 LM / LMv2 Posílám odpověď NTLM / NTLMv2 Server Jméno uživateleDoménaJméno stanice

7 NT Lan Manager (NTLM)  LM Response (< 3*7 byte DES)  „7“ znaků heslo velkými písmeny, DES56(Challenge)  NTLM Response (< 3*7 byte DES)  MD4 hash (128 bit) hesla, DES56(Challenge)  NTLMv2 a LMv2 Response (2*16 byte MD5)  Stejné heslo pro různé servery vypadá jinak  Obsahuje časové razítko (timestamp)  Obsahuje client challenge pro mutual authentication  Používá MD4 a HMAC-MD5 hash (128 bit)  LMv2 pouze kvůli pass-through kompatibilitě  Autorizační data jsou digitálně podepsána

8 Útok LM Metoda Heslo uživatele HESLOUZIVATELE N 14 HESLOUZ7IVATELE7 KGS!@#$% LM16 8 HASH Registry LM Hash2100000 Hash #17Hash #27Hash #3 000007 DES Challenge8DES KGS!@#$%8DES Challenge8DESChallenge8DES LM Response #1 24 LM Response #2LM Response #3 0xaad3b435b5 1404ee Heslo <= 7

9 Útok NTLM Metoda Heslo uživateleN NTLM Hash16 Registry LM Hash2100000 Hash #17Hash #27Hash #3 000007 MD4 (RFC 1320) Challenge8DESChallenge8DESChallenge8DES NTLM Response #124NTLM Response #2NTLM Response #3

10 Útok NTLMv2 Metoda Heslo uživateleN NTLM Hash16 Registry USER NAMEN Blob N MD4 (RFC 1320) NTLMv2 Response N TARGET SERVER NAME NTLMv2 Hash16 HMAC-MD5 (RFC 2104) Timestamp Client Challenge HMAC-MD5 (RFC 2104) Challenge Hashed value of blob16BlobN Target Info

11 Útok LMv2 Metoda Heslo uživateleN NTLM Hash16 Registry USER NAMEN 8 MD4 (RFC 1320) LMv2 Response 24 TARGET SERVER NAME NTLMv2 Hash16 HMAC-MD5 (RFC 2104) Client Challenge HMAC-MD5 (RFC 2104) Challenge Hashed value of challenges16Client Challenge8 8

12 NTLM Passthrough autentizace KlientServer Klient DC 1 2 3 Server 1 2 3 2 1 3

13 NTLM autentizace ve Windows  Registrové nastavení ve Windows  HKLM \ System \ CurrentControlSet \ Control \ LSA LMCompatibilityLevel = REG_DWORD

14 NTLM autentizace ve Windows  Group Policy  Windows 2000  Windows XP/2003

15 NTLM kompatibilita ve Windows  Windows 2000, XP, 2003, …  NTLMv2, LMv2 a starší  Windows 95, 98, NT4.0  NTLM, LM  Po instalaci “Directory Services Client” (DS Client) NTLMv2, LMv2  DS Client  Nepodporuje Kerberos, pouze DNS vyhledávání  NT4.0 SP4 – k dispozici na CD Windows 2000, …  9x – www.microsoft.com

16 Kerberos (RFC 1510)  Trojhlavý pes hlídající vstup do podsvětí  Authentication, Access Control, Auditing  Symetrická kryptografie  Vztahy důvěry podobně jako asymetrická  Vzájemná (mutual) autentizace  Klient si je jist, že hovoří se serverem, který zná jeho heslo  Transitive trust  Není potřeba passthrough autentizace  Rychlejší než NTLM  RC4-HMAC (128-bit)  „Use DES encryption types for this account“ – uživatelský učet  Delegation  Využívá Active Directory k ukládání účtů

17 (Non)transitive Trusts  Windows NT 4.0  Windows 2000

18 Authenticator Tajné heslo Kerberos – základ autentizace Klient Server Jméno uživatele Časové razítko Tajné heslo Mutual Auth.

19 User Master Key Server Master Key Key Distribution Center Klient Server 1 2 3 Důvěra Databáze (Master keys) uživatelská hesla hesla serverů KDC Authentication Service Ticket Granting Service

20 User Master Key Server Master Key Key Distribution Center Klient Server Autentizace Důvěra Ticket Databáze (Master keys) uživatelská hesla hesla serverů KDC Authentication Service Ticket Granting Service

21 Server Master Key User Master Key Databáze (Master keys) uživatelská hesla hesla serverů TGT a TGS Klient Server KDC Autentizace Důvěra Authentication Service Ticket Granting Service TGT TGS TGT TGS TGT TGS Ticket-Granting Ticket Ticket Granting Service

22 Kerberos Ticket  Bezpečný přenos session key  Session key používán k šifrování komunikace klient-server, klient-KDC  Bezpečnější než šifrování přihlašovacím heslem (master key)  Session key náhodně generován KDC při přihlašování  Použitelný jen omezenou dobu  Časové razítko (timestamp) zajišťuje ochranu proti replay attack  Klient ukládá tikety do cache (non-paged) –State-less na straně serveru –Pouze po dobu logon session  Session key je možno použít také k podepisování a šifrování další komunikace – SMB Signing

23 Kerberos autentizace – TGT Chci se přihlásit Moje jméno je Ondra Klient KDC AS Master Key (heslo) Ondra 15:25:03 TGT Klient KDC AS Authenticator Uživatel: Ondra TTL, Flags KDC Master Key KDC Session Key Master Key (heslo) KDC Session Key

24 Kerberos autentizace – TGS Chci se připojit k Serveru TGT Klient KDC TGS KDC Session Key Ondra 15:27:18 TGS Klient KDC TGS KDC Session Key Server Session Key Authenticator Jméno serveru: Server Server Master Key Server Session Key Jméno klienta: Ondra TTL, Flags

25 Kerberos autentizace – Server Chci se k tobě připojit TGS KlientServer Server Session Key Ondra 15:39:25 KlientServer Authenticator OK. Taky se autentizuji TGS Server Session Key Server 15:39:48 Authenticator

26 Kerberos autentizace – Celek Klient User MK Authenticator Server KDC TGS KDC AS User MK KDC SK KDC MK KDC SK Authenticator KDC SK Server SK Server MK Server SK KDC MK KDC SK Server SK Authenticator Server SK Data … Server MK Server SK

27 Použití vs. trvanlivost klíčů KDC Session Key KDC Master Key User Master Key Server Master Key Server Session Key  Nebezpečí off-line brute force útoku  Četnost použití klíče  Trvanlivost klíče KDC Session Key (TGT lifetime 10 hours) KDC Master Key (8 dní default) User Master Key (40 dní default) Server Master Key (30 dní default) Server Session Key (TGS lifetime)

28 Časová synchronizace 1.Klient požaduje službu po serveru 2.Authenticator je poslán na server  Obsahuje timestamp klienta (GMT) 3.Vejde se timestamp do limitu (5 min.)?  Pokud ano, pokračuje se následujícím krokem  Pokud ne, server pošle klientovi svůj lokální čas a klient vytvoří nový authenticator a předá ho serveru 4.Server prohlédne svou lokální cache  Pokud v ní již takový tiket existuje, požadavek je zamítnut (replay attack)

29 Časová synchronizace PDC root domain PDC child domain PDC root domain Member Server Workstation

30 Vyhledávání DC – DNS  DNS  Vyhledávání DC  Už ne NetBIOS  SRV záznamy  Vliv topologie „sites“  DS Client  Vyhledávání pomocí DNS i pro starší klienty

31 Spolupráce DC – DNS  Služba NetLogon  Při startu PC provádí dynamickou registraci SRV a A záznamů daného DC do DNS SRV – _msdcs. SRV – gc._msdcs.  Přeregistrace každých 60 min.  Secure Dynamic Update  Vypnutí automatické registrace (restart služby) HKLM \ System \ CurrentControlSet \ Services \ NetLogon \ Parameters UseDynamicDNS = REG_DWORD = 0 / 1 RegisterDNSARecords = REG_DWORD = 0 / 1  Manuální registrace DNS záznamů  %systemroot% \ System32 \ Config \ NetLogon.DNS  Deregistrace při odinstalaci (DCPROMO)  Vyžaduje korektní shutdown kvůli likvidaci RR.

32 Přihlášení do domény  Ondra … PC01 czech.world.local Uživatel: Ondra Počítač: PC01 PC01 TGT Request TGT 1 2 TGS Request pro PC01 TGS pro PC01 3 4

33 Přihlášení do trusted domény 1  Uživatel se přihlašuje na počítač v jiné doméně  Ondra … PC01 world.local (root) france.world.localczech.world.local Uživatel: Ondra Počítač: PC01 GC Global Catalog

34 Přihlášení do trusted domény 2 world.local (root) france.world.localczech.world.local Uživatel: Ondra Počítač: PC01 TGT Request TGT 1 2 TGS Request pro PC01 TGS pro worl.local 3 4 REFERAL ticket GC Global Catalog

35 Přihlášení do trusted domény 3 world.local (root) france.world.localczech.world.local Uživatel: Ondra Počítač: PC01 TGS Request pro PC01 TGS pro worl.local 3 4 REFERAL ticket TGS Request pro PC01 TGS pro france.local 5 6 REFERAL ticket

36 Short-cut trusts Počítač: PC01 Uživatel: Ondra

37 Účty pro autentizaci  Účet počítače - host01$  Heslo uloženo v registrech  MD4 hash hesla uložena v Active Directory  HKLM \ System \ CurrentControlSet \ Services \ Netlogon \ Parameters MaximumPasswordAge = REG_DWORD  Účet uživatele – user5  Heslo uloženo v mozku (čipové kartě)  MD4 hash uložena v Active Directory  Domain Group Policy – Account Policies  Domain trust – subdomain$$  Heslo i hash uloženy v příslušné Active Directory  Musí existovat 2 účty pro vzájemnou důvěru  „Když někomu věřím, mám u něho účet“  Krbtgt  Účet Kerberos KDC s master heslem pro šifrování session key v TGT

38 Service Principal Name – SPN  Identifikace služby  Připojeno k účtu služby uživatelskému účtu pod kterým služba běží účtu počítače pod kterým služba běží  Unikátní v celém forestu  Formát SPN ServiceClass / Host:[Port] / [Service-Name]  www / srv01:80 / PrvniWWWServer  TGS se generuje pro příslušné SPN  Nikoliv pro účet počítače, ale pro účet pod kterým běží služba  Master key se získá z daného účtu

39 TGT – Ticket-Granting Ticket KDC Session Key Privilege Attribute Certificate Master Key KDC Session Key Uživatel: Ondra TTL, Flags Privilege Attribute Certificate KRBTGT Master Key KDC Session Key Global Groups Domain Local Groups Universal Groups DC GC User RightsDC Master Key PAC Hash KRBTGT Key PAC Hash

40 Privilege Attribute Certificate  Informace pro autorizaci  Nemění se po celou dobu logon session  Alespoň jeden GC (Global Catalog) musí být přítomen, aby bylo možno uživatele nalogovat  Výjimkou je skupina „Administrators“ musí být přihlásitelná i bez GC  HKLM \ System \ CurrentControlSet \ Control \ LSA IgnoreGCFailures  KDC ho přidává do všech TGS  Cílový server podle PAC přihlásí uživatele  Digitálně podepsáno  Nelze změnit MITM (na rozdíl od NTLM)

41 Doménové skupiny  Domain Local Group  Použitelné pouze na prostředcích v dané doméně  Tyto skupiny ani jejich členství se neukládá v GC  Členem může být kdokoliv  Global Group  Použitelná na prostředcích ve všech doménách  Tyto skupiny se ukládají v GC, jejich uživatelé nikoliv  Členem nesmí být Domain Local Group  Universal Group  Použitelná kdekoliv  Členství i samotné skupiny jsou uloženy v GC  Členem nesmí být Domain Local Group

42 Doménové skupiny

43 Startování počítače  DHCP konfigurace interface  DNS dotaz na zjištění adresářové služby  _ldap._tcp.._sites.dc._msdcs.  Vytvoří se secure channel na DC  Služba Netlogon, šifrovaný kanál  DNS dotaz na zjištění KDC  _kerberos._tcp.._sites.dc._msdcs.  Autentizace počítače – Kerberos  Autentizace všech služeb co neběží pod Local System  LDAP dotaz na zjištění DN objektu počítače  LDAP dotaz na zjištění Group Policy Objektů  GPO je stažena pomocí sdílení souborů a DFS  \\domain\sysvol\policies\  Synchronizace času  DNS dynamic update klienta  Ukončení všech spojení s DC

44 Nástroje pro Kerberos  NLTEST  Support Tools, Install CD – SUPPORT / TOOLS  NETDOM  Support Tools  SETSPN  Resource Kit, www.microsoft.com  KERBTRAY, KLIST  Resource Kit  WHOAMI  Support Tools  NET TIME  PORTQRY  www.microsoft.com

45 NLTEST  /DCLIST:  Vypíše seznam DC pro příslušnou doménu  /WHOWILL:  Zjistí, zda je možno daného uživatele přihlásit  /FINDUSER:  Zjistí jméno důvěryhodné (trusted) domény, která je schopna přihlásit daného uživatele  /SC_QUERY:  zjistí stav secure channelu s danou doménou  /SC_RESET:  Vyresetuje secure channel s danou doménou  /DSGETDC: /PDC /GC  Vypíše jména PDC a Global Catalog serverů v dané doméně

46 NETDOM  ADD computer /DOMAIN: /OU:  Vytvoří doménový účet pro počítač  JOIN computer /DOMAIN: /OU:  Vzdáleně připojí počítač do domény a restartuje  REMOVE computer /DOMAIN:  Vzdáleně odpojí počítač z domény  TIME computer /DOMAIN:  Synchronizuje čas mezi stanicí a doménovým kontrolerem  RESETPWD computer /DOMAIN:  Vzdáleně resetuje heslo počítače na stanici i na doméně  QUERY /DOMAIN: DC PDC FSMO  Vypíše seznam DC, PDC a single master operation rolí

47 WHOAMI a NET TIME  WHOAMI /ALL  Vypíše informace pro aktuálního uživatele: –Jméno účtu a SID –Skupiny a SID –Práva uživatele  NET TIME \\computer /SETNTP:server  NET TIME \\computer /SET  Nastaví nový NTP (Network Time Protocol) server pro službu „Windows Time“  Nastaví příslušný čas podle NTP serveru  HKLM \ System \ CurrentControlSet \ Services \ w32time \ Parameters NTPServer = REG_SZ = jméno/IP

48 KLIST, KERBTRAY a SETSPN  KERBTRAY, KLIST TICKETS  Seznam a informace o tiketech aktuálně v cache  KLIST TGT  TGT daného uživatele  KLIST PURGE  Smazání všech tiketů z cache  SETSPN –L computer  Vypíše seznam všech SPN registrovaných pro příslušný stroj  SETSPN –D SPN computer  Vymaže příslušnou registraci SPN

49 KERBTRAY a SETSPN  Prohlídka Kerberos tiketů a SPN

50 Porty a protokoly  Kerberos UDP Port 88  Standart podle RFC 1510  Kerberos TCP Port 88  Microsoft implementace (revised RFC 1510) může použít TCP, pokud velikost paketu přesáhne UDP MTU = 2kB  HKLM \ System \ CurrentControlSet \ Control \ LSA \ Kerberos \ Parameters MaxPacketSize = REG_DWORD = 1-2000  HKLM \ System \ CurrentControlSet \ Services \ Netlogon \ Parameters KDCServerPort = REG_DWORD  LDAP TCP a UDP Port 389  LDAP SSL TCP a UDP Port 636  DNS UDP Port 53  SMB TCP Port 445  RPC dynamické porty

51 Group Policy a Kerberos  Domain Security Policy  Pouze na doméně!  Jinde nemá cenu nastavovat (podobně všechny „Account Policies”)

52 Kerberos Interoperabilita  Windows KDC  Účty definovány pro Windows i Unix stroje a uživatele  Unix KDC  Účty definovány pro Windows i Unix  Windows stanice nejsou v doméně  Důvěra mezi Unix a Windows doménou  Nejjednodušší řešení se všemi výhodami  KSETUP – Resource Kit

53 Single Sign On  SSO – jedno přihlašovací jméno a heslo do různých služeb různých výrobců  Implementace založené na Kerberosu  Různé webové implementace  Poskytované jako služba za poplatek  Microsoft.NET Passport (160 mil. členů) www.passport.net www.passport.net  AOL  Liberty Alliance Project www.projectliberty.org www.projectliberty.org

54 (C) Ondřej Ševeček ondra @ sevecek. com Konec: Troubleshooting Active Directory #1 Děkuji za pozornost


Stáhnout ppt "(C) Ondřej Ševeček sevecek. com Windows User Group.CZ Troubleshooting Active Directory #1."

Podobné prezentace


Reklamy Google