Уязвимости Active Directory

24
Вячеслав Егошин Positive Technologies

Transcript of Уязвимости Active Directory

Page 1: Уязвимости Active Directory

Вячеслав ЕгошинPositive Technologies

Page 2: Уязвимости Active Directory

Future NowЦарь Горы: О чём задание?

Основная задача – удерживать Level 1 и Level 2

Подключиться по RDP пользователем, обладающим

правами читать флаг

Active Directory

Web Services

Level 2

Level 1

80/8080/22

8% 8%

20%

Page 3: Уязвимости Active Directory

Future NowЦарь Горы: В общих словах как пройти?

Найти точку входа

Определить права пользователя в домене

Сбросить пароль следующему пользователю

Повторить N итераций

Подключиться по RDP и получить флаг

Profit!

Page 4: Уязвимости Active Directory

Future NowЦарь Горы: Что происходит после прохождения?

В течении двух минут состояние изменится

Генерация новых цепочек заданий

Закрывается сессия RDP

Из Active Directory удаляются ранее

созданные объекты

Обновляется флаг

Page 5: Уязвимости Active Directory

Future NowЦарь Горы: сюжет

Первый день – кантина

Второй день – медиа-холдинг

Page 6: Уязвимости Active Directory

Future NowЦарь Горы: Permissions

Add/Remove Self As Member – добавить/удалить себя

из группы

Group Member – член группы

Reset Password – сбрасывание пароля

Group Manager – управление группой

Delegated OU permissions – делегированные

разрешения OU

Page 7: Уязвимости Active Directory

Future NowЦарь Горы: Что было взято за основу?

Служба каталогов Active Directory

PowerShell v2

ActiveRoles Management Shell for Active Directory

Page 8: Уязвимости Active Directory

Future NowЦарь Горы: Количество сценариев?

Состояний звена цепи - 12

Длина цепи не ограничена

Objects/Permissions User Group msPKI-Key-Recovery-Agent

Add/Remove Self As Member ✔ ✔ ✔

Group Member ✔ ✔ ✗

Reset Password ✔ ✔ ✔

Group Manager ✔ ✗ ✔

Delegated OU permissions ✔ ✔ ✔

Page 9: Уязвимости Active Directory

Future NowЦарь Горы: Генератор

Генератор написан на PowerShell:

Очищается Active Directory

Создаётся пользователь test

OU, пользователи, группы, msPKI-Key-Recovery-

Agent

Назначение прав

Page 10: Уязвимости Active Directory

Future NowЦарь Горы: Генерация, объект OU

LDAP attributes:

Name – имя объекта

ParentContainer – родительский контейнер

Page 11: Уязвимости Active Directory

Future NowЦарь Горы: Генерация, объект Group

LDAP attributes:

Name – имя объекта

SamAccountName - Security Accounts Manager Account Name

Objects/Permissions Group

Add/Remove Self As Member ✔

Group Member ✔

Reset Password ✔

Group Manager ✗

Delegated OU permissions ✔

Page 12: Уязвимости Active Directory

Future NowЦарь Горы: Генерация, Объект User

LDAP attributes:

Name – имя фамилия пользователя

SamAccountName - Security Accounts Manager Account Name.

Может содержать управляющие символы

Password - пароль

Objects/Permissions User

Add/Remove Self As Member

Group Member ✔

Reset Password ✔

Group Manager ✔

Delegated OU permissions

Page 13: Уязвимости Active Directory

Future NowЦарь Горы: Генерация, объект msPKI-Key-Recovey-Agent

LDAP attributes:

CN – имя объекта

SamAccountName - Security Accounts Manager Account Name.

Может содержать управляющие символы

Container – системный контейнер

Password - парольObjects/Permissions msPKI-Key-Recovery-Agent

Add/Remove Self As Member ✔

Group Member ✗

Reset Password ✔

Group Manager ✔

Delegated OU permissions ✔

Page 14: Уязвимости Active Directory

Future NowЦарь Горы: Генерация, управляющие символы ISO 8859

0x200b - ZERO-WIDTH SPACE

0x2029 - PARAGRAPH SEPARATOR

0xFEFF - ZERO WIDTH NO-BREAK SPACE

0x80 - PADDING CHARACTER

Page 15: Уязвимости Active Directory

Future NowЦарь Горы: Генерация, Make-World

Создаётся структура OU: Floor 1 – Floor 5 и случайно

вложенные OU

Создаётся временная OU: TEMP_USER_CONTAINER

Все созданные пользователи и группы попадают в

TEMP_USER_CONTAINER

Создаются объекты msPKI-Key-Recovery-Agent

Создаётся новый флаг

Page 16: Уязвимости Active Directory

Future NowЦарь Горы: Генерация, Make-World

Page 17: Уязвимости Active Directory

Future NowЦарь Горы: Генерация, Make-Task

Вызывается функция Make-Task

Генерируется текстовая цепочка заданий от 3 до N

Page 18: Уязвимости Active Directory

Future NowЦарь Горы: Генерация, Make-Task

Последовательно создаются таски

Результат каждого звена – пользователь, которому нужно

сбросить пароль

Page 19: Уязвимости Active Directory

Future NowЦарь Горы: Генерация, Make-Task

Первый пользователь

Кому нужно сбросить пароль

Page 20: Уязвимости Active Directory

Future NowЦарь Горы: Генерация, Make-Task

Page 21: Уязвимости Active Directory

Future NowЦарь Горы: Генерация, Make-Task

Page 22: Уязвимости Active Directory

Future NowЦарь Горы: Что может понадобиться для прохождения?

Remote Server Administration Tools (ADSI.msc)

PowerShell v2

ActiveRoles Management Shell for Active Directory

Page 23: Уязвимости Active Directory

Future NowЦарь Горы: Полезные команды

Connect-

QADService

Get-QADObject

Get-QADPermission

Get-QADMemberOf

Add-QADGroupMember

Set-QADObject

Set-QADUser

Move-QADObject

Page 24: Уязвимости Active Directory