Pass-the-Hash – mechanizm działania i ochrona Active Directory przed kradzieżą hashy
Pass-the-Hash – mechanizm działania i ochrona Active Directory przed kradzieżą hashy
Wiele organizacji nadal zakłada, że największym problemem bezpieczeństwa są słabe hasła użytkowników.
Oczywiście silne hasła są ważne, ale w środowiskach Windows coraz częściej problemem nie jest złamanie hasła.
Problemem jest jego wykorzystanie bez poznania hasła.
Atakujący nie musi wiedzieć, że użytkownik wpisał:
MojeSuperHaslo2026!
Wystarczy, że zdobędzie odpowiedni materiał uwierzytelniający przechowywany przez system.
Jedną z najstarszych i nadal skutecznych technik tego typu jest:
Pass-the-Hash (PtH).
Mechanizm ten od lat stanowi jedno z głównych zagrożeń dla środowisk:
- Windows Server,
- Active Directory,
- sieci domenowych,
- kont administratorów.
Czym jest Pass-the-Hash?
Pass-the-Hash to technika ataku, w której cyberprzestępnik wykorzystuje hash hasła użytkownika do uzyskania dostępu do zasobów sieciowych.
Najważniejszy element:
atakujący nie odzyskuje hasła – używa samego hasha jako poświadczenia.
Normalne logowanie:
Użytkownik
|
| wpisuje hasło
↓
Windows
|
| generuje odpowiedź uwierzytelniającą
↓
Serwer
Pass-the-Hash:
Atakujący
|
| posiada hash
↓
Mechanizm NTLM
|
↓
Serwer
|
↓
Dostęp przyznany
To właśnie od tego pochodzi nazwa:
„przekaż hash dalej”
Dlaczego Windows przechowuje hashe?
System Windows nie zapisuje haseł użytkowników w postaci jawnej.
Gdy użytkownik ustawia hasło, system tworzy odpowiednią wartość kryptograficzną.
Przykład:
Hasło:
Admin2026!
zostaje przekształcone w:
NTLM hash
Hash jest wykorzystywany między innymi podczas:
- logowania lokalnego,
- uwierzytelniania NTLM,
- dostępu do zasobów sieciowych.
Problem polega na tym, że niektóre mechanizmy Windows mogą wykorzystać sam hash do potwierdzenia tożsamości.

