Перейти к основному содержимому
Вернуться в категорию

Установка Wazuh SIEM: Управление информацией и событиями безопасности

Установка Wazuh через Docker, развёртывание агентов, анализ логов, мониторинг целостности файлов, сканирование уязвимостей, аудит соответствия и дашборд.

Время чтения: 20 мин Мониторинг
wazuhsiemбезопасностьанализ логовidsсоответствиеdocker

Содержание

Установка Wazuh SIEM: Управление информацией и событиями безопасности

Wazuh — это платформа безопасности с открытым исходным кодом. Она предоставляет комплексные функции безопасности, включая SIEM, IDS, сканирование уязвимостей, мониторинг целостности файлов и аудит соответствия в единой платформе.

Что такое Wazuh?

Основные компоненты и возможности:

  • Wazuh Server: Центральный сервер управления и анализа
  • Wazuh Indexer: Индексация и поиск логов на базе OpenSearch
  • Wazuh Dashboard: Веб-интерфейс на базе Kibana
  • Wazuh Agent: Лёгкий агент на конечных точках
  • Анализ логов: Сбор и анализ логов в реальном времени
  • FIM: Мониторинг целостности файлов
  • Обнаружение уязвимостей: Сканирование уязвимостей
  • Соответствие: Аудит PCI DSS, GDPR, HIPAA
  • Active Response: Автоматический ответ на угрозы

Установка через Docker

hljs bash
git clone https://github.com/wazuh/wazuh-docker.git -b v4.9.0
cd wazuh-docker/single-node
docker compose -f generate-indexer-certs.yml run --rm generator
docker compose up -d

Доступ к дашборду:

https://IP_СЕРВЕРА:443
Пользователь: admin
Пароль: SecretPassword

Установка агента

Linux Agent

hljs bash
curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH | gpg --no-default-keyring --keyring gnupg-ring:/usr/share/keyrings/wazuh.gpg --import && chmod 644 /usr/share/keyrings/wazuh.gpg
echo "deb [signed-by=/usr/share/keyrings/wazuh.gpg] https://packages.wazuh.com/4.x/apt/ stable main" | tee -a /etc/apt/sources.list.d/wazuh.list

sudo apt update
sudo WAZUH_MANAGER='IP_СЕРВЕРА_WAZUH' apt install wazuh-agent -y
sudo systemctl daemon-reload
sudo systemctl enable --now wazuh-agent

Windows Agent

hljs powershell
Invoke-WebRequest -Uri https://packages.wazuh.com/4.x/windows/wazuh-agent-4.9.0-1.msi -OutFile wazuh-agent.msi
msiexec.exe /i wazuh-agent.msi /q WAZUH_MANAGER='IP_СЕРВЕРА_WAZUH'
NET START WazuhSvc

Управление агентами

hljs bash
sudo /var/ossec/bin/agent_control -l
sudo /var/ossec/bin/agent_control -i AGENT_ID

Анализ логов

Сбор Syslog

hljs xml
<ossec_config>
  <remote>
    <connection>syslog</connection>
    <port>514</port>
    <protocol>udp</protocol>
    <allowed-ips>192.168.1.0/24</allowed-ips>
  </remote>
</ossec_config>

Мониторинг пользовательских лог-файлов

hljs xml
<ossec_config>
  <localfile>
    <log_format>syslog</log_format>
    <location>/var/log/myapp/app.log</location>
  </localfile>
  <localfile>
    <log_format>json</log_format>
    <location>/var/log/myapp/access.json</location>
  </localfile>
</ossec_config>

Пользовательские декодеры и правила

hljs xml
<decoder name="myapp">
  <program_name>myapp</program_name>
</decoder>

<decoder name="myapp-auth">
  <parent>myapp</parent>
  <regex>Authentication (\S+) for user (\S+) from (\S+)</regex>
  <order>status, user, srcip</order>
</decoder>
hljs xml
<group name="myapp,">
  <rule id="100001" level="5">
    <decoded_as>myapp-auth</decoded_as>
    <match>Authentication failed</match>
    <description>MyApp: Неудачная попытка входа</description>
  </rule>

  <rule id="100002" level="10" frequency="5" timeframe="120">
    <if_matched_sid>100001</if_matched_sid>
    <same_source_ip />
    <description>MyApp: Обнаружена атака brute force</description>
  </rule>
</group>

Мониторинг целостности файлов (FIM)

hljs xml
<ossec_config>
  <syscheck>
    <disabled>no</disabled>
    <frequency>43200</frequency>
    <scan_on_start>yes</scan_on_start>
    <directories check_all="yes" realtime="yes">/etc,/usr/bin,/usr/sbin</directories>
    <directories check_all="yes" realtime="yes">/var/www/html</directories>
    <ignore>/etc/mtab</ignore>
    <ignore type="sregex">.log$|.swp$</ignore>
  </syscheck>
</ossec_config>

Обнаружение уязвимостей

hljs xml
<ossec_config>
  <vulnerability-detector>
    <enabled>yes</enabled>
    <interval>5m</interval>
    <run_on_start>yes</run_on_start>
    <provider name="canonical">
      <enabled>yes</enabled>
      <os>focal</os>
      <os>jammy</os>
    </provider>
    <provider name="nvd">
      <enabled>yes</enabled>
      <update_interval>1h</update_interval>
    </provider>
  </vulnerability-detector>
</ossec_config>

Active Response

hljs xml
<ossec_config>
  <active-response>
    <command>firewall-drop</command>
    <location>local</location>
    <rules_id>100002</rules_id>
    <timeout>3600</timeout>
  </active-response>
</ossec_config>

Аудит соответствия

Wazuh обеспечивает аудит соответствия различным стандартам безопасности: PCI DSS, GDPR, HIPAA, NIST 800-53, TSC SOC2.

Wazuh API

hljs bash
TOKEN=$(curl -k -X POST 'https://localhost:55000/security/user/authenticate' \
  -u wazuh-wui:MyS3cr37P450r.*- | jq -r '.data.token')

curl -k -X GET "https://localhost:55000/agents?pretty=true" \
  -H "Authorization: Bearer $TOKEN"

Обновление и резервное копирование

hljs bash
# Обновление
cd wazuh-docker/single-node
docker compose down
docker compose pull
docker compose up -d

# Резервное копирование
docker exec wazuh-manager tar -czf /tmp/wazuh-backup.tar.gz /var/ossec/etc /var/ossec/logs
docker cp wazuh-manager:/tmp/wazuh-backup.tar.gz ./wazuh-backup-$(date +%Y%m%d).tar.gz

Установив Wazuh SIEM на серверах REXE, вы сможете выполнять комплексный мониторинг безопасности, анализ логов, сканирование уязвимостей и аудит соответствия. Агентная архитектура позволяет управлять всеми серверами из централизованного дашборда.