360 likes | 439 Views
Hálózati Operációs Rendszerek. Kerberos, Windows Biztonsági arch., Active Directory bizt. arch. Előadó: Bilicki Vilmos bilickiv@inf.u-szeged.hu www.inf.u-szeged.hu/~bilickiv. Forrás. Kerberos: ( http://www.windowsitlibrary.com/Content/617/06/toc.html )
E N D
Hálózati Operációs Rendszerek Kerberos, Windows Biztonsági arch., Active Directory bizt. arch. Előadó: Bilicki Vilmos bilickiv@inf.u-szeged.hu www.inf.u-szeged.hu/~bilickiv
Forrás • Kerberos: (http://www.windowsitlibrary.com/Content/617/06/toc.html) • Kerberos White Paper (http://www.microsoft.com/windows2000/techinfo/howitworks/security/kerberos.asp)
Tartalom (1) • Kerberos újra • Közös kulcs • Kulcs kezelés • KDC • Kulcs elosztás • Kulcs tipusok • Jegy igénylő jegy • Jegy tulajdonságok • Azonositás delegálás • Smart card bejelentkezés
Tartalom (2) • Windows biztonsági architektúra • Elemek • Bejelentkezés tipusok • Interaktiv • Nem interaktiv • Számitógép indulás • Objektum biztonság az AD.-ben
A Kerberos azonosítás a szimmetrikus titkosításon alapul • DK(EK(M)) = M; • Hasonló megoldás van NTLM esetén is: • Ha a közös kulccsal van titkosítva akkor a másik fél hiteles • Titkosított Csomag: • Azonosító (authenticator) mindig mást kell titkositania • Közös titkos kulcs: • Viszony Kulcs (session key) • Kritikus elem: • Időbélyeg (Time Stamp) kisebb a kulönbség mint 5 perc, sorrend figyelés • Kölcsönös azonosítás: • A szerver is megteszi ugyanezt
Kulcs elosztás • Hogyan osztjuk ki a kulcsokat (nem csak )emberek, … • Kerberos nélkül: • n (n — 1)/2 kulcs(50,000 -> 1,500,000,000) • Minden kliensen • Kerberos : Három entitás: • Két kommunikáló fél • Közvetitő fél (Key Distribution Center - KDC) • Minden egyed rendelkezik egy-egy KDC-vel közös kulccsal • Az Egyed Mester Kulcsa (Master Key) (pl: a felh. Jelszavából, MD5 tárolás, létrehozáskor), hosszútávú kulcs • Kerberos tartományok • Windows 2000: • Dcpromo -> kdc szolgáltatás (minden DC írható/olvasható KDC adatbázis) • Azonosító szolgáltatás • Jegy Kiadó Szolgáltatás • Multimaster
Kerberos jegy • Biztonságos csatorna építhető ki a segítségével • Kereberos: • Azonosító Szolgáltatás (Authentication Service) • Jegykiosztó Szolgáltatás (Ticket-Granting Service) • Mindenki megbízik a KDC által legyártott viszonykulcsokban (nem csak a Master Key-ben) • A viszonykulcs minősége a Windows 2000 véletlen szám generátorától függ (Nem a felh. Jelszótól !!!) • A KDC-nek kellene a viszony kulcsokat kiosztani : • A közös kulccsal titkosítja (user, szerver) (Kerberos terminológia : jegy ticket))
Kulcs hierarchia • A biztonság növelése érdekében, a gyakran használt kulcsokat gyakrabban változtatják és erősebb kulcsokat generálnak (felh. jelszó): • A magasabb szintű kulcsok védik az alacsonyabb szintű kulcsokat • A magasabb szintű kulcsok hosszabb élettartamúak
Kulcs elosztás • Két megoldás lehetséges: • Mindkét fél a szervertől kapja meg: • Az erőforrás szervernek minden kulcsot tárolnia kellene • Szinkronizációs problémák • A szerver a kezdeményező félnek küldi el mindkét jegyet • Egyszerű azonosítás (elküldi a jegyet) • Gyors azonosítás (tárolhatja a jegyet) • Egyszerűbb terhelés elosztás (csak másik jegyet kell küldeni) • A kulcsok egy speciális memória területen tárlódnak és soha sem kerülnek ki a merevlemezre (klist.exe, kerbtray.exe ürítés )
Jegy biztosító jegyek (ticket-granting ticket ) • Minden egyes viszony kulcs létrehozására a felhasználó mester kulcsát használtuk • Könnyebben visszafejthető szótáras támadással (L0phtcrack ) • Az első azonosítás után egy TGT-t, és egy viszony kulcsot kap a felhasználó e jegy segítségével titkosítja az üzeneteket a KDC számára • A TGT újrahasznosítható az élettértartamán belül • A KDC nem tartja nyilván a TGT-ket • Gyorsabb megoldás mivel nem kell keresgélnie az adatbázisában
Kerberos működése • KRB_AS_REQ • KRB_AS_REP • KRB_TGS_REQ • KRB_TGS_REP • KRB_AP_REQ • KRB_AP_REP
Adat titkosítás • A viszony kulcs az adat: • Aláírására • Titkosításárahasználható. (CIFS) • HKLM\System\CurrentControlSet\Services\LanManServer\Parameters • EnableSecuritySignature • RequireSecuritySignature • HKLM\System\Current-ControlSet\Services\Rdr\Parameters • Q161372
Bejelentkezés egy Windows 2000 szerverbe Helyi bejelentkezés (Egy tartományos modell): • <CTRL><ALT><DEL> • DNS keresés (_kerberos , _kpasswd ) • KRB_AS_REQ • Az Azonosító Szolgáltatás azonosítja a felhasználót majd KRB_AS_REP üzenetet küld. • A helyi gép egy KRB_TGS_REQüzenetet küld. • A kdc KRB_TGS_REP választ küld • A jegyet megvizsgálja az LSA
Jegy tulajdonságok • FORWARDABLE • A szerver szerzi be a jegyet • FORWARDED • PROXIABLE • Kliens szerzi be a jegyet • Tudni kell a háttérszerver adatait • PROXY • RENEWABLE • A viszony kulcsok cserélhetőek a jegy újragenerálása nélkül • Aktuális kulcs időtartam (tipikusan egy nap) • Teljes kulcs időtartam (néhány hét) • INITIAL
Hálózati bejelentkezés • KRB_TGS_REQ • KRB_TGS_REP • KRB_AP_REQ • KRB_AP_REP
Bejelentkezés más tartományba • A felhasználó vagy az erőforrás más tartományhoz tartozik (Alice Europe, Gép NA). • KRB_AS_REQ és KRB_AS_REP (Europe) • KRB_TGS_REQ , KRB_TGS_REP • KRB_TGS_REQ Europe • Hivatkozó jegy NA irányába (compaq.com, tartományközi jelszó) • DNS kdc keresés compaq.com-ban • Hivatkozó jegy NA-ra • KDC keresés NA-ban • TGS_REP az erőforrásra • Ez nem történik meg minden alkalommal (tárolás), a csomagok kicsik
Tartományok közötti kapcsolat • Tartományi megbízott fiókok • A tartomány közti azonosítást a speciális megbízó (principal) fiókot tárol a másik tartományról • Tartomány közti kulcsok (inter-realm key) • A kulcs a jelszóból származik mely megfelelő időközönként cserélődik • Valós megbízotti kapcsolat: • Közös titkos kulcs (dcpromo) • krbtgt fiók: • Az ő jelszava lesz a Master Key • A jelszó menetrend szerint váltakozik • Jelentős DC használat (principal, tartomány)
Smart card belépés • PKINIT • CA használat • Menet: • PA-PK-AS-REQ • …
Win 2K Biztonsági arch. • Feladatok: • Azonositás • NTLM • Kerberos • TLS • Jogosultság kezelés • Bejelentkezés tipusai: • Helyi (Interaktiv) • Hálózati (Nem interaktiv) • Kötegelt (at, winat) • Szolgáltatás
Az NTLM interaktív bejelentkezés folyamata • CTRL+ALT+DEL (Secure Attention Sequence [SAS])) • Winlogon szolgáltatás -> GINA modul (Graphical Identification and Authentication ) • Egyed azonosítás pl.: login+jelszó -> SID, Smart Card + PIN • Azonosító hatóság (LocalSecurityAuthority) helyi vs. dc, kernel komp. • LSA: • MSV1_0 SAM adatbázis • MSV1_0, Net Logon (LSA DC) • Kerberos • SAM -> LSA HKEY_LOCAL_MACHINES\System\CurrentControlSet\Control \Lsa\AuthenticationPackages
Nem Interaktív bejelentkezés • Elosztott rendszerek • Outloook, Exchange • Kommunikáció: • RPC, SMB, • HTTP, LDAP, POP3,… • SSPI (Security Support Provider Interface) • Elrejti a különbséget az azonosító, titkosító protokollokközött • Elrejti a különbséget az átviteliprotokollok között • Security Support Providers • A biztonsági protokollt valósítjameg • NTLM, Kerberos, SChannel, DPA
Egyeztetés • RFC 2478 • Windows 2000 • Kerberos • NTLM • LMCompatibilityLevel (Q147706 )
Számítógép indulás • DHCP, IP • LDAP szerver keresés(hely alapján)_ldap._tcp.default-first-site-name._sites.dc._msdcs.<domain name> • LDAP keresés (DC comp. account) • DC Netlogon-> bizt. Csat • _kerberos._tcp.default-first-site-name._sites.dc._msdcs.<domain name> keresés • Minden szolgáltatást azonosit • DFS konfig • RPC segítségével DN név generálás
Objektum biztonság az AD.-ben • Objektum alapú biztonsági modell • AD biztonsági komponensek • Felhatalmazó és Rendszer Hozzáférés Vezérlő Listák • Hozzáférés Vezérlő Bejegyzések • Általános • AD • Tiltás, Engedélyezés, Auditálás • Öröklődés • Belépési folyamat
Active Directory Biztonsági Komponensek • Biztonsági Alanyok • Felhasználó, biztonsági csoport, szolgáltatás, számítógép • Egyedi azonosítóval azonosítva • Biztonsági azonosítók (SIDs) • Azonosítják a biztonsági alanyokat • Soha nem használják újra • Biztonsági Leírók • Az objektummal kapcsolatos információk • Tartalmazza a DACL-eketés a SACL-eket
Biztonsági Leirók Fejléc Tulajdonos SID Csoport SID DACL ACEs SACL ACEs Felhatalmazó és Rendszer Hozzáférés Vezérlő Listák • Bináris adatstruktúra • Felhatalmazó Hozzáférés Vezérlő Listák(DACL) • Azonosítja a biztonsági alanyokat melyek számára engedélyezve vagy tiltva van a hozzáférés • Rendszer Hozzáférés Vezérlő Listák (SACL) • Az objektum hozzáférést naplózza
DACL Adat Felépités A hozzáférés tiltására használjuk a DACL-ben Fejléc Control Flags SID Felh. SID Csop. A hozzáférés engedélyezésre használjuk a DACL-ben ACE Hozzáf.Tiltva ACE Hozzáf.Eng. A tulajdonságok hozzáférésére és az öröklődés szabályozására használjuk ACE Hozzáf. Tiltva Obj. Tul. ACE Hozzáf. Eng. Obj. Tul. Hozzáférés Maszk Hozzáférés Szabályozó Bejegyzések
DACL DACL-eköröklődnek a gyermek objktumoknak A szülő objektum hozzáférési jogával rendelkező felhasználók User 1 Olvasás Group 1 Full Control DACL User 1 Olvasás Szülő Objektum Group 1 Full Control Gyermek Objektum Öröklődés • Nem kell a gyermek objektumok jogait manuálisan állítgatni • Garantálja, hogy a szülő beállításai a gyermekre is érvényesek • Csak a szülő objektum jogait kell változtatni • Minden más ACE-t felülír
A bejelentkezési folyamat Domain Controller Local Security Subsystem 1 2 Ticket Kerberos Service 3 Ticket Access Token Constructs Access Token 4 Ticket 6 5 Global Catalog Server A Felhasználó belép A KDC küld egy jegyet 1 4 A Helyi biztonsági alrendszer egy jegyet kér a felhasználónak A helyi biztonsági alrendszer létrehoz egy hozzáférési jelet 2 5 A helyi biztonsági alrendszer kér egy munka állomás jegyet A hozzáférési jel a felhasználó porcesszéhez lesz csatolva 3 6
Hozzáférési Jel Security ID: S-1-5-21-146... Group IDs: Employees EVERYONE LOCAL User Rights: SeChangeNotifyPrivilege - (attributes) 3 SeSecurityPrivilege - (attributes) 0 HozzáférésiJel Hozzáférési Jelek: • A bejelentkezés folyamán hozzák létre és minden egyes objektum hozzáféréskor felhasználják • Tartalmaz SID-et, mely azonosítja a felhasználót • Tartalmaz egy vagy több Csoport ID-t, amely csoportokhoz a felhasználó tartozik • Tartalmazza a felhasználó jogait
Domain Access File Read Allowed OU1 OU2 User Application Sends Read Request User 1 Read ACE Found Security Subsystem Security Subsystem Checks Appropriate ACE in DACL for File DACL SID User SID Group ACE Access Allowed Erőforrások Hozzáférése
Tartalom (1) • Kerberos újra • Közös kulcs • Kulcs kezelés • KDC • Kulcs elosztás • Kulcs tipusok • Jegy igénylő jegy • Jegy tulajdonságok • Azonositás delegálás • Smart card bejelentkezés
Tartalom (2) • Windows biztonsági architektúra • Elemek • Bejelentkezés tipusok • Interaktiv • Nem interaktiv • Számitógép indulás • Objektum biztonság az AD.-ben
A következő előadás tartalma • Windows biztonsági architektúra • Active Directory biztonsági architektúra