Kerberoast
Last updated
Last updated
Verwenden Sie Trickest, um einfach Workflows zu erstellen und zu automatisieren, die von den fortschrittlichsten Community-Tools der Welt unterstützt werden. Zugang heute erhalten:
Kerberoasting konzentriert sich auf den Erwerb von TGS-Tickets, insbesondere solchen, die mit Diensten verbunden sind, die unter Benutzerkonten in Active Directory (AD) betrieben werden, ausgenommen Computer-Konten. Die Verschlüsselung dieser Tickets verwendet Schlüssel, die von Benutzerpasswörtern stammen, was die Möglichkeit des Offline-Credential-Crackings ermöglicht. Die Verwendung eines Benutzerkontos als Dienst wird durch eine nicht leere "ServicePrincipalName"-Eigenschaft angezeigt.
Für die Ausführung von Kerberoasting ist ein Domänenkonto erforderlich, das in der Lage ist, TGS-Tickets anzufordern; dieser Prozess erfordert jedoch keine besonderen Berechtigungen, was ihn für jeden mit gültigen Domänenanmeldeinformationen zugänglich macht.
Kerberoasting zielt auf TGS-Tickets für Benutzerkonto-Dienste innerhalb von AD ab.
Tickets, die mit Schlüsseln aus Benutzerpasswörtern verschlüsselt sind, können offline geknackt werden.
Ein Dienst wird durch einen ServicePrincipalName identifiziert, der nicht null ist.
Keine besonderen Berechtigungen sind erforderlich, nur gültige Domänenanmeldeinformationen.
Kerberoasting-Tools fordern typischerweise RC4-Verschlüsselung
an, wenn sie den Angriff durchführen und TGS-REQ-Anfragen initiieren. Dies liegt daran, dass RC4 schwächer und einfacher offline mit Tools wie Hashcat zu knacken ist als andere Verschlüsselungsalgorithmen wie AES-128 und AES-256.
RC4 (Typ 23) Hashes beginnen mit $krb5tgs$23$*
, während AES-256 (Typ 18) mit $krb5tgs$18$*
beginnen.`
Multi-Feature-Tools einschließlich eines Dumps von kerberoastable Benutzern:
Kerberoastable-Benutzer auflisten
Technik 1: Fordern Sie TGS an und dumpen Sie es aus dem Speicher
Technik 2: Automatische Werkzeuge
Wenn ein TGS angefordert wird, wird das Windows-Ereignis 4769 - Ein Kerberos-Dienstticket wurde angefordert
generiert.
Verwenden Sie Trickest, um einfach Workflows zu erstellen und zu automatisieren, die von den fortschrittlichsten Community-Tools der Welt unterstützt werden. Zugang heute erhalten:
Wenn Sie genug Berechtigungen über einen Benutzer haben, können Sie ihn kerberoastable machen:
Sie finden nützliche Tools für kerberoast-Angriffe hier: https://github.com/nidem/kerberoast
Wenn Sie diesen Fehler von Linux erhalten: Kerberos SessionError: KRB_AP_ERR_SKEW(Clock skew too great)
, liegt das an Ihrer lokalen Zeit, Sie müssen den Host mit dem DC synchronisieren. Es gibt einige Optionen:
ntpdate <IP des DC>
- Abgelehnt seit Ubuntu 16.04
rdate -n <IP des DC>
Kerberoasting kann mit einem hohen Maß an Heimlichkeit durchgeführt werden, wenn es ausnutzbar ist. Um diese Aktivität zu erkennen, sollte auf Security Event ID 4769 geachtet werden, die anzeigt, dass ein Kerberos-Ticket angefordert wurde. Aufgrund der hohen Frequenz dieses Ereignisses müssen jedoch spezifische Filter angewendet werden, um verdächtige Aktivitäten zu isolieren:
Der Dienstname sollte nicht krbtgt sein, da dies eine normale Anfrage ist.
Dienstnamen, die mit $ enden, sollten ausgeschlossen werden, um Maschinenkonten, die für Dienste verwendet werden, nicht einzuschließen.
Anfragen von Maschinen sollten herausgefiltert werden, indem Kontonamen im Format machine@domain ausgeschlossen werden.
Nur erfolgreiche Ticketanfragen sollten berücksichtigt werden, identifiziert durch einen Fehlercode von '0x0'.
Am wichtigsten ist, dass der Ticketverschlüsselungstyp 0x17 sein sollte, der häufig in Kerberoasting-Angriffen verwendet wird.
Um das Risiko von Kerberoasting zu mindern:
Stellen Sie sicher, dass Passwörter für Dienstkonten schwer zu erraten sind, wobei eine Länge von mehr als 25 Zeichen empfohlen wird.
Nutzen Sie Managed Service Accounts, die Vorteile wie automatische Passwortänderungen und delegierte Verwaltung von Service Principal Names (SPN) bieten, um die Sicherheit gegen solche Angriffe zu erhöhen.
Durch die Implementierung dieser Maßnahmen können Organisationen das Risiko, das mit Kerberoasting verbunden ist, erheblich reduzieren.
Im September 2022 wurde eine neue Möglichkeit zur Ausnutzung eines Systems von einem Forscher namens Charlie Clark bekannt gemacht, die über seine Plattform exploit.ph geteilt wurde. Diese Methode ermöglicht den Erwerb von Service Tickets (ST) über eine KRB_AS_REQ-Anfrage, die bemerkenswerterweise keine Kontrolle über ein Active Directory-Konto erfordert. Im Wesentlichen, wenn ein Principal so eingerichtet ist, dass er keine Vorab-Authentifizierung benötigt – ein Szenario, das im Bereich der Cybersicherheit als AS-REP Roasting-Angriff bekannt ist – kann dieses Merkmal genutzt werden, um den Anfrageprozess zu manipulieren. Insbesondere wird das System durch die Änderung des sname-Attributs im Anfragekörper getäuscht, sodass es ein ST anstelle des standardmäßigen verschlüsselten Ticket Granting Ticket (TGT) ausstellt.
Die Technik wird in diesem Artikel ausführlich erklärt: Semperis Blogbeitrag.
Sie müssen eine Liste von Benutzern bereitstellen, da wir kein gültiges Konto haben, um das LDAP mit dieser Technik abzufragen.
Verwenden Sie Trickest, um einfach Workflows zu erstellen und zu automatisieren, die von den fortschrittlichsten Community-Tools der Welt unterstützt werden. Erhalten Sie noch heute Zugang:
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)