External Forest Domain - One-Way (Outbound)
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
У цьому сценарії ваш домен довіряє деяким привілеям принципу з інших доменів.
Вразливість безпеки існує, коли встановлюється довірчі відносини між двома доменами, які тут позначені як домен A і домен B, де домен B розширює свою довіру до домену A. У цій конфігурації спеціальний обліковий запис створюється в домені A для домену B, який відіграє вирішальну роль у процесі аутентифікації між двома доменами. Цей обліковий запис, пов'язаний з доменом B, використовується для шифрування квитків для доступу до послуг між доменами.
Критичний аспект, який потрібно зрозуміти тут, полягає в тому, що пароль і хеш цього спеціального облікового запису можуть бути витягнуті з контролера домену в домені A за допомогою інструменту командного рядка. Команда для виконання цієї дії:
Ця екстракція можлива, оскільки обліковий запис, позначений знаком $ після його імені, активний і належить до групи "Domain Users" домену A, тим самим успадковуючи дозволи, пов'язані з цією групою. Це дозволяє особам аутентифікуватися в домені A за допомогою облікових даних цього облікового запису.
Увага: Існує можливість використати цю ситуацію для отримання доступу до домену A як користувач, хоча з обмеженими дозволами. Проте, цей доступ є достатнім для проведення перерахунку в домені A.
У сценарії, де ext.local
є довірчим доменом, а root.local
є довіреним доменом, обліковий запис користувача з ім'ям EXT$
буде створено в root.local
. За допомогою специфічних інструментів можливо вивантажити ключі довіри Kerberos, розкриваючи облікові дані EXT$
у root.local
. Команда для досягнення цього виглядає так:
Наступним кроком можна використати витягнутий ключ RC4 для автентифікації як root.local\EXT$
в root.local
, використовуючи іншу команду інструмента:
Цей крок аутентифікації відкриває можливість перераховувати та навіть експлуатувати сервіси в root.local
, такі як виконання атаки Kerberoast для витягування облікових даних облікового запису служби за допомогою:
У попередньому потоці використовувався хеш довіри замість пароля в чистому вигляді (який також був вивантажений за допомогою mimikatz).
Пароль в чистому вигляді можна отримати, конвертуючи вихід [ CLEAR ] з mimikatz з шістнадцяткового формату та видаляючи нульові байти ‘\x00’:
Іноді при створенні відносин довіри користувачеві потрібно ввести пароль для довіри. У цій демонстрації ключем є оригінальний пароль довіри, тому він читається людиною. Оскільки ключ змінюється (кожні 30 днів), пароль в чистому вигляді не буде читабельним для людини, але технічно все ще буде використовуваним.
Пароль в чистому вигляді можна використовувати для виконання звичайної аутентифікації як обліковий запис довіри, альтернативою запиту TGT за допомогою секретного ключа Kerberos облікового запису довіри. Тут запитуємо root.local з ext.local для членів Domain Admins:
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)