От рекона до домена. Часть 2.

Введение

В продолжение статьи От рекона до домена мы детально разберем финальный этап атаки — цепочку эксплуатации, которая привела к полному контролю над доменом 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. Однако подключиться с правами локального Администратора не удалось из-за стандартной надстройки:

Это ограничение удалось обойти с помощью удалённого выполнения команды, изменяющей параметр реестра:

Включив Restricted Admin Mode (DisableRestrictedAdmin = 0), мы смогли подключиться к серверу по RDP.

Несмотря на наличие СЗИ на рабочей станции, нам удалось его «обойти» самым примитивным способом — дамп памяти процесса был успешно получен через «Диспетчер задач»:

Получив дамп процесса, мы проанализировали его. Были получены учётные данные трёх доменных администраторов.

Используя одну из найденных привилегированных учётных записей, была выполнена выгрузка базы NTDS.dit. В результате — полная компрометация домена example.lan.

Заключение

В результате использования учётных данных, найденных на начальном этапе, была реализована классическая цепочка компрометации. Утечка паролей создала точку входа. Наличие права AdminTo у этой учётной записи открыло путь к получению локальных прав администратора на ряде хостов.

Эти привилегии дали возможность выполнить дампы SAM и LSASS. В процессе анализа LSASS были выявлены учётные данные трёх доменных администраторов, а также пароли сервисных учётных записей Kaspersky Security Center.

Использование одной из найденных доменных учётных записей позволило выгрузить базу NTDS.dit и ключи SYSTEM, получив полный список доменных учётных записей и их хеши. В результате этих действий домен example.lan оказался полностью скомпрометирован.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *