Cyber Security Academy · Lekcja

Uwierzytelnianie Windows: NTLM i Kerberos

Poznają Państwo działanie mechanizmu challenge-response NTLM oraz przyznawania biletów przez Kerberos.

Lekcja 1 z 413 kroki

Uwierzytelnianie Windows: NTLM i Kerberos to bezpłatna lekcja Cyber Security 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 Cyber Security Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cyber Security Academy zawiera 4 lekcji w sumie.

Przegląd uwierzytelniania w systemie Windows

System Windows używa dwóch głównych protokołów uwierzytelniania: NTLM (starszy, typu challenge-response) oraz Kerberos (nowoczesny, oparty na biletach). Zrozumienie obu jest niezbędne do atakowania i ochrony Active Directory.

Uwierzytelnianie NTLM typu challenge-response

NTLM działa w trzech komunikatach: Negotiate, Challenge i Authenticate. Klient haszuje hasło użytkownika wraz z losowym wyzwaniem serwera. Przesyłany jest skrót — nie hasło w postaci jawnej.

# NTLM flow:
# 1. Client sends: NEGOTIATE
# 2. Server sends: CHALLENGE (8-byte nonce)
# 3. Client sends: NT hash of (password + nonce)
#
# The NT hash = MD4(UTF-16LE(password))

Wektor ataku Pass-the-Hash

Ponieważ NTLM uwierzytelnia za pomocą skrótu, kradzież skrótu pozwala uwierzytelnić się bez znajomości hasła w postaci jawnej. Na tym opierają się ataki Pass-the-Hash — skrót JEST poświadczeniem.

Przegląd protokołu Kerberos

Kerberos korzysta z zaufanej strony trzeciej (KDC — Key Distribution Center), która wydaje bilety. Zapewnia wzajemne uwierzytelnianie i po początkowym wydaniu TGT eliminuje konieczność przesyłania poświadczeń przez sieć.

# Kerberos components:
# KDC: Key Distribution Center (domain controller)
# AS: Authentication Service (issues TGTs)
# TGS: Ticket Granting Service (issues service tickets)
# TGT: Ticket Granting Ticket (proves identity)
# ST: Service Ticket (grants access to a service)

Przebieg uwierzytelniania Kerberos

1. Klient wysyła do AS żądanie AS-REQ (zaszyfrowane skrótem hasła). 2. AS zwraca TGT zaszyfrowany kluczem krbtgt. 3. Klient przedstawia TGT serwerowi TGS, żądając biletu usługi. 4. Klient przedstawia bilet usługi docelowej usłudze.

Najważniejsze bilety Kerberos

TGT (bilet przyznawania biletów): potwierdza tożsamość w KDC i jest ważny przez około 10 godzin. Bilet usługi: zapewnia dostęp do określonej usługi. Oba bilety są szyfrowane kluczami, których klient nie może odczytać.

# View tickets on Windows:
klist

# View on Linux (with Kerberos client)
klist -v

# Request a TGT:
kinit username@DOMAIN.COM

NTLM i Kerberos: porównanie bezpieczeństwa

Kerberos jest preferowany: obsługuje wzajemne uwierzytelnianie, nie przesyła danych w postaci jawnej i jest trudniejszy do wykorzystania w atakach typu relay. NTLM jest używany awaryjnie, gdy Kerberos zawiedzie (np. przy dostępie za pomocą adresu IP lub do hostów spoza domeny) — napastnicy wymuszają przełączenie na NTLM, aby przechwycić skróty.

Ataki typu NTLM relay

NTLM relay polega na przechwyceniu próby uwierzytelniania NTLM i przekazaniu jej do innej usługi, co umożliwia uwierzytelnienie jako ofiara bez znajomości jej hasła. Responder przechwytuje dane, a ntlmrelayx przekazuje je dalej.

# Capture NTLM hashes with Responder
responder -I eth0 -rdwv

# Relay with ntlmrelayx
ntlmrelayx.py -tf targets.txt -smb2support

Wstępne uwierzytelnianie Kerberos

Wstępne uwierzytelnianie wymaga, aby klient zaszyfrował znacznik czasu swoim skrótem hasła przed otrzymaniem TGT. Konta, dla których wstępne uwierzytelnianie nie jest wymagane, są podatne na AS-REP Roasting — ich TGT można pobrać i łamać offline.

Złote i srebrne bilety

Złoty bilet: sfałszowany TGT podpisany skrótem krbtgt — zapewnia dostęp do wszystkiego. Srebrny bilet: sfałszowany bilet usługi dla określonej usługi — jest trudniejszy do wykrycia i nie komunikuje się z KDC.

Wzmacnianie uwierzytelniania systemu Windows

Wyłącz NTLM wszędzie, gdzie to możliwe, wymuś podpisywanie SMB, aby zapobiegać atakom relay, wymagaj wstępnego uwierzytelniania na wszystkich kontach, monitoruj nietypowe żądania biletów (identyfikatory zdarzeń 4768 i 4769) oraz chroń konto krbtgt.

Szybkie sprawdzenie

Co umożliwia TGT Kerberos?

Podsumowanie: NTLM i Kerberos

NTLM uwierzytelnia za pomocą mechanizmu wyzwanie–odpowiedź wykorzystującego skrót — jest podatny na ataki relay i pass-the-hash. Kerberos używa biletów wydawanych przez zaufany KDC — jest bezpieczniejszy, ale podatny na Kerberoasting, AS-REP Roasting oraz ataki z użyciem złotych i srebrnych biletów po przejęciu KDC. Znajomość obu protokołów pozwala zrozumieć ścieżki ataków w Active Directory i zastosować odpowiednie mechanizmy wzmacniania zabezpieczeń.

Bezpłatny start

Ucz się Cyber Security Academy dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
76
Lekcje
303

Często zadawane pytania

Czy lekcja „Uwierzytelnianie Windows: NTLM i Kerberos” jest bezpłatna?

Tak — pełny tekst „Uwierzytelnianie Windows: NTLM i Kerberos” 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 Cyber Security Academy, przejdź na CoddyKit PRO. Kurs Cyber Security Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Uwierzytelnianie Windows: NTLM i Kerberos”?

Poznają Państwo działanie mechanizmu challenge-response NTLM oraz przyznawania biletów przez Kerberos. Ćwiczysz Cyber Security 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ąć Cyber Security Academy?

Nie wymagamy żadnego doświadczenia. Cyber Security 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 „Uwierzytelnianie Windows: NTLM i Kerberos”?

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 Cyber Security Academy?

Tak. Każda lekcja Cyber Security 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

  1. Uwierzytelnianie Windows: NTLM i Kerberos
  2. Ataki Pass-the-Hash i Pass-the-Ticket
  3. Kerberoasting i AS-REP Roasting
  4. Hartowanie Active Directory
← Powrót do Cyber Security Academy