Protokół Kerberos
Transkrypt
Protokół Kerberos
BSK_2003 Bezpieczeństwo systemów komputerowych Złożone systemy kryptograficzne mgr Katarzyna Trybicka-Francik [email protected] pok. 503 Protokół Kerberos Protokół Kerberos • Usługa uwierzytelniania • Projekt Atena • Problem BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 1 BSK_2003 Zagrożenia • Podszywanie się za innego użytkownika • Zmiana adresu sieciowego stacji roboczej • Atak typu „powtórka” BSK - 2003 Copyright by K. Trybicka-Francik Cechy • Centralny serwer uwierzytelniający • Korzysta wyłącznie z szyfrowania konwencjonalnego (symetrycznego) BSK - 2003 Copyright by K. Trybicka-Francik Metody zapewniania bezpieczeństwa • Architektura rozproszona składająca się ze stacji użytkowników i rozproszonych lub scentralizowanych serwerów • W sprawie zapewnienia właściwej tożsamości użytkownika lub użytkowników polegać na poszczególnych stacjach roboczych i powierzyć serwerom realizację kontroli dostępu na podstawie identyfikacji użytkownika (ID). • Wymagać od klientów uwierzytelniania się wobec serwerów, a w sprawie identyfikacji użytkownika polegać na klientach. • Wymagać od użytkownika udowodnienia swojej tożsamości przy wywoływaniu każdej usługi. Wymagać również by serwer udowadniał swoją tożsamość klientom. BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 2 BSK_2003 Wymagania • • • • Bezpieczny Pewny Przezroczysty Elastyczny • System uwierzytelniania z zaufaną stroną trzecią (Needham i Schroeder) BSK - 2003 Copyright by K. Trybicka-Francik Proste uwierzytelnienie (1) (2) (3) AS (serwer uwierzytelniający) C -> AS: IDC, PC, IDV AS -> C: Bilet C -> V: IDC, Bilet Bilet = Ekv [IDC, ADC, IDV] C (klient) V (serwer) Problemy • Nowe bilety na każdą usługę. Zminimalizowanie liczby sytuacji, gdy użytkownik musi podać hasło. • Przesył hasła w formie jawnej. BSK - 2003 Copyright by K. Trybicka-Francik Bezpieczne uwierzytelnianie AS (serwer uwierzytelniający) C (klient) TGS (serwer przyznawania biletów) V (serwer) BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 3 BSK_2003 Bezpieczne uwierzytelnianie • Raz na sesję użytkownika: (1) C -> AS: IDC, IDtgs (2) AS -> C: Ekc [Bilettgs] Raz na rodzaj usługi: (3) C -> TGS: IDC, IDV, Bilettgs (4) TGS -> C: BiletV Raz na sesję usługi: (5) C -> V: IDC, BiletV • • Bilettgs = Ektgs [IDC, ADC, IDtgs , TS1, Czas-życia1 ] BiletV = EkV [IDC, ADC, IDV , TS2, Czas-życia2 ] BSK - 2003 Copyright by K. Trybicka-Francik Problemy • Czas ważności „biletu na przyznanie biletu” • Potrzeba uwierzytelniania serwerów wobec użytkowników BSK - 2003 Copyright by K. Trybicka-Francik Uwierzytelnienie • Wymiana z serwerem uwierzytelniającym: uzyskanie „biletu na przyznanie biletu” (1) C -> AS: Opcje || IDC || KrólestwoC || IDtgs || Czasy || Identyfikator-jednorazowy1 (2) AS -> C: KrólestwoC || IDC || Bilettgs || Ekc [KC,tgs || Czasy|| Identyfikator-jednorazowy1 || Królestwotgs || IDtgs] Bilettgs = Ektgs [Flagi || KC,tgs || KrólestwoC || IDC || ADC || Czasy ] BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 4 BSK_2003 Uwierzytelnienie • Wymiana z TGS: uzyskanie biletu na usługę (3) C -> TGS: Opcje || IDV || Czasy || Identyfikator-jednorazowy2 || Bilettgs || Wartość-wierzytelniającaC (4) TGS -> C: KrólestwoC || IDC || BiletV || Ekc,tgs [KC,V Czasy || Identyfikator-jednorazowy2 || KrólestwoV || IDV] Bilettgs = Ektgs [Flagi || KC,tgs || KrólestwoC || IDC || ADC || Czasy] BiletV = EkV [Flagi || KC,V || KrólestwoC || IDC || ADC || Czasy] Wartość-uwierzytelniającaC = Ekc,V [IDC || KrólestwoC || TS1] BSK - 2003 Copyright by K. Trybicka-Francik Uwierzytelnienie • Uwierzytelnienie klient/serwer: uzyskanie usługi (5) C -> TGS: Opcje || BiletV || Wartość-uwierzytelniającaC (6) K -> C: Ekc,V [TS2 || Podklucz || # Kolejny] BiletV = EkV [Flagi || KC,V || KrólestwoC || IDC || ADC || Czasy] Wartość-uwierzytelniającaC = = Ekc,V [IDC || KrólestwoC || TS2 || Podklucz || #Kolejny] BSK - 2003 Copyright by K. Trybicka-Francik Żądanie „biletu na przyznanie biletu” KERBEROS Serwer uwierzytelniający (AS) Bilet + klucz sesji Żądanie biletu na usługę Serwer przyznający bilety TGS Bilet + klucz sesji Żądanie usługi Raz na sesję użytkownika Raz na typ usługi Raz na sesję usługi Dostarcza wartość uwierzytelniającą serwera BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 5 BSK_2003 „Królestwa” Kerberosa & „Kerberosy wielokrotne” • Serwer Kerberosa musi mieć identyfikatory i zaszyfrowane hasła wszystkich użytkowników w jego bazie danych. Wszyscy użytkownicy są zarejestrowani w serwerze Kerberosa. • Serwer Kerberosa musi mieć wspólny tajny klucz z każdym serwerem. Wszystkie serwery są zarejestrowane w serwerze Kerberosa. • Serwery Kerberosa w każdym królestwie muszą dzielić tajny klucz z serwerem drugiego królestwa. Oba serwery Kerberosa są u siebie nawzajem zarejestrowane. BSK - 2003 Copyright by K. Trybicka-Francik Królestwo A 1. Żądanie biletu do lokalnego TGS Klient KERBEROS 2. Bilet do lokalnego TGS AS 3. Żądanie biletu do odległego TGS TGS 4. Biletu do odległego TGS 7. Żądanie odległej usługi 5. Żądanie bilet do odległego serwera KERBEROS AS Klient 6. Bilet do odległego serwera TGS Królestwo B BSK - 2003 Copyright by K. Trybicka-Francik Żądanie usługi w innym „królestwie” (1) (2) (3) (4) (5) (6) (7) C -> AS: IDC || IDtgs || TS1 AS -> C: Ekc [KC,tgs || IDtgs || TS2 || Czas_życia2 || Bilettgs] C -> TGS: IDtgsrem || Bilettgs || Wartość-uwierzytelniającaC TGS -> C: Ekc,tgs [KC,tgsrem || IDtgsrem || TS4 || Bilettgsrem] C -> TGSrem: IDVrem || Bilettgsrem || Wartość-uwierzytelniającaC TGS -> C: Ekc,tgsrem [KC,Vrem || IDVrem || TS6 || BiletVrem] C -> Vrem: BiletVrem || Wartość-uwierzytelniającaC BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 6 BSK_2003 SSL Secure Soket Layer • • • • Realizacja szyfrowania Uwierzytelnienie serwera (ew. użytkownika) Zapewnienie integralności i poufności przesyłanych danych Połączenie kryptografii symetrycznej (transmisja) i niesymetrycznej (zestawienie połączenia) BSK - 2003 Copyright by K. Trybicka-Francik SSL - Secure Soket Layer Klient Przeglądarka WWW 1 nawiązanie połączenia https:// klucz publiczny serwera 3 weryfikacja serwera 4 generacja klucza sesji 5 Serwer WWW 2 zaszyfrowany kluczsesji BSK - 2003 Copyright by K. Trybicka-Francik Płatności cyfrowe BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 7 BSK_2003 Płatności internetowe Internetowa sieć płatnicza 3 4 8 9 Bank klienta Bank beneficjanta 5 2 1 10 7 1234 0000 0001 9876 6 Klient Sprzedawca BSK - 2003 Copyright by K. Trybicka-Francik Sprawdzanie numeru karty ISO 2894 • Sprawdzamy z ilu cyfr składa się numer karty. Jeżeli z parzystej liczby cyfr to pierwsza cyfra ma wagę 2, w przeciwnym wypadku 1. Wagi kolejnych cyfr zmieniają się cyklicznie (1, 2, 1, 2...) • Jeśli „ważona” wartość cyfry jest większa od 9, odejmij 9 • Wszystkie „ważone” sumujemy i dzielimy mod 10 • Wynik operacji powinien być równy 0 BSK - 2003 Copyright by K. Trybicka-Francik Sprawdzanie numeru karty 4402 1000 7198 4003 (4x2),(4x1),(0x2),(2x1), (1x2),(0x1),(0x2),(0x1), (7x2),(1x1),(9x2),(8x1), (4x2),(0x1),(0x2),(3x1), (8),(4),(0),(2), (2),(0),(0),(0), (14),(1),(18),(8), (8),(0),(0),(3), Pamiętaj: 8+4+2+2+5+1+9+8+8+3=50 nie używaj numeru tej karty – 50 to przestępstwo! mod 10 = 0 BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 8 BSK_2003 Kwit transakcji • • • • • • • • • Nazwisko klienta Numer karty płatniczej klienta Adres klienta Data transakcji Kwota transakcji Opis zakupionego produktu lub usługi Numer identyfikacyjny Kod autoryzacji Nazwa sprzedawcy BSK - 2003 Copyright by K. Trybicka-Francik Karty kredytowe w Internecie • Bez połączenia (offline) • Połączenia szyfrowane • Połączenia nieszyfrowane BSK - 2003 Copyright by K. Trybicka-Francik Internetowe systemy płatnicze • Niższy koszt transakcji • Anonimowość • Szerszy rynek BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 9 BSK_2003 Rodzaje systemów płatniczych • Anonimowe • Prywatne • Identyfikujące BSK - 2003 Copyright by K. Trybicka-Francik DigiCash Rejestracja 4 Konto depozytowe w instytucji finansowej 5 Mennica 2 1 Generacja cyfrowych monet 3 Cyfrowo podpisane monety Elektroniczna portmonetka BSK - 2003 Copyright by K. Trybicka-Francik DigiCash Zakupy Sklep internetowy Sprzedawca Elektroniczna portmonetka BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 10 BSK_2003 DigiCash Bezpieczeństwo i prywatność BSK - 2003 Copyright by K. Trybicka-Francik Virtual PIN Rejestracja 1 Wypełnić formularz rejestracyjny 3 2 4 Wirtualny PIN BSK - 2003 First Virtual Copyright by K. Trybicka-Francik Virtual PIN Sprzedawca Zakupy 1 Wirtualny PIN 2 4 5 3 First Virtual BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 11 BSK_2003 Virtual PIN Bezpieczeństwo i prywatność BSK - 2003 Copyright by K. Trybicka-Francik CyberCash & CyberCoin Rejestracja Ściągnąć CyberCash wallet 1 Klucze publiczny/prywatny 2 3 Formularz rejestracyjny CyberCash BSK - 2003 Copyright by K. Trybicka-Francik CyberCash & CyberCoin Sprzedawca Zakupy 1 Wybór karty i zatwierdzenie transakcji 6 2 5 3 4 Bank sprzedawcy BSK - 2003 Copyright by K. Trybicka-Francik First Virtual Copyright by K. Trybicka-Francik 12 BSK_2003 CyberCash & CyberCoin Bezpieczeństwo i prywatność BSK - 2003 Copyright by K. Trybicka-Francik SET • • • • Zagwarantowanie poufności transakcji Potwierdzenie tożsamości podmiotu transakcji Zapewnienie integralności danych dotyczących opłat za towar i usługi Wzajemne potwierdzenie tożsamości klientów i sprzedawców http://www.mastercard.com/set http://www.visa.com BSK - 2003 Copyright by K. Trybicka-Francik SET Szyfrowana kluczem sprzedawcy Szyfrowana kluczem banku Wiadomość Wiadomość klienta klienta dla sprzedawcy dla banku Skrót wiadomości Skrót wiadomości M1 M2 Podwójny podpis użytkownika M3 = skrót (M1 + M2) BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 13 BSK_2003 Mondex BSK - 2003 Copyright by K. Trybicka-Francik Systemy płatnicze - ocena Simson Garfinkel „WWW – Bezpieczeństwo i handel” Wydawnictwo Helion, Gliwice 1999 BSK - 2003 Copyright by K. Trybicka-Francik E-banki BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 14 BSK_2003 E-banki • Identyfikator i hasło (Citibank, LG Petro Bank) • Hasła maskowane i klucz prywatny (Bank BPH, Bank Śląski) • Lista haseł jednorazowych (mBank, Multibank, Inteligo, Nordea) • Token (Lukas Bank, Volkwagen Bank, Nordea, BGŻ, BZ WBK, Pekao SA, PKO BP) BSK - 2003 Copyright by K. Trybicka-Francik Token autoryzacja metodą synchronizacji czasu 1 Generacja hasła na bazie czasu i kluczu użytkownika 2 Logowanie na bazie PIN’u i hasła 5 Porównanie 3 PIN 4 Generacja klucza na bazie czasu i kluczu użytkownika BSK - 2003 Copyright by K. Trybicka-Francik Token autoryzacja metodą pytanie odpowiedź 1 PIN użytkownika 3 Użytkownik szyfruje liczbę swoim tajnym kluczem 2 Generacja liczby losowej 4 Serwer deszyfruje wiadomość 5 Porównanie BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 15 BSK_2003 Dziękuję za uwagę BSK - 2003 Copyright by K. Trybicka-Francik Copyright by K. Trybicka-Francik 16