Linux Active Directory
Maszyna linuxowa może również znajdować się w środowisku Active Directory.
Maszyna linuxowa w AD może przechowywać różne bilety CCACHE w plikach. Te bilety mogą być używane i nadużywane jak każdy inny bilet kerberosowy. Aby odczytać te bilety, musisz być właścicielem biletu lub rootem na maszynie.
Enumeracja
Enumeracja AD z linuxa
Jeśli masz dostęp do AD w linuxie (lub bash w Windows), możesz spróbować https://github.com/lefayjey/linWinPwn, aby enumerować AD.
Możesz również sprawdzić następującą stronę, aby dowiedzieć się o innych sposobach enumeracji AD z linuxa:
389, 636, 3268, 3269 - Pentesting LDAPFreeIPA
FreeIPA to otwartoźródłowa alternatywa dla Microsoft Windows Active Directory, głównie dla środowisk Unix. Łączy kompletny katalog LDAP z MIT Kerberos Key Distribution Center do zarządzania podobnego do Active Directory. Wykorzystując system Dogtag Certificate System do zarządzania certyfikatami CA i RA, wspiera uwierzytelnianie wieloskładnikowe, w tym karty inteligentne. SSSD jest zintegrowany z procesami uwierzytelniania Unix. Dowiedz się więcej o tym w:
FreeIPA PentestingZabawa z biletami
Pass The Ticket
Na tej stronie znajdziesz różne miejsca, w których możesz znaleźć bilety kerberosowe w hoście linuxowym, na następnej stronie możesz dowiedzieć się, jak przekształcić te formaty biletów CCache na Kirbi (format, którego musisz użyć w Windows) oraz jak przeprowadzić atak PTT:
Pass the TicketPonowne użycie biletu CCACHE z /tmp
Pliki CCACHE to binarne formaty do przechowywania poświadczeń Kerberos, które zazwyczaj są przechowywane z uprawnieniami 600 w /tmp
. Pliki te można zidentyfikować po ich formacie nazwy, krb5cc_%{uid}
, odpowiadającym UID użytkownika. Aby zweryfikować bilet uwierzytelniający, zmienna środowiskowa KRB5CCNAME
powinna być ustawiona na ścieżkę do pożądanego pliku biletu, co umożliwia jego ponowne użycie.
Wypisz aktualny bilet używany do uwierzytelniania za pomocą env | grep KRB5CCNAME
. Format jest przenośny, a bilet można ponownie użyć, ustawiając zmienną środowiskową za pomocą export KRB5CCNAME=/tmp/ticket.ccache
. Format nazwy biletu Kerberos to krb5cc_%{uid}
, gdzie uid to UID użytkownika.
CCACHE ticket reuse from keyring
Bilety Kerberos przechowywane w pamięci procesu mogą być wyodrębniane, szczególnie gdy ochrona ptrace maszyny jest wyłączona (/proc/sys/kernel/yama/ptrace_scope
). Przydatnym narzędziem do tego celu jest dostępne pod adresem https://github.com/TarlogicSecurity/tickey, które ułatwia wyodrębnianie poprzez wstrzykiwanie do sesji i zrzucanie biletów do /tmp
.
Aby skonfigurować i używać tego narzędzia, należy postępować zgodnie z poniższymi krokami:
Ta procedura spróbuje wstrzyknąć do różnych sesji, wskazując na sukces poprzez przechowywanie wyodrębnionych biletów w /tmp
z konwencją nazewnictwa __krb_UID.ccache
.
Ponowne użycie biletu CCACHE z SSSD KCM
SSSD utrzymuje kopię bazy danych pod ścieżką /var/lib/sss/secrets/secrets.ldb
. Odpowiedni klucz jest przechowywany jako ukryty plik pod ścieżką /var/lib/sss/secrets/.secrets.mkey
. Domyślnie klucz jest czytelny tylko, jeśli masz uprawnienia root.
Wywołanie **SSSDKCMExtractor
** z parametrami --database i --key zanalizuje bazę danych i odszyfruje sekrety.
Blob pamięci podręcznej poświadczeń Kerberos można przekształcić w użyteczny plik CCache Kerberos, który można przekazać do Mimikatz/Rubeus.
Ponowne użycie biletu CCACHE z keytab
Wyciągnij konta z /etc/krb5.keytab
Klucze kont serwisowych, niezbędne do działania usług z uprawnieniami roota, są bezpiecznie przechowywane w plikach /etc/krb5.keytab
. Te klucze, podobnie jak hasła dla usług, wymagają ścisłej poufności.
Aby sprawdzić zawartość pliku keytab, można użyć klist
. Narzędzie to jest zaprojektowane do wyświetlania szczegółów kluczy, w tym NT Hash do uwierzytelniania użytkowników, szczególnie gdy typ klucza jest identyfikowany jako 23.
Dla użytkowników Linuksa, KeyTabExtract
oferuje funkcjonalność do ekstrakcji hasha RC4 HMAC, który można wykorzystać do ponownego użycia hasha NTLM.
Na macOS, bifrost
służy jako narzędzie do analizy plików keytab.
Wykorzystując wyodrębnione informacje o koncie i haszach, można nawiązać połączenia z serwerami za pomocą narzędzi takich jak crackmapexec
.
Odniesienia
Last updated