0Pricing
Cloud & IT Cert Prep · Lekcja

Ruch boczny: Pass-the-Hash i Pass-the-Ticket

Poznaj sposób, w jaki atakujący ponownie wykorzystują hashe NTLM i bilety Kerberos do przemieszczania się w sieci bez znajomości haseł w postaci jawnego tekstu, oraz mechanizmy obrony, które ich powstrzymują.

Ruch boczny: Pass-the-Hash i Pass-the-Ticket to bezpłatna lekcja Cloud & IT Cert Prep 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 Cloud & IT Cert Prep, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cloud & IT Cert Prep zawiera 4 lekcji w sumie.

Ruch boczny: rozprzestrzenianie się w sieci

Ruch boczny oznacza techniki wykorzystywane przez napastników do stopniowego przemieszczania się w sieci po uzyskaniu początkowego przyczółka, aby dotrzeć do celów o większej wartości, takich jak kontrolery domeny, bazy danych i stacje robocze administratorów. W przeciwieństwie do początkowego dostępu (który zwykle dotyczy pojedynczego punktu końcowego) ruch boczny wykorzystuje relacje zaufania między systemami — mechanizmy uwierzytelniania, współdzielone dane uwierzytelniające, łączność sieciową i narzędzia administracyjne — z których legalni użytkownicy korzystają codziennie. Skuteczny ruch boczny umożliwia pojedynczemu przejętemu kontu o niskich uprawnieniach uzyskanie dostępu do każdego systemu w środowisku.

Jak działa uwierzytelnianie systemu Windows: NTLM

NTLM (NT LAN Manager) to starszy protokół uwierzytelniania systemu Windows oparty na mechanizmie wyzwanie–odpowiedź. Gdy klient uwierzytelnia się na serwerze, serwer wysyła losowe wyzwanie, a klient odpowiada, haszując wyzwanie przy użyciu skrótu NT użytkownika (stałego skrótu utworzonego na podstawie hasła). Kluczowa wada konstrukcyjna polega na tym, że do uwierzytelnienia wystarcza sam skrót NT — hasło nie jest potrzebne. Skrót NT jest przechowywany w bazie danych Security Account Manager (SAM) na stacjach roboczych oraz w pliku NTDS.DIT na kontrolerach domeny. Jeśli napastnik zdobędzie skrót NT, może uwierzytelnić się jako dany użytkownik, nie znając jego hasła.

# NT hash example: MD4 of Unicode password
# Password 'Password123' -> NT hash: 58a478135a93ac3bf058a5ea0e8fdb71
# This hash alone is sufficient for NTLM authentication
# An attacker with the hash can authenticate to any service accepting NTLM

Pass-the-Hash (PtH): uwierzytelnianie bez haseł

Pass-the-Hash (PtH) to technika ataku, w której napastnik używa przechwyconego skrótu NTLM do uwierzytelniania się w innych systemach bez znajomości odpowiadającego mu hasła w postaci jawnej. Po przejęciu jednego systemu i wyodrębnieniu skrótów z pamięci (LSASS) lub bazy danych SAM napastnik zastępuje własne dane uwierzytelniające skradzionym skrótem w żądaniach uwierzytelniania. Jest to szczególnie niebezpieczne, ponieważ współdzielone hasła lokalnych administratorów (częste w środowiskach bez LAPS) sprawiają, że jeden skrót umożliwia przejęcie setek lub tysięcy komputerów. Narzędzia takie jak Mimikatz, Impacket's psexec.py i CrackMapExec automatyzują ataki PtH.

# PtH attack using Impacket's psexec (attacker tool - for understanding defenses)
# psexec.py -hashes :58a478135a93ac3bf058a5ea0e8fdb71 administrator@192.168.1.100

# This grants an interactive shell on 192.168.1.100 WITHOUT knowing the password
# Using only the NTLM hash extracted from a previously compromised system

Ochrona przed Pass-the-Hash

Skuteczność ataków PtH można ograniczyć za pomocą kilku środków zaradczych: Local Administrator Password Solution (LAPS) — narzędzia firmy Microsoft, które przypisuje każdemu komputerowi unikatowe, cyklicznie zmieniane hasło lokalnego administratora, dzięki czemu skrót skradziony z jednego komputera odblokowuje tylko ten komputer; Credential Guard (Windows 10/11) — funkcji wykorzystującej zabezpieczenia oparte na wirtualizacji do odizolowania LSASS w bezpiecznej enklawie, z której nie można wyodrębnić skrótów; wyłączenie NTLM na rzecz Kerberos, jeśli jest to możliwe; ograniczenie dostępu administracyjnego za pomocą Privileged Access Workstations (PAW) i warstwowych modeli administracji; oraz grupy zabezpieczeń Protected Users w Active Directory, która uniemożliwia buforowanie skrótów dla kont należących do tej grupy.

# Check if LAPS is deployed on a domain
# Look for the ms-Mcs-AdmPwd attribute on computer objects
Get-ADComputer -Filter * -Properties ms-Mcs-AdmPwd | 
  Where {$_.'ms-Mcs-AdmPwd' -ne $null} | 
  Select-Object Name, 'ms-Mcs-AdmPwd'

