Пути атаки на ActiveDicrectory при помощи Bloodhound

Существует прекрасный наглядный инструмент, показывающий связи между различными объектами в ActiveDirectory, при помощи которого можно быстро оценить возможность компрометации лакомых кусочков – администраторов домена или схемы, а также выявить уже имеющиеся проколы в безопасности. Инструмент работает практически “из коробки”, что не может не радовать. В данном обзоре мы установим, соберём данные с домена и проверим на практике как работает Bloodhound.

Установка Bloodhound

Имеем на борту установленный Kali Linux (лучше актуальной версии).

$ sudo install bloodhound

После того, как установка будет завершена (чаще всего протекает без каких либо ошибок, если есть соединение с Интернетом и правильно прописаны репозитории), запустим консоль neo4j:

$ sudo neo4j console

В ходе запуска появляется следующая подсказка – удалённый интерфейс управления доступен по адресу: http://localhost:7474/. Пройти можно через имеющийся в Kali браузер.

От нас потребуется указать (сменить) имя пользователя и пароль при подключении к базе данных. Оставлю “neo4j:neo4j”.
Больше тут делать нечего. Теперь в другом окне запускаем сам непосредственно bloodhound:

$ bloodhound

Логинимся и попадаем на рабочий стол приложения.

В базе пусто. Теперь надо загрузить сюда данные с ActiveDirectory.

Собираем данные о домене

Нам понадобится сборщик данных (collector) и учётная запись пользователя домена.

  1. Коллектор качать тут: https://github.com/BloodHoundAD/BloodHound/tree/master/Collectors
  2. Учётную запись домена брать… Хе. Сгодится любая, даже пользовательская. Способы добычи валидных учёток различны, как вариант – прослушать responder-ом и сбрутить NetNTLMv2-хеш. Ну или подсмотреть. Или сбрутить по SMB… или найти файлик. Или ещё что угодно.

Итак, мы скачали collector (sharphound), теперь запустим его от имени пользователя домена. Причём сделать это можно и с узла, не входящего в исследуемый домен:

Запускаем командную строку от имени Администратора и выполняем следующую команду:

runas /netonly /user:домен\логин cmd.exe

Потребуется ввести пароль пользователя

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

Затем запускам в этом сеансе наш коллектор, указав имя домена.

Важно отметить, у нас должен быть прописан DNS этого домена, чтобы отрезолвить его по имени.

sharpdound.exe -d имя_домена

Когда сбор данных будет завершён – мы увидим архив с соответствующим именем – указан в выводе программы. Этот архив нам и нужно импортировать в Bloodhound.

Что получаем

Нажимаем кнопку “Upload Data” в Bloodhound

Выбираем архив, созданный на предыдущем этапе, открываете.

Процесс импорта.

Когда импорт будет завершён – можно перейти на вкладку “Analysis” и выбрать уже заготовленные шаблончики. Попробуем “Find Shortest Paths to Domain Admins” – Поиск кратчайшего пути до доменного администратора.

Автоматически построился соответствующий граф. При внимательном рассмотрении можно найти что-нибудь интересненькое. Вот например, сходу обнаружился пользователь ****USER9 входящий в группу Администраторов домена. Причём пока непонятно, это misconfig или умышленно оставлено. Но по крайней мере у него может оказаться слабый пароль и, в конечном итоге, это ещё + одна цель для атаки на пользователя.

В Bloodhound есть множество заготовленных скриптов и аналитики. Можно создавать свои графы и отмечать узлы как важные, как цели. Искать новые пути для достижения цели – захвату домена.

Наглядно. Инструмент однозначно будет полезен как администратору, так и пентестеру. Что думаете? Отпишите в коммент.

Прошу обратить внимание на одну из предыдущих статей:

 

Интересно? Поделись с другом
Litl-Admin.ru

Comments:

Leave a Reply