Введение
В продолжение статьи От рекона до домена мы детально разберем финальный этап атаки — цепочку эксплуатации, которая привела к полному контролю над доменом example.lan. На этом примере будет продемонстрировано, как нарушение принципов хранения и использования учётных данных позволило пройти путь от обычного пользователя до администратора домена.
Первый этап — обнаружение учётных данных, которые хранились в открытом виде
В ходе анализа файловой системы веб-сервера был обнаружен архив с резервной копией исходного кода одного из приложений. После распаковки и изучения содержимого проекта удалось выявить фрагмент PHP-кода, в котором задавались параметры HTTP-запроса к внутреннему сервису. Пароль учётной записи ivanov.i оказался «зашит» прямо в заголовке Authorization HTTP-запроса. Для удобства разработчик напрямую указал свои учётные данные в коде, и, как оказалось позже, эти данные являлись также доменными.
Обнаруженный фрагмент кода, содержащий учётные данные:

Как и в большинстве случаев, мы начали с изучения возможности доступа к различным сервисам и хостам. Была выполнена верификация учетной записи в AD:

Анализ прав в Active Directory
Имея первоначальный доступ, мы собрали структуру домена и через BloodHound изучили привилегии учётной записи ivanov.i. Было обнаружено, что учётная запись ivanov.i, будучи членом группы «Пользователи домена», обладает правами доступа AdminTo на нескольких рабочих станциях в домене, включая WIN1511.EXAMPLE.LAN:

Важно понимать: право AdminTo фактически делает пользователя локальным администратором на целевой машине. Через стандартные инструменты удалённого управления (RDP, WMI, WinRM, SCM) злоумышленник может выполнять удалённые команды, извлекать учётные данные и закрепиться на устройстве. Обычная учётная запись домена при этом превращается в эффективный инструмент захвата отдельных компьютеров и дальнейшего распространения в сети.
С правами AdminTo мы подключились к WIN1511.EXAMPLE.LAN и выполнили экспорт локальной базы SAM. На скриншоте ниже показан процесс использования CME для получения хешей:

С полученным хешом локального пользователя «Администратор» была проведена атака Pass The Hash — попытка аутентификации с этим хешом на других хостах домена. Выяснилось, что пароль локального администратора частично переиспользовался на других рабочих станциях, что позволило получить доступ ещё к ряду хостов.
На одном из других хостов был выполнен дамп LSA и получены учётные записи в открытом виде. Одна из таких учётных записей — KlScSvc:

Получение доступа к Kaspersky Security Center
Эти учётные данные позволили получить доступ к административной консоли Kaspersky Security Center, что дало возможность просматривать все управляемые устройства, создавать и распространять задания на выполнение произвольных команд, а также вносить изменения в антивирусные политики:

Изучив интерфейс и доступные машины, мы нашли на одном из компьютеров активные сессии администраторов домена:

Мы попытались выполнить код для дампа LSASS на этой машине через интерфейс KSC и различные утилиты, но, к сожалению, попытки оказались неудачными.
Снятие ограничения RDP и дамп LSASS
Чтобы сэкономить время =), мы решили просто подключиться по RDP. Однако подключиться с правами локального Администратора не удалось из-за стандартной надстройки:

Это ограничение удалось обойти с помощью удалённого выполнения команды, изменяющей параметр реестра:
1 |
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Lsa" /v DisableRestrictedAdmin /t REG_DWORD /d 0 /f |
Включив Restricted Admin Mode (DisableRestrictedAdmin = 0), мы смогли подключиться к серверу по RDP.
Несмотря на наличие СЗИ на рабочей станции, нам удалось его «обойти» самым примитивным способом — дамп памяти процесса был успешно получен через «Диспетчер задач»:

Получив дамп процесса, мы проанализировали его. Были получены учётные данные трёх доменных администраторов.
Используя одну из найденных привилегированных учётных записей, была выполнена выгрузка базы NTDS.dit. В результате — полная компрометация домена example.lan.
Заключение
В результате использования учётных данных, найденных на начальном этапе, была реализована классическая цепочка компрометации. Утечка паролей создала точку входа. Наличие права AdminTo у этой учётной записи открыло путь к получению локальных прав администратора на ряде хостов.
Эти привилегии дали возможность выполнить дампы SAM и LSASS. В процессе анализа LSASS были выявлены учётные данные трёх доменных администраторов, а также пароли сервисных учётных записей Kaspersky Security Center.
Использование одной из найденных доменных учётных записей позволило выгрузить базу NTDS.dit и ключи SYSTEM, получив полный список доменных учётных записей и их хеши. В результате этих действий домен example.lan оказался полностью скомпрометирован.