Przegląd protokołu Kerberos: jak działają bilety

Kerberos to domyślny protokół uwierzytelniania w środowiskach Active Directory. Unika przesyłania haseł lub skrótów przez sieć, wykorzystując zaszyfrowane bilety. Proces wygląda następująco: (1) klient uwierzytelnia się w Key Distribution Center (KDC) — roli pełnionej przez kontroler domeny — i otrzymuje Ticket Granting Ticket (TGT) zaszyfrowany skrótem konta KRBTGT; (2) gdy klient potrzebuje uzyskać dostęp do usługi, przedstawia TGT, aby otrzymać Service Ticket (TGS/ST) zaszyfrowany kluczem docelowej usługi; (3) klient przedstawia bilet usługi celowi, który go weryfikuje bez kontaktowania się z KDC. Domyślny czas ważności biletów wynosi 10 godzin.

# View current Kerberos tickets on Windows
klist
# Output shows:
# Ticket cache: API:...
# Server: krbtgt/DOMAIN.COM
# Encryption type: AES-256
# Expiration date: <timestamp>

Pass-the-Ticket (PtT): kradzież biletów Kerberos

Pass-the-Ticket (PtT) to odpowiednik Pass-the-Hash w protokole Kerberos: napastnik wyodrębnia ważny bilet Kerberos z pamięci przejętego systemu i importuje go do własnej sesji, aby uwierzytelnić się jako właściciel biletu. Bilety Kerberos są przechowywane w pamięci systemu Windows i można je wyodrębnić za pomocą poleceń Mimikatz's kerberos::list oraz kerberos::ptt. Skradzione bilety TGT są najcenniejsze, ponieważ można ich użyć do żądania biletów usług dla dowolnej usługi, do której właściciel biletu ma dostęp. Skradzione Service Tickets (TGS) są bardziej ograniczone — zapewniają dostęp tylko do konkretnej usługi, dla której je wydano.

# PtT attack: export and import tickets with Mimikatz
# On compromised system:
# mimikatz# kerberos::list /export   <- dumps all tickets to .kirbi files

# On attacker system:
# mimikatz# kerberos::ptt ticket.kirbi  <- injects stolen ticket
# Now authenticated as the ticket's owner for its service

Over-Pass-the-Hash: zamiana skrótu na bilet

Over-Pass-the-Hash (oPtH), nazywane również Pass-the-Key, łączy kradzież skrótu NT z uzyskaniem biletu Kerberos. Napastnik używa skradzionego skrótu NT lub klucza AES, aby zażądać biletu TGT Kerberos od kontrolera domeny, nawet nie znając hasła w postaci jawnej. W ten sposób skradziony skrót zostaje przekształcony w pełny bilet TGT Kerberos, zapewniający elastyczność charakterystyczną dla ataków PtT. Technika ta jest cenna, ponieważ wiele organizacji wyłączyło NTLM na rzecz Kerberos — oPtH umożliwia przeprowadzanie ataków opartych na skrótach także w środowiskach korzystających wyłącznie z Kerberos. Mimikatz implementuje tę technikę jako sekurlsa::pth.

Protokoły ruchu bocznego: SMB, WMI i RDP

Napastnicy używają kilku protokołów do przemieszczania się w sieci przy użyciu skradzionych danych uwierzytelniających lub biletów: SMB (Server Message Block) umożliwia zdalne wykonywanie poleceń za pośrednictwem PsExec, a także zdalny dostęp do plików i tworzenie usług; WMI (Windows Management Instrumentation) umożliwia zdalne wykonywanie poleceń i jest intensywnie wykorzystywane zarówno przez administratorów, jak i napastników ze względu na powszechność oraz luki w rejestrowaniu zdarzeń; RDP (Remote Desktop Protocol) zapewnia interaktywną sesję pulpitu; a WinRM/PowerShell Remoting umożliwia wykonywanie poleceń PowerShell w systemach zdalnych. Obrońcy powinni ustalić, które systemy legalnie korzystają z tych protokołów, i generować alerty dotyczące nietypowych wzorców użycia.

# Detection: look for unusual SMB authentication from workstations
# Windows Security Event ID 4624: successful logon
# Windows Security Event ID 4648: explicit credential use
# Splunk query:
# index=windows EventCode=4624 LogonType=3 WorkstationName!='DOMAIN\server*'
#   NOT [whitelist of servers]
# | stats count by Computer, AccountName, IpAddress

BloodHound: wizualizacja ścieżek ataku

BloodHound to narzędzie open source używane zarówno przez zespoły red team, jak i obrońców do wizualizowania ścieżek eskalacji uprawnień i ruchu bocznego w Active Directory. Gromadzi dane o relacjach (kto należy do której grupy, kto ma uprawnienia administratora na danym komputerze, na których kontach włączono delegowanie) i przedstawia je w postaci grafu, w którym węzły oznaczają użytkowników, komputery i grupy, a krawędzie — uprawnienia. Zapytanie BloodHound 'Find Shortest Paths to Domain Admins' może pokazać napastnikom — i obrońcom — dokładną sekwencję przejęć, która może doprowadzić do pełnej kontroli nad domeną. Obrońcy używają BloodHound do eliminowania zbędnych ścieżek uprawnień, zanim wykorzystają je napastnicy.

