Linux Active Directory
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Eine Linux-Maschine kann auch in einer Active Directory-Umgebung vorhanden sein.
Eine Linux-Maschine in einem AD könnte verschiedene CCACHE-Tickets in Dateien speichern. Diese Tickets können wie jedes andere Kerberos-Ticket verwendet und missbraucht werden. Um diese Tickets zu lesen, müssen Sie der Benutzerbesitzer des Tickets oder root auf der Maschine sein.
Enumeration
AD Enumeration von Linux
Wenn Sie Zugriff auf ein AD in Linux (oder Bash in Windows) haben, können Sie https://github.com/lefayjey/linWinPwn versuchen, um das AD zu enumerieren.
Sie können auch die folgende Seite überprüfen, um andere Möglichkeiten zur Enumeration von AD aus Linux zu lernen:
389, 636, 3268, 3269 - Pentesting LDAPFreeIPA
FreeIPA ist eine Open-Source-Alternative zu Microsoft Windows Active Directory, hauptsächlich für Unix-Umgebungen. Es kombiniert ein vollständiges LDAP-Verzeichnis mit einem MIT Kerberos Key Distribution Center für eine Verwaltung ähnlich der Active Directory. Es nutzt das Dogtag Zertifikatssystem für CA- und RA-Zertifikatsmanagement und unterstützt Multi-Faktor-Authentifizierung, einschließlich Smartcards. SSSD ist für Unix-Authentifizierungsprozesse integriert. Erfahren Sie mehr darüber in:
FreeIPA PentestingSpielen mit Tickets
Pass The Ticket
Auf dieser Seite finden Sie verschiedene Orte, an denen Sie Kerberos-Tickets auf einem Linux-Host finden können. Auf der folgenden Seite können Sie lernen, wie Sie diese CCache-Ticketformate in Kirbi (das Format, das Sie in Windows verwenden müssen) umwandeln und auch, wie Sie einen PTT-Angriff durchführen:
Pass the TicketCCACHE Ticket-Wiederverwendung von /tmp
CCACHE-Dateien sind binäre Formate zum Speichern von Kerberos-Anmeldeinformationen, die typischerweise mit 600 Berechtigungen in /tmp
gespeichert werden. Diese Dateien können durch ihr Namensformat, krb5cc_%{uid}
, identifiziert werden, das mit der UID des Benutzers korreliert. Für die Überprüfung des Authentifizierungstickets sollte die Umgebungsvariable KRB5CCNAME
auf den Pfad der gewünschten Ticketdatei gesetzt werden, um deren Wiederverwendung zu ermöglichen.
Listen Sie das aktuelle Ticket, das für die Authentifizierung verwendet wird, mit env | grep KRB5CCNAME
auf. Das Format ist portabel und das Ticket kann durch Setzen der Umgebungsvariable mit export KRB5CCNAME=/tmp/ticket.ccache
wiederverwendet werden. Das Kerberos-Ticket-Namensformat ist krb5cc_%{uid}
, wobei uid die Benutzer-UID ist.
CCACHE Ticket-Wiederverwendung aus dem Schlüsselbund
Kerberos-Tickets, die im Speicher eines Prozesses gespeichert sind, können extrahiert werden, insbesondere wenn der ptrace-Schutz der Maschine deaktiviert ist (/proc/sys/kernel/yama/ptrace_scope
). Ein nützliches Tool zu diesem Zweck findet sich unter https://github.com/TarlogicSecurity/tickey, das die Extraktion erleichtert, indem es in Sitzungen injiziert und Tickets in /tmp
dumpet.
Um dieses Tool zu konfigurieren und zu verwenden, werden die folgenden Schritte befolgt:
Dieses Verfahren wird versuchen, in verschiedene Sitzungen zu injizieren, wobei der Erfolg durch das Speichern extrahierter Tickets in /tmp
mit einer Namenskonvention von __krb_UID.ccache
angezeigt wird.
CCACHE-Ticket-Wiederverwendung von SSSD KCM
SSSD hält eine Kopie der Datenbank unter dem Pfad /var/lib/sss/secrets/secrets.ldb
. Der entsprechende Schlüssel wird als versteckte Datei unter dem Pfad /var/lib/sss/secrets/.secrets.mkey
gespeichert. Standardmäßig ist der Schlüssel nur lesbar, wenn Sie root-Berechtigungen haben.
Das Aufrufen von **SSSDKCMExtractor
** mit den Parametern --database und --key wird die Datenbank analysieren und die Geheimnisse entschlüsseln.
Der Credential-Cache-Kerberos-BLOB kann in eine verwendbare Kerberos-CCache-Datei umgewandelt werden, die an Mimikatz/Rubeus übergeben werden kann.
CCACHE-Ticket-Wiederverwendung aus Keytab
Konten aus /etc/krb5.keytab extrahieren
Servicekonto-Schlüssel, die für Dienste mit Root-Rechten unerlässlich sind, werden sicher in /etc/krb5.keytab
-Dateien gespeichert. Diese Schlüssel, ähnlich wie Passwörter für Dienste, erfordern strikte Vertraulichkeit.
Um den Inhalt der Keytab-Datei zu überprüfen, kann klist
verwendet werden. Das Tool ist dafür ausgelegt, Schlüsseldetails anzuzeigen, einschließlich des NT Hash zur Benutzerauthentifizierung, insbesondere wenn der Schlüsseltyp als 23 identifiziert wird.
Für Linux-Benutzer bietet KeyTabExtract
die Funktionalität, den RC4 HMAC-Hash zu extrahieren, der für die Wiederverwendung des NTLM-Hashes genutzt werden kann.
Auf macOS dient bifrost
als Werkzeug zur Analyse von Keytab-Dateien.
Durch die Nutzung der extrahierten Konten- und Hash-Informationen können Verbindungen zu Servern mit Tools wie crackmapexec
hergestellt werden.
Referenzen
Lerne & übe AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lerne & übe GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Last updated