External Forest Domain - One-Way (Outbound)
W tym scenariuszu twoja domena udziela pewnych uprawnień podmiotowi z różnych domen.
Eksploracja
Zaufanie wychodzące
Atak na konto zaufania
Istnieje podatność na atak, gdy relacja zaufania jest ustanowiona między dwoma domenami, zidentyfikowanymi tutaj jako domena A i domena B, gdzie domena B rozszerza swoje zaufanie do domeny A. W tej konfiguracji specjalne konto jest tworzone w domenie A dla domeny B, które odgrywa kluczową rolę w procesie uwierzytelniania między dwiema domenami. To konto, powiązane z domeną B, jest wykorzystywane do szyfrowania biletów umożliwiających dostęp do usług między domenami.
Kluczowym aspektem do zrozumienia tutaj jest to, że hasło i skrót tego specjalnego konta mogą być wyodrębnione z kontrolera domeny w domenie A za pomocą narzędzia wiersza poleceń. Polecenie do wykonania tej czynności to:
To wydobycie jest możliwe, ponieważ konto, zidentyfikowane za pomocą $ po swojej nazwie, jest aktywne i należy do grupy "Domain Users" domeny A, co oznacza dziedziczenie uprawnień związanych z tą grupą. Pozwala to osobom uwierzytelniać się w domenie A przy użyciu poświadczeń tego konta.
Ostrzeżenie: Wykorzystanie tej sytuacji w celu uzyskania punktu zaczepienia w domenie A jako użytkownik, choć z ograniczonymi uprawnieniami, jest możliwe. Jednak ten dostęp wystarcza do przeprowadzenia enumeracji w domenie A.
W scenariuszu, gdzie ext.local
jest domeną ufającą, a root.local
jest domeną zaufaną, konto użytkownika o nazwie EXT$
zostanie utworzone w root.local
. Za pomocą konkretnych narzędzi możliwe jest wydumpowanie kluczy zaufania Kerberos, ujawniając poświadczenia EXT$
w root.local
. Polecenie do osiągnięcia tego to:
Następnie można użyć wyodrębnionego klucza RC4 do uwierzytelnienia jako root.local\EXT$
w root.local
za pomocą innego polecenia narzędzia:
To uwierzytelnienie otwiera możliwość wyliczenia, a nawet wykorzystania usług w root.local
, takich jak przeprowadzenie ataku Kerberoast w celu wydobycia poświadczeń konta usługi za pomocą:
Pozyskiwanie hasła zaufania w tekście jawnym
W poprzednim przepływie użyto hasha zaufania zamiast hasła w tekście jawnym (które również zostało wydobyte przez mimikatz).
Hasło w tekście jawnym można uzyskać, konwertując wynik [ CLEAR ] z mimikatz z szesnastkowego i usuwając bajty null ' \x00 ':
Czasami podczas tworzenia relacji zaufania, użytkownik musi wpisać hasło dla zaufania. W tej demonstracji kluczem jest oryginalne hasło zaufania i dlatego jest czytelne dla ludzi. Ponieważ klucz cykluje (co 30 dni), hasło w tekście jawnym nie będzie czytelne dla ludzi, ale technicznie nadal użyteczne.
Hasło w tekście jawnym można użyć do wykonywania regularnej autoryzacji jako konto zaufania, jako alternatywa dla żądania TGT za pomocą tajnego klucza Kerberosa konta zaufania. Tutaj, zapytanie o root.local z ext.local dla członków Administratorów domeny:
Referencje
Last updated