# Run BloodHound collector (SharpHound) on domain
# SharpHound.exe -c All --outputdirectory C:\Temp
# Outputs JSON files imported into BloodHound Neo4j database

# Key queries for defenders:
# - Find all Domain Admins
# - Find Shortest Paths to Domain Admins
# - Find Principals with DCSync Rights

Wykrywanie ruchu bocznego

Wykrywanie ruchu bocznego wymaga korelowania zdarzeń z wielu systemów. Kluczowe sygnały wykrywania obejmują: Windows Event ID 4648 (logowanie przy użyciu jawnych danych uwierzytelniających — częste w przypadku PtH/PtT); Event ID 4769 (żądanie biletu usługi Kerberos — nietypowe, jeśli bilety są żądane dla rzadko używanych usług); Event ID 7045/4697 (zainstalowanie nowej usługi — częste w ruchu bocznym opartym na PsExec); nietypowe użycie narzędzi administracyjnych ze stacji roboczych niebędących stacjami administratorów (wmic.exe, psexec.exe); oraz anomalie uwierzytelniania SMB, gdy stacje robocze uwierzytelniają się na innych stacjach roboczych (normalny ruch przebiega ze stacji roboczych do serwerów, a nie między równorzędnymi stacjami). Platformy EDR z funkcjami wykrywania behawioralnego wychwytują te wzorce w całej sieci.

Warstwowy model administracji

Warstwowy model administracji (zalecany przez firmę Microsoft projekt środowiska Active Directory) zapobiega wykorzystaniu kradzieży danych uwierzytelniających z jednej warstwy do przejęcia warstw wyższych: Tier 0 (płaszczyzna kontroli tożsamości — kontrolery domeny, Azure AD) — tylko konta administracyjne Tier 0 mogą administrować tymi zasobami, a konta te nigdy nie logują się do systemów Tier 1 ani Tier 2; Tier 1 (serwery i usługi chmurowe) — dedykowane konta administracyjne Tier 1; Tier 2 (stacje robocze i urządzenia) — konta helpdesku i standardowe konta administracyjne. Izolowanie danych uwierzytelniających w warstwach sprawia, że przejęte konto administratora stacji roboczej nie może zostać użyte do zaatakowania kontrolerów domeny. W ten sposób model ten bezpośrednio przeciwdziała ruchowi bocznemu typu PtH i PtT.

Szybkie sprawdzenie

Sprawdź swoją znajomość zagadnień CompTIA Security+ (SY0-701) omówionych w tej lekcji.

Podsumowanie lekcji

W tej lekcji nauczyli się Państwo, że: Pass-the-Hash wykorzystuje sposób działania NTLM, w którym skrót pełni funkcję poświadczenia — sam skrót NT uwierzytelnia bez znajomości hasła, a główną ochronę zapewniają LAPS i Credential Guard; Pass-the-Ticket wykrada z pamięci prawidłowe bilety Kerberos, aby uwierzytelnić się jako inny użytkownik, przy czym wykradzione bilety TGT są szczególnie niebezpieczne, ponieważ mogą posłużyć do wygenerowania biletów usług dla dowolnej usługi; oraz że model administracji warstwowej zapobiega wykorzystaniu kradzieży poświadczeń z jednej warstwy do uzyskania dostępu do warstw o wyższych uprawnieniach. W następnej części omówimy ataki Kerberoasting i Golden Ticket wymierzone w implementację protokołu Kerberos w usłudze Active Directory.

Często zadawane pytania

Czy lekcja „Ruch boczny: Pass-the-Hash i Pass-the-Ticket” jest bezpłatna?

Tak — pełny tekst „Ruch boczny: Pass-the-Hash i Pass-the-Ticket” 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 Cloud & IT Cert Prep, przejdź na CoddyKit PRO. Kurs Cloud & IT Cert Prep zawiera 4 lekcji w sumie.

Co nauczysz się w „Ruch boczny: Pass-the-Hash i Pass-the-Ticket”?

Poznaj sposób, w jaki atakujący ponownie wykorzystują hashe NTLM i bilety Kerberos do przemieszczania się w sieci bez znajomości haseł w postaci jawnego tekstu, oraz mechanizmy obrony, które ich pows… Ćwiczysz Cloud & IT Cert Prep 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ąć Cloud & IT Cert Prep?

Nie wymagamy żadnego doświadczenia. Cloud & IT Cert Prep 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 „Ruch boczny: Pass-the-Hash i Pass-the-Ticket”?

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 Cloud & IT Cert Prep?

Tak. Każda lekcja Cloud & IT Cert Prep 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. Cykl życia APT: od początkowego dostępu do utrzymania dostępu
  2. Ruch boczny: Pass-the-Hash i Pass-the-Ticket
  3. Kerberoasting i ataki Golden Ticket
  4. Framework MITRE ATT&CK do wykrywania i reagowania
← Powrót do Cloud & IT Cert Prep