Главная » Хабрахабр » Обнаружение атак на Active Directory с помощью Azure

Обнаружение атак на Active Directory с помощью Azure

В следующем году будет 20 лет с момента создания службы каталогов Active Directory. За это время служба обросла функционалом, протоколами, различными клиентами. Но необходимость поддерживать совместимость с рядом устаревших клиентов вынуждает иметь настройки по-умолчанию, ориентированные на совместимость. Администраторы часто не меняют их, а это создает большой риск. В этой статье мы рассмотрим обнаружение атак, которые могут привести к domain dominance.

1 марта 2018 года был выпущен сервис Azure Advanced Threat Protection. Что общего между между атаками на Active Directory и Azure? В отличии от локальной версии, облачная не имеет искусственных ограничений для машинного обучения и обновляется регулярно, как и любые облачные сервисы. Это сервис, который является облачным аналогом локального продукта Advanced Threat Analytics. С его помощью можно обнаружить как типовые атаки, так и аномальное поведение пользователей.

Для начала работы можно зарегистрировать пробную подписку.

На этом настройка завершена. После первичных настроек потребуется скачать и инсталлировать шлюз для сбора данных на все контроллеры домена в сети предприятия.

Теперь предлагаю рассмотреть пример атаки по следующему сценарию: сотрудник-инсайдер, который завладел правами администратора на локальной машине, планирует повысить свои привилегии в домене.

Его интересует группа Domain Admins. Для начала сотруднику потребуется понять, какую учетную запись ему потребуется скомпрометировать, чтобы получить привилегии в домене. Для обнаружения членов Domain Admins он делает запрос в командной строке:

net group “Domain Admins” /domain

Остановимся на пользователе trainer. Обнаружив пользователей группы, теперь необходимо узнать, на какой машине есть активные сессии одного из пользователей.

Как видно на схеме, пользователь trainer имеет активную сессии на рабочей станции W10-notGuarded, доступ к которой у злоумышленника также присутствует. Для обнаружения сессий я воспользуюсь известным среди пентестеров инструментом Bloodhound.

Запросы на обнаружение групп и сессий были обнаружены. Перейдем на портал Azure ATP и посмотрим новые предупреждения.

Подключившись к рабочей станции, злоумышленник может сделать дамп процесса lsass с помощью task manager (или из командной строки с помощью procdump). Вернемся к злоумышленнику. Для этой операции потребуется debug-привилегия.

Получив дамп, злоумышленник может скопировать его на свою рабочую станцию и проанализировать его с помощью Mimikatz.

Скопируем дамп в одну папку с Mimikatz, запустим Mimikatz и подключим дамп для анализа

Sekurlsa::minidump lsass.dmp

Выведем результаты в текстовый файл

Log

Извлечем содержимое дампа

Sekurlsa::logonpasswords

Нас интересует NTLM-хэш пароля. Открыв текстовый файл Mimikatz.log можно найти учетные данные пользователя trainer. Значения на скриншоте скрыты в целях конфиденциальности.

Если пароль был простым, то есть вероятность подбора через радужные таблицы. Операция хэширования является необратимой, поэтому извлечь пароль из хэша невозможно. Тогда в игру вступают атаки класса Pass-the-Hash. Предположим, что нам не повезло и пароль не смогли подобрать по хэшу.

Чтобы клиент Active Directory могу получить доступ к определенному ресурсу, ему потребуется TGS-билет. Прежде чем рассматривать атаки, кратко работает как работает аутентификация Kerberos в Active Directory, чтобы понимать, за счет чего данная атака возможна. Получение билета TGS «на пальцах» выглядит следующим образом:

  1. Клиент отправляет контроллеру домена текущую дату и время, шифруя их с помощью общего секрета.
  2. Контроллер домена, получив и расшифровав запрос, оправляет клиенту TGT-билет, в котором содержится информация о пользователе, членом каких групп он является и тд
  3. Когда клиенту нужен доступ к ресурсу, он обращается к контроллеру, предъявляет TGT-билет и получает TGS-билет
  4. С этим билетом аутентифицируется на нужном ресурсе

