ELK, SIEM из OpenSource, Open Distro: Интеграция с WAZUH

Kate

Administrator
Команда форума
Wazuh — это механизм обнаружения, просмотра и сравнения соответствия безопасности с открытым исходным кодом.


Он был создан как форк OSSEC HIDS, позже был интегрирован с Elastic Stack и OpenSCAP, которые превратились в более комплексное решение.


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

Оглавление всех постов.



Статья разделена на следующие разделы:


  • Установка сервера и агента Wazuh

  1. Установка Wazuh-сервера
  2. Установка Wazuh-агента
  3. Установка приложения и интеграция с kibana
  4. Настройка и подключение агентов

  • Активный ответ

1- Установка wazuh сервера и агента​


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


Сервер Wazuh: запускает менеджер Wazuh, API и Filebeat. Он собирает и анализирует данные от развернутых агентов.


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


1.1- Введение в архитектуру сервера Wazuh:​


Архитектура Wazuh основана на агентах, работающих на контролируемых хостах, которые пересылают данные журнала на центральный сервер. Кроме того, поддерживаются безагентные устройства (такие как межсетевые экраны, коммутаторы, маршрутизаторы, точки доступа и т. Д.), Которые могут активно отправлять данные журнала через системный журнал и / или периодически проверять изменения своей конфигурации для последующей пересылки данных на центральный сервер. Центральный сервер декодирует и анализирует входящую информацию и передает результаты в кластер Elasticsearch для индексации и хранения.


Мы будем использовать архитектуру с одним хостом (Single-host architecture (HIDS)), которая имеет следующие характеристики:


ufo620zmrugpva_4s6ab4x3h9fo.png



Подробнее о другой архитектуре. Посетите официальный сайт:


https://documentation.wazuh.com/3.8/getting-started/architecture.html


1.2- Установка Wazuh manager, API и Filebeat​


Здесь мы предоставим вам официальный сайт wazuh для установки


https://documentation.wazuh.com/3.1...ages_ubuntu.html#wazuh-server-packages-ubuntu


После установки нам нужно настроить файл конфигурации filebeat: вы можете подключить filebeat к выходу elasticsearch или выходу logstash. В нашем случае мы настроим вывод elasticsearch без проверки ssl (здесь мы видим, что включен только модуль предупреждений)


cd /etc/filebeat
nano filebeat.yml

oe5cd8jj3cmmrblf3afd4p2z6_m.png



Теперь настроим шаблон индекса и запустим 3 службы:


filebeat setup — index-management
service filebeat start
service wazuh-manager start
service wazuh-api start

4nspbkj1hvz4y6wkvkde10jca3m.png



lz7cdqxf9o1ldqnftd3ppybn8mo.png



1.3- Установка wazuh-агента​


Используйте эту ссылку для установки


https://documentation.wazuh.com/3.1...eater.html#wazuh-agent-package-ubuntu12-04-or — большая


Проверьте, правильно ли работает wazuh-agent:


x9_4prpzz1fap_l74vnipucpysi.png



1.4- Установка приложения wazuh и интеграция с Kibana:​


Это приложение станет мостом между сервером Wazuh и Kibana в ELK, который мы ранее установили.


Это приложение предоставляется только в репозитории Git Hub, а не на официальном веб-сайте.


Мы будем устанавливать приложение wazuh, совместимое с ELK Stack 7.6.1. Для этого.


cd /usr/share/kibana

sudo -u kibana bin/kibana-plugin install https://packages.wazuh.com/wazuhapp/wazuhapp-3.12.2_7.6.1.zip

Рекомендуется увеличить размер Kibana, чтобы обеспечить установку плагина:


cat >> /etc/default/kibana << EOF
NODE_OPTIONS=" —max_old_space_size=2048"
EOF

Перезапустите Кибану:


systemctl restart kibana

Вы можете проверить все доступные версии на этом сайте:


https://github.com/wazuh/wazuh-kibana-app


Теперь в вашей кибане вы должны увидеть, что символ wazuh появился на левой вкладке вашей кибаны. Нажмите на него. Откроется wazuh api. Изучите его. У вас должно получиться нечто подобное. На данный момент у вас не будет никаких агентов, связанных с ним. В следующей части мы обсудим, как подключить ваших агентов.


jbkyzf8c5ckwofzi2f555rsxacq.png



1–5 Подключение и настройка агентов​


Есть много способов зарегистрировать агента. В этой статье мы воспользуемся ручным способом.


В интерфейсе командной строки хоста Wazuh manager мы запустим manage_agents, чтобы добавить агента. В этом примере мы собираемся добавить нового агента. Для этого типа запустите следующую команду:


/var/ossec/bin/manage_agents