NTLM – fundament Pass-the-Hash
Pass-the-Hash jest głównie związany z protokołem:
NTLM (NT LAN Manager).
NTLM wykorzystuje model:
challenge-response
czyli:
- klient wysyła żądanie logowania,
- serwer generuje losowe wyzwanie,
- klient tworzy odpowiedź wykorzystując hash,
- serwer sprawdza poprawność.
Teoretycznie hasło nigdy nie opuszcza komputera.
Problem:
jeżeli atakujący zdobędzie hash, może wygenerować poprawną odpowiedź.
Pass-the-Hash krok po kroku
Etap 1 – zdobycie dostępu do komputera
Pierwszym krokiem jest uzyskanie dostępu do urządzenia.
Najczęstsze metody:
- phishing,
- zainfekowany załącznik,
- podatna aplikacja,
- kradzież sesji użytkownika.
Przykład:
Pracownik działu finansowego otwiera zainfekowany dokument.
Atakujący uzyskuje dostęp:
WORKSTATION-01
Etap 2 – pozyskanie hashy
Po uzyskaniu dostępu napastnik próbuje zdobyć dane uwierzytelniające.
Interesują go szczególnie:
- lokalne konta administratorów,
- konta domenowe,
- konta techniczne.
Najbardziej wartościowe są:
Domain Admin
Enterprise Admin
Dlaczego?
Ponieważ mogą otworzyć drogę do całej domeny.
Etap 3 – wykorzystanie hasha
Atakujący posiada:
konto: administrator
hash NTLM: XXXXXXXX
Następnie próbuje użyć go przeciwko innemu systemowi:
PC01
|
| Pass-the-Hash
↓
SERVER01
Jeżeli konto ma odpowiednie prawa:
dostęp zostaje przyznany.
Praktyczny scenariusz w Active Directory
Wyobraźmy sobie firmę:
Domena:
firma.local
Posiada:
200 komputerów
10 serwerów
2 kontrolery domeny
Administrator popełnił popularny błąd:
Na wszystkich komputerach lokalne konto administratora ma takie samo hasło:
Firma2026!
Atak:
- Jeden komputer zostaje zainfekowany.
- Malware pobiera hash lokalnego administratora.
- Atakujący sprawdza kolejne komputery.
- Hasło działa wszędzie.
- Następuje ruch boczny.
Schemat:
Komputer użytkownika
|
↓
Lokalny administrator
|
↓
Serwer plików
|
↓
Kontroler domeny
Dlaczego administratorzy są głównym celem?
Zwykły użytkownik może:
- korzystać z poczty,
- otwierać dokumenty,
- pracować z aplikacjami.
Administrator może:
- zmieniać polityki,
- tworzyć konta,
- instalować oprogramowanie,
- zarządzać serwerami.
Dlatego hash konta administratora jest dla atakującego bardzo wartościowy.
TIP administratora: nigdy nie używaj tych samych haseł lokalnych
Jeden z najczęstszych błędów w firmach:
PC01
Administrator
Hasło: Firma123!
PC02
Administrator
Hasło: Firma123!
PC03
Administrator
Hasło: Firma123!
To praktycznie zaproszenie do Pass-the-Hash.
Rozwiązanie:
Windows LAPS
Każdy komputer otrzymuje:
PC01
inne hasło
PC02
inne hasło
PC03
inne hasło
Nawet przejęcie jednego urządzenia nie daje automatycznego dostępu do pozostałych.
Pass-the-Hash a Mimikatz
Jednym z najbardziej znanych narzędzi używanych podczas demonstracji tego typu ataków jest:
Mimikatz
Potrafi między innymi analizować:
- pamięć procesu LSASS,
- bilety Kerberos,
- dane NTLM.
Warto jednak pamiętać:
samo narzędzie nie jest problemem.
Problemem jest sytuacja, w której:
- użytkownik ma zbyt wysokie uprawnienia,
- administrator loguje się wszędzie tym samym kontem,
- brak jest segmentacji administracyjnej.
Jak ograniczyć ryzyko Pass-the-Hash?
Nie istnieje jedno magiczne zabezpieczenie.
Skuteczna ochrona to kilka warstw.
1. Windows LAPS
Podstawowa ochrona lokalnych administratorów.
Zapobiega:
- powtarzaniu haseł,
- wykorzystaniu jednego przejętego konta na wielu komputerach.
2. Administrative Tiering
Nie powinno się używać konta Domain Admin do codziennej pracy.
Zły model:
Jan Kowalski
|
Domain Admin
|
Praca na laptopie
Lepszy:
jan.kowalski
|
konto zwykłe
jan.admin
|
konto administracyjne
3. Protected Users Group
Konta szczególnie ważne można dodać do:
Protected Users
Ogranicza to między innymi:
- NTLM,
- delegację poświadczeń,
- przechowywanie danych logowania.
4. Ograniczenie NTLM
Jeżeli środowisko pozwala:
- monitorować użycie NTLM,
- migrować aplikacje do Kerberos,
- ograniczać stare mechanizmy.
Kerberos jest obecnie preferowanym rozwiązaniem w domenach Windows.
5. Credential Guard
W systemach Windows Enterprise można wykorzystać:
Microsoft Defender Credential Guard
Chroni on dane uwierzytelniające poprzez izolację pamięci.
Zmniejsza ryzyko kradzieży:
- hashy,
- tokenów,
- sekretów.
6. MFA dla kont administracyjnych
Nawet najlepsze zabezpieczenia Windows nie zastępują dodatkowego uwierzytelniania.
Administratorzy powinni korzystać z:
- MFA,
- FIDO2,
- Windows Hello for Business.
Jak wykrywać próby Pass-the-Hash?
Administratorzy powinni analizować:
Logi bezpieczeństwa Windows
Szczególnie:
Event ID 4624
czyli udane logowanie.
Warto zwracać uwagę na:
- typ logowania,
- źródłowy komputer,
- nietypowe konta.
Nietypowy ruch administracyjny
Przykład:
Użytkownik z działu księgowości:
normalnie:
Laptop → aplikacja ERP
nagle:
Laptop → 20 serwerów SMB
Może oznaczać ruch boczny.
Warto wiedzieć: Pass-the-Hash nie wymaga złamania hasła
To jedna z największych pułapek.
Wiele osób myśli:
„Mam silne hasło, więc jestem bezpieczny.”
Nie zawsze.
Jeżeli atakujący zdobędzie hash lub token:
- długość hasła nie ma znaczenia,
- złożoność hasła nie rozwiązuje problemu.
Dlatego bezpieczeństwo Active Directory opiera się nie tylko na hasłach.
Pass-the-Hash a nowoczesne Active Directory
Współczesna ochrona domen Windows powinna łączyć:
- Kerberos zamiast NTLM,
- Windows LAPS,
- Protected Users,
- Credential Guard,
- MFA,
- ograniczenie uprawnień,
- monitoring.
Najważniejsza zasada:
Nie zakładaj, że przejęcie jednego komputera nie jest groźne. Projektuj środowisko tak, aby jeden incydent nie oznaczał przejęcia całej domeny.
Podsumowanie
Pass-the-Hash jest jednym z najstarszych, ale nadal aktualnych zagrożeń dla infrastruktury Windows.
Atakujący nie musi znać hasła użytkownika.
Wystarczy, że zdobędzie odpowiedni materiał uwierzytelniający i wykorzysta go przeciwko innym systemom.
Największe ryzyko tworzą:
- wspólne hasła lokalnych administratorów,
- nadmierne uprawnienia,
- brak segmentacji administracyjnej,
- stare mechanizmy NTLM.
Dobrze zabezpieczone Active Directory nie polega na jednym zabezpieczeniu.
To połączenie wielu warstw:
LAPS + Kerberos + MFA + Tiering + monitoring + ograniczone uprawnienia.
Dopiero taki model realnie utrudnia atakującemu przejęcie całej domeny.






