DCShadow
DCShadow
Це реєструє новий контролер домену в AD і використовує його для передачі атрибутів (SIDHistory, SPNs...) на вказані об'єкти без залишення будь-яких журналів щодо модифікацій. Вам потрібні привілеї DA та перебувати в кореневому домені. Зверніть увагу, що якщо ви використовуєте неправильні дані, з'являться досить потворні журнали.
Для виконання атаки вам потрібно 2 екземпляри mimikatz. Один з них запустить сервери RPC з привілеями SYSTEM (ви повинні вказати тут зміни, які ви хочете виконати), а інший екземпляр буде використовуватися для передачі значень:
Зверніть увагу, що elevate::token
не працюватиме в сесії mimikatz1
, оскільки це підвищує привілеї потоку, але нам потрібно підвищити привілеї процесу.
Ви також можете вибрати та "LDAP" об'єкт: /object:CN=Адміністратор,CN=Користувачі,DC=JEFFLAB,DC=local
Ви можете внести зміни з обліковими записами DA або з користувачем з цими мінімальними дозволами:
У об'єкті домену:
DS-Install-Replica (Додати/Видалити Репліку в Домені)
DS-Replication-Manage-Topology (Керування Топологією Реплікації)
DS-Replication-Synchronize (Синхронізація Реплікації)
Об'єкт Сайти (та його діти) в контейнері Конфігурації:
CreateChild та DeleteChild
Об'єкт комп'ютера, який зареєстрований як DC:
WriteProperty (Не Write)
Цільовий об'єкт:
WriteProperty (Не Write)
Ви можете використовувати Set-DCShadowPermissions для надання цих привілеїв непривілейованому користувачеві (зверніть увагу, що це залишить деякі журнали). Це набагато більш обмежено, ніж мати привілеї DA.
Наприклад: Set-DCShadowPermissions -FakeDC mcorp-student1 SAMAccountName root1user -Username student1 -Verbose
Це означає, що ім'я користувача student1 при вході в систему на комп'ютері mcorp-student1 має привілеї DCShadow для об'єкта root1user.
Використання DCShadow для створення задніх дверей
Shadowception - Надайте дозвіл DCShadow, використовуючи DCShadow (без модифікованих журналів дозволів)
Нам потрібно додати наступні ACE з SID нашого користувача в кінці:
На об'єкт домену:
(OA;;CR;1131f6ac-9c07-11d1-f79f-00c04fc2dcd2;;SIDкористувача)
(OA;;CR;9923a32a-3607-11d2-b9be-0000f87a36b2;;SIDкористувача)
(OA;;CR;1131f6ab-9c07-11d1-f79f-00c04fc2dcd2;;SIDкористувача)
На об'єкт комп'ютера атакувальника:
(A;;WP;;;SIDкористувача)
На цільовий об'єкт користувача:
(A;;WP;;;SIDкористувача)
На об'єкт сайтів у контейнері конфігурації:
(A;CI;CCDC;;;SIDкористувача)
Щоб отримати поточний ACE об'єкта: (New-Object System.DirectoryServices.DirectoryEntry("LDAP://DC=moneycorp,DC=loca l")).psbase.ObjectSecurity.sddl
Зверніть увагу, що в цьому випадку вам потрібно зробити кілька змін, а не лише одну. Таким чином, у сеансі mimikatz1 (сервер RPC) використовуйте параметр /stack
з кожною зміною, яку ви хочете зробити. Таким чином, вам потрібно буде лише /push
один раз, щоб виконати всі застряглі зміни на підроблених серверах.
Last updated