Wazuh MCP Server
MCP-сервер для Wazuh: агент разбирает оповещения и уязвимости, проверяет состояние SIEM и вызывает инструменты реагирования
- 263 ★ репозитория
- Последний коммит
- MIT
Широкий доступ
Почему такой уровень
- Инструменты записи блокируют IP, изолируют хосты, останавливают процессы, отключают пользователей и переносят файлы в карантин
- Сервер хранит пароли менеджера и Indexer и читает оповещения, уязвимости и конфигурацию агентов
- Токен открывает данные и операции в пределах выданных прав; без обратного прокси сервер работает по обычному HTTP
Установка
- Работает в
Ручная установка
git clone https://github.com/gensecaihq/Wazuh-MCP-Server.git
cd Wazuh-MCP-Server
cp .env.example .envДо запуска заполните .env своими параметрами Manager, Indexer и секретами авторизации. Затем выполните docker compose up -d. /health показывает живой процесс, /ready проверяет доступность компонентов Wazuh.
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Инструменты записи блокируют IP, изолируют хосты, останавливают процессы, отключают пользователей и переносят файлы в карантин
- Сервер хранит пароли менеджера и Indexer и читает оповещения, уязвимости и конфигурацию агентов
- Токен открывает данные и операции в пределах выданных прав; без обратного прокси сервер работает по обычному HTTP
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Wazuh MCP Server дает MCP-клиенту доступ к вашей системе Wazuh через 55 инструментов в восьми наборах: оповещения, агенты, уязвимости, анализ угроз, соответствие стандартам, состояние менеджера и кластера, внешний контекст и активное реагирование. Сервер работает по Streamable HTTP по адресу `/mcp`. Он выполняет инструменты, но собственной модели не вызывает. 41 инструмент только читает: сводки и поиск по оповещениям, процессы и порты агентов, критичные уязвимости, проверки PCI-DSS, HIPAA, SOX, GDPR, NIST и ISO 27001, статистика кластера. Остальные 14 меняют состояние: блокировка IP, изоляция хоста, остановка процесса, отключение пользователя, карантин файла и обратные операции. Для них нужна область доступа `wazuh:write`, которая по умолчанию не выдается. В рабочем режиме запись требует флага `confirm=true`; его передает сам клиент. У сервера есть пять готовых промптов для расследования, охоты на угрозы, аудита соответствия, оценки уязвимостей и проверки по ISO 27001. Он запускается через Docker Compose или готовый образ, умеет работать с несколькими кластерами и с локальной моделью через vLLM и Open WebUI.
Для кого. Для инженеров SOC и администраторов Wazuh, которые хотят разбирать оповещения и уязвимости через Claude или локальную модель и сохранять контроль над действиями реагирования.
Подходит, если
- Нужно быстро разобрать поток оповещений: сгруппировать их, найти закономерности и проверить репутацию индикаторов
- Перед аудитом нужен отчет по PCI-DSS, HIPAA, GDPR, NIST или ISO 27001 с разбором пробелов
- Нужно получить список критичных уязвимостей по агентам и приоритизировать исправления
- Нужно подключить локальную модель через vLLM и Open WebUI из готового набора Compose: данные SIEM нельзя отправлять наружу
- Нужно доверить агенту реагирование на инциденты частично: чтение разрешено, а запись открыта точечно с подтверждением
Не подходит, если
- Нужна независимая проверка согласия человека на каждое действие: флаг подтверждения может передать сам агент
- Версия Wazuh вне диапазона 4.8.0–4.14.7: совместимость с другими версиями не заявлена
- Нет доступа к Wazuh Indexer: инструменты оповещений, уязвимостей и части проверок соответствия без него не работают
- Нужен публичный сервер без обратного прокси с TLS
Пример запроса к агенту
Покажи оповещения высокого уровня за сутки, сгруппируй по агентам и для самых частых IP проверь репутацию, но ничего не блокируйMCP
- Транспорт
- http
- Авторизация
- API-ключ
Переменные окружения
WAZUH_HOSTобязательная- Адрес менеджера Wazuh.
WAZUH_USERобязательная- Пользователь API менеджера.
WAZUH_PASSобязательная, секрет- Пароль пользователя API менеджера.
WAZUH_INDEXER_HOST- Адрес Wazuh Indexer, нужен для оповещений и уязвимостей.
WAZUH_INDEXER_PASSсекрет- Пароль пользователя Indexer.
AUTH_SECRET_KEYобязательная, секрет- Ключ подписи токенов, обязателен в рабочем режиме.
MCP_API_KEYобязательная, секрет- Ключ API вида wazuh_, из него выпускаются токены доступа.
Ограничения
Для запуска требуются Docker с Compose v2 и пользователь API менеджера Wazuh. Сервер слушает обычный HTTP, поэтому перед внешним доступом поставьте обратный прокси с TLS. Для Claude в виде пользовательского коннектора нужен публичный адрес HTTPS.
Сертификат менеджера по умолчанию проверяется. У свежей установки Wazuh сертификат самоподписанный, и для первой пробы можно включить `WAZUH_ALLOW_SELF_SIGNED=true`, но тогда проверка отключается. Ответ активного реагирования подтверждает только доставку команды агенту Wazuh. Выполнение проверяйте инструментами `wazuh_check_*`. Блокировки действуют, пока их не снимут: срок им задать нельзя, сервер отклоняет положительное значение. При обновлении с версии 4.x сначала прочтите `UPGRADING.md`. Код распространяется по лицензии MIT. Начните с токена только для чтения.
Как отключить. Выполните `docker compose down` в папке сервера и удалите коннектор из клиента. Чтобы оставить только чтение, держите в `MCP_API_KEY_SCOPES` одну область `wazuh:read` и скройте опасные инструменты через `WAZUH_DISABLED_TOOLS`.
Частые вопросы
Как подключить Wazuh MCP Server к Claude?
Для пользовательского коннектора Claude нужен HTTPS-адрес с TLS-прокси и OAuth: режим `AUTH_MODE=oauth` и настроенный `OAUTH_ISSUER_URL`. Для остальных HTTP-клиентов настройте получение токена и заголовок `Authorization`. Одного запуска контейнера для подключения недостаточно.
Может ли агент заблокировать IP или изолировать хост?
Только если токену выдана область `wazuh:write`. Без нее 14 инструментов записи даже не видны в списке. Сервер отказывается блокировать loopback, адрес менеджера и защищенные адреса из `WAZUH_PROTECTED_IPS`, а в рабочем режиме требует `confirm=true`.
Можно ли работать с локальной моделью?
Да. Файл `compose.local-llm.yml` добавляет vLLM с моделью Qwen3.6-35B-A3B FP8, которой нужно около 42 ГБ видеопамяти на одной карте NVIDIA, и Open WebUI. Для небольших моделей список инструментов сокращают через `WAZUH_TOOLSETS` и `WAZUH_DISABLED_TOOLS`.
Уходят ли данные SIEM во внешние сервисы?
Да, если MCP подключен к облачной модели: ответы SIEM попадут в ее контекст. Отдельный необязательный инструмент внешнего поиска отправляет запросы в You.com и требует `YDC_API_KEY`. Локальный режим модели нужно настраивать отдельно.
Как работает журнал аудита?
Каждый вызов инструмента записи, прошедший проверку области и подтверждения, логируется до и после выполнения с именем субъекта, сессией, аргументами и итогом. Секреты и токены из вывода и логов вырезаются.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыСканер безопасности для MCP-серверов: ищет зашитые ключи, отравление инструментов и инъекции в коде репозитория.
MCP-сервер, который дает агенту разбор уязвимостей: данные NVD, EPSS, каталог CISA KEV, связки с MITRE ATT&CK и оценка риска CVE в одном запросе
Security Detections MCP — база правил детектирования
Security Detections MCP
MCP-сервер собирает правила Sigma, Splunk, Elastic и KQL в одну базу: агент ищет детекторы и пробелы в покрытии ATT&CK
MCP-сервер для наступательной безопасности: агент запускает более 150 инструментов пентеста и разведки и ведет автоматическую проверку целей
Мост между MCP-клиентом и терминалом Kali Linux: агент запускает nmap, sqlmap, hydra и другие инструменты для авторизованного пентеста и CTF
cvENGINE находит внешние активы домена и уязвимости, которые уже эксплуатируют, а MCP-сервер ведет сканы из Claude Code
Коротко о README
Репозиторий содержит сервер на Python 3.11 и новее на FastAPI, образы для amd64 и arm64 и набор документов: настройка, интеграция с Claude, локальные модели, несколько кластеров, эксплуатация, защита. В нем есть проверка выбора инструментов `evals/tool_selection.py` на 25 сценариях SOC, включая две попытки инъекции промпта.