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