BloodHound MCP

MCP-сервер к BloodHound CE и Enterprise: агент ищет пути атак в Active Directory и Entra ID, пишет запросы Cypher.

  • 143 ★ репозитория
  • Последний коммит
  • GPL-3.0
MCP-сервер

Широкий доступ

Почему такой уровень

  • Токен BloodHound открывает карту привилегий домена; инструменты загрузки и узлов OpenGraph меняют данные в базе.
  • Справочники описывают наступательные приемы атак на AD: DCSync, Kerberoasting, ADCS, NTLM relay. Применяйте их только в среде с разрешением на тест.
Все причины и проверки

mwnickerson/bloodhound_mcp

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add mcp/bloodhound-mcp

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Токен BloodHound открывает карту привилегий домена; инструменты загрузки и узлов OpenGraph меняют данные в базе.
  • Справочники описывают наступательные приемы атак на AD: DCSync, Kerberoasting, ADCS, NTLM relay. Применяйте их только в среде с разрешением на тест.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Сервер связывает LLM с BloodHound Community Edition и BloodHound Enterprise через REST API и граф Neo4j. Агент разбирает домены, пользователей, группы, компьютеры, OU и GPO, ищет кратчайшие пути до Domain Admins, права DCSync, цепочки ADCS ESC1–ESC13 и запускает свои запросы Cypher. Набор состоит из 13 составных инструментов с параметром `info_type`, 10 справочных ресурсов и системного промпта `bloodhound_assistant`. Ресурсы содержат шпаргалки по Cypher, методики для AD, Azure и ADCS и шаблоны запросов. Инструмент `file_upload` загружает собранные SharpHound и AzureHound данные, а `custom_nodes` работает с типами узлов OpenGraph.

Для кого. Специалистам по безопасности Active Directory, которые вместе с Claude Code или Codex разбирают данные BloodHound: пентестерам по договору и защитникам.

Подходит, если

  • Нужно найти кратчайший путь от скомпрометированного пользователя до Domain Admins в разрешенном тесте.
  • Защитники ищут учетные записи с SPN, уязвимые к Kerberoasting, и компьютеры с неограниченным делегированием.
  • Надо выяснить, у кого есть права DCSync или RDP на группу компьютеров.
  • Результаты SharpHound или AzureHound загружают в BloodHound прямо из чата.

Не подходит, если

  • Нет письменного разрешения на тестирование среды.
  • Токен BloodHound нельзя отдавать агенту: права токена определяют доступ к данным и записи.
  • Нужна работа без BloodHound: сервер не собирает данные сам.

Пример запроса к агенту

Найди кратчайший путь от jsmith@corp.local до Domain Admins и покажи, какие права на пути.

MCP

Транспорт
stdio
Авторизация
API-ключ

Переменные окружения

BLOODHOUND_DOMAIN обязательная
Адрес экземпляра BloodHound без схемы.
BLOODHOUND_TOKEN_ID обязательная, секрет
Token ID из раздела API Tokens.
BLOODHOUND_TOKEN_KEY обязательная, секрет
Token Key из раздела API Tokens.
BLOODHOUND_PORT
Порт, по умолчанию 443.
BLOODHOUND_SCHEME
Схема `https` или `http`.
BLOODHOUND_VERIFY_TLS
Значение `false` отключает проверку сертификата.

Ограничения

Нужны Python 3.11 и `uv`, действующий экземпляр BloodHound CE с загруженными данными и токен API из пары Token ID и Token Key. Сервер по умолчанию ходит по `https` на порт 443. Проверка TLS включена, ее отключают явно переменной `BLOODHOUND_VERIFY_TLS=false` только в доверенной лаборатории. При старте он делает подписанный запрос на чтение к `/api/v2/self` и останавливается при ошибке. Инструменты загрузки и работы с узлами OpenGraph пишут в базу BloodHound, поэтому выдавайте токену минимальные права. Установка через `uvx` не читает `.env` из отдельной копии репозитория: переменные задает процесс, запускающий клиент.

Как отключить. Удалите блок `bloodhound_mcp` из MCP-конфигурации клиента. Токен API отзовите в разделе Administration, API Tokens самого BloodHound.

Частые вопросы

Как подключить сервер к Claude Code?

Добавьте в `~/.claude/mcp.json` сервер типа `stdio` с командой `uvx` и аргументами `--from git+https://github.com/mwnickerson/bloodhound_mcp bloodhound-mcp`. Переменные окружения должны быть заданы в процессе, который запускает Claude Code.

Где взять токен API?

В BloodHound откройте Administration, затем API Tokens, создайте токен и скопируйте Token ID и Token Key в переменные `BLOODHOUND_TOKEN_ID` и `BLOODHOUND_TOKEN_KEY`.

Как загрузить данные SharpHound?

Попросите агента загрузить ZIP из каталога или вызовите `file_upload` с `info_type="upload_bytes"` и именем файла. Для нескольких файлов есть цепочка `start_job`, `upload_bytes_to_job`, `end_job`.

Что делать с самоподписанным сертификатом?

В доверенной лаборатории задайте `BLOODHOUND_VERIFY_TLS=false`. Сервер запишет предупреждение, а проверка TLS останется выключенной, поэтому в недоверенных сетях так делать нельзя.

Поддерживается ли Azure?

Да, сервер работает с Active Directory, Azure и Entra ID и с типами узлов OpenGraph. Для Azure есть справочный ресурс `bloodhound://guides/azure` и методика атакующих цепочек.

Обсуждение

Вопросов и отзывов пока нет.

MCP-серверы

MCP-сервер для BloodHound: агент разбирает пути атак в Active Directory на обычном языке, без ручных запросов Cypher к Neo4j

MCP-серверШирокий доступ383Звезды репозитория

MCP-сервер для наступательной безопасности: агент запускает более 150 инструментов пентеста и разведки и ведет автоматическую проверку целей

MCP-серверШирокий доступ13,5 тыс.Звезды репозитория

Набор для авторизованного багбаунти: 50 субагентов, 26 команд и 2 MCP-сервера площадок багбаунти для Claude Code, Codex и еще пяти агентов

ПлагинШирокий доступ1,1 тыс.Звезды репозитория

Сканер безопасности для MCP-серверов: ищет зашитые ключи, отравление инструментов и инъекции в коде репозитория.

CLIМинимальный доступ139Звезды репозитория

MCP-сервер, который дает агенту разбор уязвимостей: данные NVD, EPSS, каталог CISA KEV, связки с MITRE ATT&CK и оценка риска CVE в одном запросе

MCP-серверРасширенный доступ1,8 тыс.Звезды репозитория

Коротко о README

Составные инструменты держат поверхность небольшой и экономят токены: один инструмент отвечает за тип объекта, а нужные данные выбирает `info_type`. Системный промпт требует загружать библиотеку наступательных запросов перед Cypher и не делать выводов о привилегиях без проверки членства в группах и `admincount`.

Бейдж для README

Сообщить о проблеме