Kerberoasting - из Linux


Наш список на данный момент дал нам общую картину домена и потенциальных проблем. Мы перечислили учетные записи пользователей и видим, что некоторые из них настроены с SPN. Давайте посмотрим, как мы можем использовать это для горизонтального перемещения и повышения привилегий в целевом домене.


Обзор Kerberoasting

Kerberoasting - это метод бокового перемещения / повышения привилегий в средах Active Directory. Эта атака нацелена на учетные записи имен участников службы (SPN). SPN - это уникальные идентификаторы, которые Kerberos использует для сопоставления экземпляра службы с учетной записью службы, в контексте которой запущена служба. Учетные записи домена часто используются для запуска служб, позволяющих преодолеть ограничения сетевой аутентификации встроенных учетных записей, таких как NT AUTHORITY\\LOCAL SERVICE. Любой пользователь домена может запросить тикет Kerberos для любой учетной записи службы в том же домене. Это также возможно в доверительных лесах, если разрешена аутентификация через границу доверия. Все, что вам нужно для выполнения атаки с использованием Kerberoasting, - это открытый текстовый пароль учетной записи (или хэш NTLM), оболочка в контексте учетной записи пользователя домена или доступ СИСТЕМНОГО уровня на хосте, присоединенном к домену.

Учетные записи домена, на которых запущены службы, часто являются локальными администраторами, если не учетными записями домена с высокими привилегиями. Из-за распределенного характера систем, взаимодействующих служб и связанной с ними передачи данных учетным записям служб могут быть предоставлены права администратора на нескольких серверах по всему предприятию. Многие сервисы требуют повышенных привилегий в различных системах, поэтому учетные записи сервисов часто добавляются в привилегированные группы, такие как администраторы домена, либо напрямую, либо через вложенное членство. Поиск SPN, связанных с учетными записями с высокими привилегиями, в среде Windows является очень распространенным явлением. Получение тикета Kerberos для учетной записи с SPN само по себе не позволяет выполнять команды в контексте этой учетной записи. Однако билет (TGS-REP) зашифрован хэшем NTLM учетной записи службы, поэтому пароль с открытым текстом потенциально может быть получен путем автономной атаки методом перебора с помощью такого инструмента, как Hashcat.

Учетные записи служб часто настраиваются с использованием ненадежного или повторно используемого пароля для упрощения администрирования, и иногда пароль совпадает с именем пользователя. Если пароль для учетной записи службы SQL Server домена взломан, вы, скорее всего, окажетесь локальным администратором на нескольких серверах, если не администратором домена. Даже если взлом билета, полученного с помощью атаки Kerberoasting, дает учетную запись пользователя с низкими привилегиями, мы можем использовать ее для создания служебных билетов для службы, указанной в SPN. Например, если для SPN установлено значение MSSQL /SRV01, мы можем получить доступ к службе MSSQL как системный администратор, включить расширенную процедуру xp_cmdshell и запустить выполнение кода на целевом сервере SQL.

Чтобы интересно взглянуть на происхождение этой техники, ознакомьтесь с докладом Тима Медина на Derbycon 2014, в котором он представил миру Kerberoasting.


Kerberoasting - выполнение атаки

В зависимости от вашего положения в сети, эта атака может быть выполнена несколькими способами:

Для выполнения атаки можно использовать несколько инструментов: