BloodHound MCP — Анализ AD и Azure AD через естественный язык
BloodHound MCP — это расширение инструмента BloodHound, которое позволяет взаимодействовать с Active Directory (AD) и Azure Active Directory (AAD) через запросы на естественном языке с помощью больших языковых моделей (LLM). Вам больше не нужно писать сложные Cypher-запросы — просто опишите задачу словами.
Возможности
- Естественно-языковые запросы — задавайте вопросы об AD/AAD простыми фразами, LLM сама построит и выполнит нужный Cypher-запрос.
- Анализ на основе LLM — модель интерпретирует ваш запрос и возвращает релевантные данные из BloodHound.
- Бесшовная интеграция — работает с существующей базой Neo4j, где уже хранятся данные BloodHound.
- Гибкая настройка — легко адаптируется под ваше окружение и инструменты.
Установка
Для работы требуется:
- Python (с
uv или pip)
- Neo4j с данными BloodHound
- Любой MCP-совместимый клиент (например, Claude Desktop, VS Code с расширением)
Установите зависимости:
uv pip install mcp neo4j
Конфигурация MCP-сервера
Добавьте в конфигурацию вашего MCP-клиента следующий блок (путь к server.py укажите свой):
{
"mcpServers": {
"BloodHound": {
"name": "BloodHound",
"isActive": true,
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli],neo4j",
"mcp",
"run",
"/path/to/server.py"
],
"env": {
"BLOODHOUND_URI": "bolt://localhost:7687",
"BLOODHOUND_USERNAME": "neo4j",
"BLOODHOUND_PASSWORD": "bloodhound"
}
}
}
}
Параметры окружения
BLOODHOUND_URI — адрес Neo4j (по умолчанию bolt://localhost:7687)
BLOODHOUND_USERNAME — имя пользователя Neo4j (neo4j)
BLOODHOUND_PASSWORD — пароль (bloodhound)
Использование
После настройки просто пишите запросы на русском или английском, например:
- «Покажи всех пользователей, у которых есть права администратора»
- «Найди пути эскалации привилегий от обычного пользователя к доменному администратору»
- «Какие группы являются членами группы Domain Admins?»
LLM преобразует ваш запрос в Cypher, выполнит его на Neo4j и вернёт результат.
Важные замечания
- Убедитесь, что Neo4j запущен и данные BloodHound уже импортированы.
- Для Azure AD данные также должны быть предварительно собраны.
- BloodHound MCP не отвечает за сбор данных — только за анализ через LLM.
Благодарности
Часть кастомных запросов основана на репозитории CompassSecurity/BloodHoundQueries.
Вклад в проект
Мы приветствуем вклад сообщества. Чтобы внести изменения:
- Сделайте форк репозитория.
- Создайте ветку для вашей функции или исправления.
- Отправьте pull request с подробным описанием.
Комментарии
Комментариев пока нет. Будьте первым.