На каком этапе возможна атака, связанная с имеющимся у нас NTLM-хэшем? NTLM-хэш является тем самым общим секретом, которым обладает клиент и контроллер домена. Соответственно, зная NTLM-хэш, можно получить TGT-билет практически легитимно.

Сама рабочая станция необязательно должна входить в домен. Для осуществления атаки нам потребуется рабочая станция в одной сети с контроллером домена и Mimikatz.

Проверю, что у меня нет доступа к желаемому ресурсу, но он должен быть у пользователя trainer. Я переключусь на доменную рабочую станцию, за которой работает пользователь jdoe.

Я открою Mimikatz и повышу привилегии до debug

Privilege::debug

Затем укажу команду:

Sekurlsa::pth /user:trainer /domain:contoso.com /ntlm:<ntlm-хэш пользователя trainer> (указать реальный хэш)

Проверяю доступ к файлу – доступ предоставлен. Открылась новая командная строка. При этом, я по-прежнему пользователь jdoe, но у меня есть Kerberos-билеты пользователя trainer.

Предотвращение атак возможно с помощью грамотной настройки и обнаружения. Данная атака называется Overpass-the-Hash и является эксплуатацией особенностей работы протокола Kerberos.

Давайте вернемся на портал Azure ATP и посмотрим что было обнаружено.

Это обнаружение «нетипичной» аутентификации. Один алерт – Unusual Protocol Implementation.

Обнаружение запроса Kerberos-билета с помощью Mimikatz. Второй – Encryption Downgrade Activity.

Таким образом мы оперативно обнаружили одну из атак на протокол Kerberos.

Важно учитывать, что обнаружение атак не исключает необходимость тщательной настройки безопасности Active Directory в соответствии с наилучшими практиками.

Посмотреть Azure ATP в действии вы можете 21 апреля на Azure Global Bootcamp в Москве очно или в онлайн-трансляции.

Узнать больше об основах и других возможностях обеспечения безопасности с помощью Azure можно в новой бесплатной электронной книге «Инфраструктура безопасности Microsoft Azure» на русском языке.

В книге приводится общая информация, советы по проектированию, сценарии развертывания, передовые методики, результаты опросов на технологические темы и пошаговые инструкции, которые помогут вам составить всеобъемлющее предоставление о возможностях обеспечения безопасности Azure.

Об авторе

Сергей Чубаров – руководитель инфраструктурных проектов в компании Prof IT. Обладатель статуса Most Valuable Professional (MVP) по Microsoft Azure. Помимо проектной работы является спикером на технических мероприятиях и региональным лидером среди русскоговорящих тренеров MCT.

Global Azure Bootcamp 2018 Russia

21 апреля, в субботу, проведем Global Azure Bootcamp Russia 2018 – глобальный форум по облачным технологиям Azure. Ежегодно Azure сообщество выбирает единый день проведения конференции в более чем 200 городах по всему миру, где ИТ-эксперты могут обменяться своими знаниями и опытом друг с другом и поделиться им с новичками. Приходите, участие бесплатное.
Регистрация.


Оставить комментарий

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

*

x

Ещё Hi-Tech Интересное!

[Перевод] Почему процессоры Skylake иногда работают в 2 раза медленнее

Мне сообщили, что на новых компьютерах некоторые регрессиионные тесты стали медленнее. Обычное дело, такое бывает. Неправильная конфигурация где-то в Windows или не самые оптимальные значения в BIOS. Но в этот раз нам никак не удавалось найти ту самую «сбитую» настройку. ...

«Защита авторских прав в ЕС»: новая реформа может повлиять не только на медиаплатформы

Новая директива о защите авторских прав, предложенная в Евросоюзе, которую мы недавно обсуждали в блоге, может существенно повлиять на устройство таких платформ, как YouTube, Facebook и Pinterest. Однако «под ударом» оказались не только они, но и библиотеки и агрегаторы научных ...