Bezpieczeństwo systemów komputerowych. Temat seminarium: cos o dnsie, Selinuxie i itd. Autor: Jan Kowalski 1
Czym jest Kerberos? Kerberos jest usług ą uwierzytelniania i autoryzacji urzytkoweników w sieciach komputerowych. System Kerbereos... jest... - Bezpieczn ą (Secure) - Zaufan ą postronn ą usług ą (Trusted third-party) zapewnia... - Jednokrotne logowanie do sieci (Single sign-on) - Wzajemne, obustrone uwierzytelnianie (Mutual authentication)
Cele. Zadaniem systemu Kerberos jest zapewnienie wysokiego poziomu bezpieczeństwa oraz wygody urzytkowania. - Zapewnia bezpieczne uwierzytelnianie w sieciach, które nie s ą bezpieczne (TCP/IP). - Zwiększenie zarówno bezpieczeństwa jak i wygody osiągane jest poprzez ograniczenie liczby haseł jakie pojedynczy użytkownik musi podawać w codziennej pracy z komputerem. - Architektura systemu ma charakter zcentralizowany.
Ewolucja. - Kerberos 1,, 3 wykorzystywane w celach testowych przez twórców. - Kerberos 4 1989 zaadoptowany przez kilka duzych projektów (Andrew File System), zaimplementowany w kilku systemach operacyjnych. - Kerberos 5 Windows 000
3A. 3 kluczowe pojęcia w dziedzinie bezpieczeńsatwa. - Authentication (uwierzytelnianie) zadanie określenia tożsamości danej osoby. - Autoryzacja (Authorization) zadanie określenia kompetencji danej osoby. - Audit monitorowanie i analizowanie przebiegu powyższych.
Kryptografia w Kerberosie. - Szyfrowanie wiadomości (Message encryption): DES (najpowszechniejszy), trwaj ą prace nad wykorzystaniem Triple DES, oraz AES, RC4 (Windows) - Spójność wiadomości (Message integity): CRC-3, MD5, SHA1
Terminologia specyficzna dla Kerberosa (1). - Principal (Identyfikator): unikalna nazwa skojarzona z pojedynczym zasobem znajdującym si ę pod kontrol ą systemu Kerberos (usługa, użytkownik jaki ś zasób): KRB4: component[.component]@realm user[.instance]@realm service.hostname@realm KRB5: component[/component]...[/component]@realm user[/instance]@realm service/fully_qualifed_domain_name@realm
Terminologia specyficzna dla Kerberosa (). - Realm (Dziedzina) związana z pojedyncz ą instalacj ą kerberosa, określa zakres unikalności identyfikatorów zazwyczaj jest to nazwa domeny DNS np. cs.put.poznan.pl. - Instance w przypadku użytkownika okresla rol ę w jakiej chce zalogować si ę do sieci, w przypadku usługi jest to pełna nazwa serwera (KRB5), lub nazwa hosta (KRB4). - stringkey funkcja zamienia hasło użytkownika na ciąg bitów o odpowiedniej długości - salt operacja polegająca na dodaniu do hasła ciągu znaków w celu zapewnienia większej unikalności
Protokół Needham-Shroeder (1). - Podstawowy schemat działania systemu Kerberos wzorowany jest na protokole Needham-Shroeder (1978). - Protokół ten stanowi rodzaj koncepcji budowy systemu autoryzacji dla dużych sieci komputerowych. - Protokól zakładał że haker jest wstanie przechwytywać, kopiować oraz generować pakiety sieciowe. - Protokół zakładał równie i hasła u ytkowników ż ż ż nie są łatwe do złamania.
Protokół Needham-Shroeder (). - W procesie uwierzytelniania bior ą udział 3 strony: Klient Usługa (serwer poczty, FTP, TELNET etc.) Serwer uwierzytelniający (Authentication Server AS) - Celem procesu jest dostarczenie klientowi i usłudze po jednym tajnym kluczu który mog ą wykorzystać we wzajemnej komunikacji. Uwierzytelnienie obu stron jest niejako skutkiem ubocznym tego procesu.
Protokół Needham-Shroeder (). Etap pierwszy stacja klienta kontaktuje si ę z serwerem uwierzytelniającym. Rządanie zawiera: identyfikator usługi, identyfikator użytkownika, dowolne określone słowo.
Protokół Needham-Shroeder (3). - AS odbiera wiadomość od klienta, odszukuje w swojej bazie danych tajny klucz klienta oraz tajny klucz usługi. - AS tworzy dwie kopie nowego klucza (klucza sesji). Klucz sesji generowany jest w sposób całkowicie losowy służy do zaszyfrowania przyszłej komunikacji pomiędzy klientem a usług ą. - Odpowied ź serwera uwierzytelniającego zawiera: identyfikator usługi, kopi ę klucza sesji, słowo przesłane w rządaniu uwierzytelnienia + bilet, czyli zaszyfrowane kluczem usługi: identyfikator użytkownika, kopie klucza sesji. Wszystko razem zaszyfrowane jest kluczem użytkownika.
Protokół Needham-Shroeder (4). Odpowied ź serwera uwierzytelniającego:
Protokół Needham-Shroeder (5). - Klient odbiera odpowied ź od serwera i rozszyfrowuje j ą za pomoc ą swojej kopii klucza. - Po rozszyfrowaniu wiadomości sprawdza czy identyfikator usługi został odszyfrowany poprawnie jeśli tak to deszyfracja powiodła si ę. - Klient przesyła bilet otrzymany od AS do serwera usługi. - Usługa odszyfrowuje bilet przysłany przez klienta, i pobiera z niego identyfikator klienta oraz klucz sesji. - Od tej pory cała komunikacja pomiędzy klientem a usług ą może być szyfrowana za pomoc ą klucza sesji.
Protokół Needham-Shroeder (6). - W efekcie tego procesu: Serwer usługi wie że klient X został uwierzytelniony (bo udało mu si ę uzyskać bilet z identyfikatorem X, a zatem musiał znać hasło nie wie natomiast czy osoba która przysłała bilet to X). Klient X wie oserwerze usługi tylko tyle ż e je ś li rzeczywiście tym za co si ę podaje to posiada kopie klucza sesji, jeżeli nie jest nadal może podszywać si ę pod serwer usługi. Pełne obustronne uwierzytelnienie następuje w momencie nawiązania komunikacji która jest szyfrowana przy pomocy klucza sesji.
Tu pisac
Tu pisac
Tu pisac
Tu pisac
Tu pisac
Tu pisac
Tu pisac
Tu pisac
Tu pisac
Tu pisac
Tu pisac
Tu pisac
Tu pisac
Tu pisac
Podsumowanie: Tu pisac 3