Kerberoasting
Łamanie biletów usług
Kerberoasting to bezpłatna lekcja Ethical Hacking Academy na CoddyKit. To lekcja 2 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 Ethical Hacking Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Ethical Hacking Academy zawiera 4 lekcji w sumie.
Czym jest Kerberoasting?
Kerberoasting to atak wymierzony w konta usług w Active Directory. Każdy uwierzytelniony użytkownik domeny może zażądać biletu usługi dla konta, które ma skonfigurowaną nazwę Service Principal Name (SPN).
Część tego biletu jest szyfrowana za pomocą skrótu hasła konta usługi, więc atakujący może złamać ją offline, bez kontaktowania się z tym kontem.
Dlaczego to działa
Gdy użytkownik żąda biletu usługi (TGS), KDC szyfruje jego część za pomocą skrótu NTLM hasła konta usługi.
Ponieważ każdy użytkownik domeny może zażądać takiego biletu i nie są do tego potrzebne specjalne uprawnienia, atakujący po prostu zbiera bilety i łamie je w dogodnym czasie na własnym komputerze.
Wyszukiwanie kont SPN
Najpierw należy wyliczyć konta, dla których ustawiono SPN. Zwykle są to konta usług uruchamiających SQL, usługi internetowe lub inne usługi.
Konta użytkowników (a nie komputerów) z SPN są idealnymi celami, ponieważ ich hasła często ustalają ludzie i rzadko się je zmienia.
# PowerView
Get-DomainUser -SPN | select samaccountname,serviceprincipalnameŻądanie biletów za pomocą Rubeus
Rubeus to popularne narzędzie napisane w C# do nadużywania Kerberos. Polecenie kerberoast żąda biletów TGS dla kont SPN i wyświetla je w formacie możliwym do złamania.
Ten krok jest cichy: wygląda jak normalny ruch Kerberos pochodzący od prawidłowego użytkownika.
Rubeus.exe kerberoast /outfile:hashes.txtŻądanie biletów za pomocą Impacket
Z systemu Linux narzędzie Impacket i jego skrypt GetUserSPNs.py wykonują ten sam atak zdalnie, używając prawidłowych danych uwierzytelniających domeny.
Jest to przydatne podczas działań zewnętrznych lub symulujących wcześniejsze naruszenie, gdy ma się już jeden zestaw danych uwierzytelniających użytkownika o niskich uprawnieniach.
GetUserSPNs.py corp.local/lowuser:Password1 -dc-ip 10.0.0.10 -requestFormat skrótu
Przechwycony bilet jest zapisywany w formacie rozpoznawanym przez Hashcat jako tryb 13100 (Kerberos 5 TGS-REP etype 23, RC4).
Każdy skrót zaczyna się od $krb5tgs$23$, po którym następują SPN, konto i zaszyfrowany obiekt blob. To właśnie przekazuje się do programu łamiącego hasła.
$krb5tgs$23$*svc_sql$CORP.LOCAL$MSSQL/...*$a1b2c3...Cracking za pomocą Hashcat
Cracking offline polega na użyciu listy słów (często wraz z regułami) wobec przechwyconych hashy. Ponieważ bilety RC4 można szybko testować, słabe hasła kont usług są szybko łamane.
Dlatego hasła kont usług powinny być długie i losowe, a najlepiej zarządzane przez Group Managed Service Accounts (gMSA).
hashcat -m 13100 hashes.txt rockyou.txt -r best64.ruleTypy szyfrowania mają znaczenie
Jeśli konto obsługuje RC4 (etype 23), cracking przebiega szybko. Jeśli dozwolone jest wyłącznie AES (etype 17/18), cracking jest znacznie wolniejszy, ale nadal możliwy (tryby Hashcat 19600/19700).
Atakujący mogą nawet obniżyć żądany typ szyfrowania, aby wymusić użycie słabszego biletu RC4.
Wykrywanie i obrona
Obrońcy monitorują nietypowo dużą liczbę żądań TGS, zwłaszcza dotyczących biletów RC4 (identyfikator zdarzenia 4769). Działania ograniczające ryzyko obejmują:
- Długie, losowe hasła kont usług (co najmniej 25 znaków).
- Używanie kont gMSA z automatyczną rotacją haseł.
- Wyłączenie RC4 i wymuszenie AES.
Dlaczego konta usług?
Konta usług są atrakcyjnym celem, ponieważ często należą do uprzywilejowanych grup, mają nieaktualne hasła i nie są powiązane z jedną osobą, która mogłaby zauważyć anomalie.
Złamanie jednego z nich może zapewnić uprawnienia Domain Admin, jeśli konto usługi otrzymało nierozważnie zbyt szerokie uprawnienia.
Miejsce w przebiegu ataku
Kerberoasting jest zwykle przeprowadzany krótko po uzyskaniu dowolnego przyczółka w domenie. Polega na cichej enumeracji i crackingu offline, dlatego rzadko wywołuje alerty.
Złamane konto usługi często umożliwia ruch boczny lub eskalację uprawnień, dlatego jest stałym elementem testów penetracyjnych sieci wewnętrznych i działań zespołów red team.
Szybkie sprawdzenie
Przypomnij sobie podstawowy wymóg Kerberoastingu.
Podsumowanie
Rozumiesz już Kerberoasting:
- Każdy użytkownik domeny może żądać biletów TGS dla kont z SPN.
- Bilety są szyfrowane hashem konta usługi i łamane offline.
- Narzędzia: Rubeus, Impacket GetUserSPNs.py, a do łamania tryb Hashcat 13100.
- Obronę zapewniają długie hasła, gMSA i szyfrowanie wyłącznie AES.
W następnej części ponownie użyje Pan/Pani poświadczeń bezpośrednio za pomocą Pass-the-Hash.
Często zadawane pytania
Czy lekcja „Kerberoasting” jest bezpłatna?
Tak — pełny tekst „Kerberoasting” 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 Ethical Hacking Academy, przejdź na CoddyKit PRO. Kurs Ethical Hacking Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Kerberoasting”?
Łamanie biletów usług Ćwiczysz Ethical Hacking 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ąć Ethical Hacking Academy?
Nie wymagamy żadnego doświadczenia. Ethical Hacking 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 2 z 4.
Ile czasu zajmuje lekcja „Kerberoasting”?
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 Ethical Hacking Academy?
Tak. Każda lekcja Ethical Hacking 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
- Podstawy AD
- Kerberoasting
- Pass-the-Hash
- BloodHound