
AD Miner — это инструмент аудита Active Directory, который использует запросы Cypher для обработки данных из графовой базы данных #Bloodhound с целью выявления уязвимостей безопасности.
Возможности веб-отчётов:
Рейтинг уязвимостей Active Directory на основе риска, а также комплексные пути смягчения.
Строка поиска и элементы управления, тщательно настроенные для выявления наиболее рискованных неправильных конфигураций.
Вы также можете наблюдать показатели с течением времени, чтобы оценить эффективность смягчения.
AD Miner изначально создан компанией Forvis Mazars и поддерживается командой по аудиту и консультированию в области кибербезопасности Grant Thornton.
Для запуска AD Miner сначала необходима база данных neo4j, содержащая объекты Active Directory:
[!CAUTION] Мы настоятельно рекомендуем использовать BloodHound Automation, поскольку он устанавливает плагин Graph Data Science для Neo4j, который :
- значительно улучшает время вычислений и общую производительность.
- позволяет использовать Smartest Path вместо встроенного Neo4j shortestPath() (т.е. пути, которые легче эксплуатировать, а не с наименьшим количеством переходов между узлами).
Для настройки среды BloodHound (включая GUI и базу данных Neo4j) настоятельно рекомендуется использовать BloodHound Automation из-за его бесшовной интеграции с плагином Graph Data Science. Хотя можно использовать стандартную установку BloodHound CE, имейте в виду, что вы упустите преимущества GDS (например, более умный поиск путей, улучшенная скорость выполнения и т.д.).
По умолчанию BloodHound создаёт базу neo4j, доступную на порту 7687.
Самый простой способ — выполнить следующую команду с помощью pipx:
pipx install 'git+https://github.com/AD-Security/AD_Miner.git'
ADMiner также доступен в некоторых дистрибутивах Linux:
pacman -S ad-minernix-env -iA nixos.ad-minerДоступен образ Docker для сборки. Соберите образ следующей командой:
docker build -t ad-miner .
Чтобы запустить это в Windows с данными BloodHound Community Edition, используйте команды ниже:
docker run -v ${PWD}:/tmp ad-miner AD-miner -b bolt://host.docker.internal:7687 -u neo4j -p mypassword -cf YOUR_PREFIX
Чтобы запустить это в Linux с данными BloodHound Community Edition, используйте команды ниже:
docker run -v ${PWD}:/tmp --network host ad-miner AD-miner -b bolt://localhost:7687 -u neo4j -p mypassword -cf YOUR_PREFIX
Обратите внимание, что монтирование тома с помощью -v критически важно для получения выходных данных. Подразумевается, что сервер BHCE запущен на хосте Docker с настройками по умолчанию.
Запустите инструмент:
AD-miner [-h] [-b BOLT] [-u USERNAME] [-p PASSWORD] [-e EXTRACT_DATE] [-r RENEWAL_PASSWORD] [-a] [-c] [-l LEVEL] -cf CACHE_PREFIX [-ch NB_CHUNKS] [-co NB_CORES] [--rdp] [--evolution EVOLUTION] [--cluster CLUSTER]
Пример:
AD-miner -cf My_Report -u neo4j -p mypassword
Кэш-файлы создаются после завершения каждого запроса к Neo4j. Эта функция позволяет приостановить или остановить AD Miner в любой момент процесса без потери ранее вычисленных результатов. Чтобы использовать кэш, используйте параметр -c. Кэш-файлы хранятся в папке cache_neo4j в вашем текущем репозитории. Для использования кэша имя отчёта должно совпадать с префиксом имени кэш-файла:
AD-miner -c -cf My_Report -u neo4j -p mypassword
Для лучшей обработки больших наборов данных можно включить многопоточность, а также использовать кластер баз данных neo4j, как показано в следующем примере (где server1 обрабатывает 32 потока, а server2 — 16):
AD-miner -c -cf My_Report -b bolt://server1:7687 -u neo4j -p mypassword --cluster server1:7687:32,server2:7687:16
Если политика смены паролей известна, вы можете указать её с помощью параметра -r, чтобы убедиться, что проверки смены паролей соответствуют настройкам вашей среды (по умолчанию 90 дней). Например, если политика паролей установлена на 180 дней, используйте следующее:
AD-miner -c -cf My_Report -b bolt://server:7687 -u neo4j -p mypassword -r 180
[!TIP] Пароль по умолчанию для базы данных neo4j Bloodhound CE —
bloodhoundcommunityeditionилиneo5j, если вы используете BloodHound Automation
Параметры: