Architektura Kerberos i przepływ biletów
Prześledzą Państwo pełny przepływ Kerberos: żądanie AS, wydanie TGT, bilet usługi i wzajemne uwierzytelnianie.
Architektura Kerberos i przepływ biletów to bezpłatna lekcja Cryptology Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Cryptology Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cryptology Academy zawiera 4 lekcji w sumie.
Początki Kerberos
Kerberos został opracowany w MIT w ramach projektu Athena w latach 80. XX wieku, aby zapewnić bezpieczne uwierzytelnianie sieciowe w rozproszonym środowisku obliczeniowym. Nazwa pochodzi od trójgłowego psa strzegącego podziemi. Kerberos zapewnia wzajemne uwierzytelnianie klientów i usług za pomocą zaufanej strony trzeciej: centrum dystrybucji kluczy.
Elementy centrum dystrybucji kluczy
KDC składa się z dwóch logicznych elementów: usługi uwierzytelniania (AS) i usługi przyznawania biletów (TGS). W Microsoft Active Directory obie usługi działają na kontrolerze domeny. AS obsługuje początkowe logowanie i wydaje bilety przyznawania biletów (TGT). TGS wydaje bilety usługowe umożliwiające dostęp do konkretnych usług.
Krok 1: AS-REQ (uwierzytelnianie początkowe)
Klient rozpoczyna uwierzytelnianie, wysyłając żądanie AS-REQ do usługi uwierzytelniania. Współczesny Kerberos wymaga wstępnego uwierzytelniania: klient szyfruje znacznik czasu swoim kluczem długoterminowym (wyprowadzonym z hasła), aby udowodnić znajomość hasła. Zapobiega to słownikowym atakom offline na niechronione komunikaty AS-REQ.
Krok 2: AS-REP (wydanie TGT)
AS weryfikuje dane wstępnego uwierzytelniania i odpowiada komunikatem AS-REP zawierającym bilet przyznawania biletów (TGT) zaszyfrowany kluczem długoterminowym konta krbtgt (którego klient nie może odszyfrować) oraz klucz sesji zaszyfrowany kluczem długoterminowym klienta. Klient odszyfrowuje tylko przeznaczoną dla siebie część, aby uzyskać klucz sesji TGS.
Krok 3: TGS-REQ (żądanie dostępu do usługi)
Gdy klient chce uzyskać dostęp do usługi, wysyła żądanie TGS-REQ do usługi przyznawania biletów, dołączając TGT (jako dowód tożsamości) oraz uwierzytelniacz zaszyfrowany kluczem sesji TGS. TGS odszyfrowuje TGT za pomocą klucza krbtgt, aby zweryfikować tożsamość klienta.
Krok 4: TGS-REP (wydanie biletu usługowego)
TGS odpowiada biletem usługowym zaszyfrowanym kluczem długoterminowym docelowej usługi oraz nowym kluczem sesji zaszyfrowanym dla klienta. Klient nie może odczytać zawartości biletu usługowego, a jedynie przeznaczoną dla siebie zaszyfrowaną część. Bilet usługowy potwierdza tożsamość klienta wobec usługi.
Krok 5: AP-REQ (dostęp do usługi)
Klient wysyła żądanie AP-REQ do docelowej usługi, dołączając bilet usługowy oraz nowy uwierzytelniacz zaszyfrowany kluczem sesji usługi. Usługa odszyfrowuje bilet usługowy za pomocą własnego klucza długoterminowego, weryfikuje uwierzytelniacz i uwierzytelnia klienta. Hasło nigdy nie jest wysyłane do usługi.
Obszary Kerberos i zaufanie między obszarami
Obszar Kerberos to domena administracyjna zarządzana przez pojedyncze KDC. Uwierzytelnianie między obszarami jest ustanawiane za pomocą kluczy międzyobszarowych współdzielonych przez KDC różnych obszarów. Gdy klient w obszarze A uzyskuje dostęp do usługi w obszarze B, KDC w obszarze A wydaje bilet przekierowania, który klient przedstawia KDC obszaru B.
Czas życia i odnawianie biletów
Bilety Kerberos mają skonfigurowany czas życia (zwykle 10 godzin w przypadku TGT), po którego upływie wygasają i wymagane jest ponowne uwierzytelnienie. TGT można również skonfigurować jako odnawialne, dzięki czemu klient może zażądać od KDC nowego TGT bez ponownego wprowadzania danych uwierzytelniających, aż do osiągnięcia maksymalnego czasu odnawiania.
Klucze długoterminowe a klucze sesji
Kerberos używa dwóch rodzajów kluczy. Klucze długoterminowe są wyprowadzane z haseł kont i służą wyłącznie do szyfrowania części komunikatów uwierzytelniania. Klucze sesji są negocjowane od nowa dla każdej wymiany uwierzytelniającej i służą do właściwej komunikacji w ramach sesji. Złamanie klucza sesji nie ujawnia klucza długoterminowego.
Właściwości bezpieczeństwa Kerberos
Kerberos zapewnia wzajemne uwierzytelnianie (weryfikowani są zarówno klient, jak i usługa), ochronę przed powtórzeniem (dzięki znacznikom czasu i uwierzytelniaczom) oraz forward secrecy poszczególnych sesji. Podczas normalnego działania KDC nigdy nie ujawnia kluczy długoterminowych. Główne założenie zaufania jest takie, że samo KDC nie zostanie przejęte.
Sprawdzenie typów biletów Kerberos
Do czego służy bilet przyznawania biletów (TGT) w systemie Kerberos?
Podsumowanie lekcji: przepływ biletów Kerberos
Kerberos korzysta z KDC zawierającego komponenty AS i TGS. Logowanie powoduje uzyskanie TGT (AS-REQ/AS-REP). Dostęp do usługi wymaga wymiany TGT na bilet usługowy (TGS-REQ/TGS-REP). Bilet usługowy jest przedstawiany docelowej usłudze (AP-REQ). Tylko KDC i odpowiednie usługi mogą odczytywać bilety. Obszary umożliwiają uwierzytelnianie między domenami dzięki zaufaniu międzyobszarowemu.
Często zadawane pytania
Czy lekcja „Architektura Kerberos i przepływ biletów” jest bezpłatna?
Tak — pełny tekst „Architektura Kerberos i przepływ biletów” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Cryptology Academy, przejdź na CoddyKit PRO. Kurs Cryptology Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Architektura Kerberos i przepływ biletów”?
Prześledzą Państwo pełny przepływ Kerberos: żądanie AS, wydanie TGT, bilet usługi i wzajemne uwierzytelnianie. Ćwiczysz Cryptology Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Cryptology Academy?
Nie wymagamy żadnego doświadczenia. Cryptology Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.
Ile czasu zajmuje lekcja „Architektura Kerberos i przepływ biletów”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Cryptology Academy?
Tak. Każda lekcja Cryptology Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Architektura Kerberos i przepływ biletów
- Integracja Active Directory i Kerberos
- Techniki ataków na Kerberos: Kerberoasting i Golden Ticket
- Nowoczesna tożsamość: SAML, OIDC i podejścia hybrydowe