ynmymlcpbwugiz0lfm3hurqaq_k.png



Выберите агента добавления, набрав A и нажав клавишу ВВОД. Затем мы вводим имя, которое хотим дать нашей машине, в данном случае user1. Мы вводим IP-адрес конечного устройства. Обратите внимание: если у вас нет статического IP-адреса для конечного устройства, вы можете использовать ключевое слово (любой) вместо IP-адреса. После этого нажмите Enter


Теперь мы собираемся извлечь секретный ключ, который позволит нашему агенту подключиться к серверу wazuh.


Для этого на этот раз мы выберем опцию E извлекать ключ для агента. Затем мы вводим идентификатор нашего агента, и в этом случае я выбрал агента с идентификатором 001.


tkhh0yfnojhdxnvwxpjac5zmlfu.png



После того, как вы добавили агент на хост менеджера Wazuh, откройте сеанс на хосте агента Linux как пользователь root. После этого импортируем ключ и подключим агента к менеджеру.


Введите следующее


/var/ossec/bin/manage_agents -i "Ваш_секретный_ключ"

Вы должны получить такой результат, наберите "y" и нажмите Enter.


y78y2zislolzy3xx-bdouaesfeu.png



Измените конфигурацию агента Wazuh в /var/ossec/etc/ossec.conf, чтобы добавить IP-адрес сервера Wazuh. В разделе <клиент> <сервер> измените значение MANAGER_IP на адрес сервера Wazuh. Адрес Wazuh-сервера может быть IP-адресом или DNS-именем:


evryq2eby5j5aou2uz1crxqp53g.png



1.6- Проверка полученных данных:​


Чтобы проверить, получает ли ELK данные от сервера wazuh. Перейдите в Управление индексами. Вы должны получить что-то похожее на это (wazuh-alert и wazuh-monitoring)


j1xi7f1tcudgvlbkmlqpvo_rop8.png



  1. Активный ответ Wazuh:​


Wazuh предоставляет модуль активного ответа для обработки автоматического ответа на определенные предупреждения, которые вы настраиваете в Wazuh-manager.


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


Например, если мы хотим автоматически блокировать определенные IP-адреса на основе определенных журналов, поступающих с вашего конечного устройства, показывая, что они выполняют атаку Bruteforce, независимо от того, является ли это RDP или SSH, в зависимости от ОС хоста.


Мы можем создать активный ответ, который будет блокировать IP-адрес злоумышленника, если он соответствует поведению с набором правил, хранящимся в Wazuh. Мы возьмем пример SSH-Bruteforce. Мы будем рассматривать 8 неудачных попыток входа в систему как попытку атаки. Когда это событие происходит, действует правило "5712 — SSHD брутфорс пытается получить доступ к системе". Будет запущено. Таким образом, команда блокировки IP выполняется.


Во-первых, нам нужно определить команду, которую мы будем использовать для ответа.


OSSEC поставляется с набором общих скриптов, используемых в активном ответе. Эти сценарии находятся в / var / ossec / active-response / bin / на сервере. Мы собираемся использовать сценарий firewall-drop.sh, который должен работать с распространенными операционными системами Linux / Unix и позволяет блокировать вредоносный IP-адрес с помощью локального брандмауэра.


Определите команду в ossec.conf вашего OSSEC Manager:


nano /var/ossec/etc/ossec.conf

Мы собираемся использовать скрипт firewall-drop.sh, который должен работать с распространенными операционными системами Linux / Unix и позволяет блокировать вредоносный IP-адрес с помощью локального брандмауэра.


b3xfvovh7clbgnohlmy8uarpqr8.png



Затем в том же файле мы настраиваем OSSEC для запуска активного ответа. Основные поля:


-command: ранее определенная команда (firewall-drop).


-location: Где команда должна быть выполнена. Мы хотим выполнить его для агента, сообщившего о событии. Итак, мы используем local.


-rules_id: команда выполняется, если срабатывает правило 5712.


-timeout: заблокировать IP на 60 секунд на брандмауэре (iptables, ipfilter и т. д.)


x9cia7cr3btbmbiz8hx5yzpnccs.png



Затем сохраните модификацию и закройте файл. Перезапустите wazuh-manager командой:


service wazuh-manager restart

Теперь на ваших хостах wazuh-agent не забудьте изменить файл ossec.conf и добавить:


<active-response>
<disabled>no</disabled>
</active-response>

Теперь вы можете попытаться подобрать SSH на вашем хост-компьютере, на котором установлен агент Wazuh, и вы будете заблокированы на 60 секунд после 8 неудачных попыток входа.

Источник статьи: https://habr.com/ru/post/516332/
 
Сверху