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)