Атака AS-REP Roasting

AS-REP Roasting

При обычных операциях в среде Windows Kerberos, когда пользователь инициирует запрос TGT (операция Kerberos AS-REQ), он должен указать временную метку, зашифрованную своим паролем (ключом). Метка представляет собой структуру PA-ENC-TIMESTAMP и встроена в PA-DATA (данные предварительной авторизации) AS-REQ. KDC расшифровывает эту метку, чтобы проверить, действительно ли совершающий операцию субъект — тот, за кого себя выдает, а затем возвращает AS-REP и продолжает обычные процедуры аутентификации.

Еще по теме:

Подобная проверка называется предварительной аутентификацией Kerberos и необходима для предотвращения автономного угадывания пароля. Но проверку можно отключить выставлением флага DONT_REQ_PREAUTH в UAC учетной записи пользователя. Чтобы отключить проверку для конкретного пользователя, оператору необходимо наличие привилегии GenericWrite или GenericAll.

Set-DomainObject -Identity [пользователь] -XOR @{useraccountcontrol=4194304}

Дело в том, что при отключенной предварительной аутентификации Kerberos KDC все равно вернет AS-REP, который, в свою очередь, зашифрован с помощью ключа службы krbtgt. Но зашифрованная часть AS-REP подписывается клиентским ключом, то есть ключом пользователя, для которого отправляется AS-REQ.

Выполнить атаку можно локально с помощью того же Rubeus.

Получение хеша с помощью Rubeus
Получение хеша с помощью Rubeus

Для удаленной атаки нам нужно узнать пользователей, у которых отключена предварительная аутентификация Kerberos, для чего необходимо иметь учетные данные любого пользователя в домене.

GetNPUsers.py [домен]/[пользователь]:[пароль]
Получение пользователей с отключенной предварительной аутентификацией Kerberos
Получение пользователей с отключенной предварительной аутентификацией Kerberos

Теперь выполним запрос для найденного пользователя.

GetNPUsers.py [домен]/[пользователь] -k -no-рass -dc-iр [IР]
Получение хеша с помощью imрacket
Получение хеша с помощью imрacket

Различие между Kerberoasting и AS-REР Roasting состоит в том, что для данной атаки нужно только имя пользователя, то есть можно составить список и проверить сразу несколько имен. Плюс ко всему можно также узнать, какие пользователи зарегистрированы в системе, а какие нет.

Список пользователей
Список пользователей
Проверка имен пользователей и получение хеша
Проверка имен пользователей и получение хеша

Взломать полученный хеш можно с помощью John the Riррer.

Результат работы John
Результат работы John

Другое различие между Kerberoasting и AS-REР Roasting заключается в том, что AS-REP запрашивает билет проверки подлинности Kerberos (TGT), а не билет проверки подлинности службы (TGS).

Еще по теме:

ВКонтакте
OK
Telegram
WhatsApp
Viber

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

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