К основному контенту

Zabbix Threat Control — плагин оценки уязвимости с помощью Zabbix

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

Что делает плагин

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

Информация отображается в Zabbix в следующем формате:

  • Максимальный показатель CVSS для каждого сервера.
  • Команда для исправления всех обнаруженных уязвимостей для каждого сервера.
  • Список бюллетеней по безопасности с описаниями уязвимых пакетов, действительными для вашей инфраструктуры.
  • Список всех уязвимых пакетов в вашей инфраструктуре.



Информация о бюллетенях по безопасности и пакетах включает:

  • Индекс воздействия на инфраструктуру.
  • CVSS-оценка пакета или бюллетеня.
  • Количество затронутых серверов.
  • Подробный список затронутых хостов.
  • Гиперссылка на описание бюллетени.



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

Предложенное представление позволяет выборочно обновлять серверы или пакеты.

Этот подход позволяет исправлять уязвимости с использованием разных стратегий:

  • все уязвимости на конкретном сервере;
  • одна уязвимость во всей инфраструктуре.

Это можно сделать непосредственно из Zabbix (используя стандартную функциональность) либо по команде администратора, либо автоматически.

Как работает плагин

  • Используя Zabbix API, плагин получает списки установленных пакетов, имен и версий ОС со всех серверов в инфраструктуре (если с ними связан шаблон «Vulners OS-Report»).
  • Передача данных в Vulners
  • Получает информацию об уязвимостях для каждого сервера.
  • Обрабатывает полученную информацию, агрегирует ее и отправляет обратно в Zabbix через zabbix-sender.
  • Наконец, результат отображается в Zabbix.

Требования

На узле zabbix-сервера:

  • python 3 (только для ztc скриптов)
  • python modules: pyzabbix, jpath, requests
  • zabbix version 3.4
  • zabbix-sender utility
  • zabbix-get utility

На всех серверах, требующих сканирования уязвимостей:

  • zabbix-agent

Установка

RHEL, CentOS и другие RPM

rpm -Uhv https://repo.vulners.com/redhat/vulners-repo.rpm

На узле zabbix-сервера:

yum install zabbix-threat-control-main zabbix-threat-control-host

На всех серверах, требующих сканирования уязвимостей:

yum install zabbix-threat-control-host

Debian и другие на его основе

 wget https://repo.vulners.com/debian/vulners-repo.deb dpkg -i vulners-repo.deb 

На узле zabbix-сервера:

apt-get update && apt-get install zabbix-threat-control-main zabbix-threat-control-host

На всех серверах, требующих сканирования уязвимостей:

apt-get update && apt-get install zabbix-threat-control-host

Сборка из исходников

На узле zabbix-сервера:

git clone https://github.com/vulnersCom/zabbix-threat-control.git mkdir -p /opt/monitoring/zabbix-threat-control cp zabbix-threat-control/*.py /opt/monitoring/zabbix-threat-control/ cp zabbix-threat-control/*.conf /opt/monitoring/zabbix-threat-control/ chown -R zabbix:zabbix /opt/monitoring/zabbix-threat-control chmod 640 /opt/monitoring/zabbix-threat-control/*.conf touch /var/log/zabbix-threat-control.log chown zabbix:zabbix /var/log/zabbix-threat-control.log chmod 664 /var/log/zabbix-threat-control.log

На всех серверах, требующих сканирования уязвимостей:

git clone https://github.com/vulnersCom/zabbix-threat-control.git mkdir -p /opt/monitoring/ cp -R zabbix-threat-control/os-report /opt/monitoring/ chown -R zabbix:zabbix /opt/monitoring/os-report

Настройка

Файл конфигурации находится здесь:

/opt/monitoring/zabbix-threat-control/ztc.conf

Учетные данные Vulners

Для использования API Vulners вам нужен api-ключ.

Чтобы получить его, выполните следующие шаги:

Войдите в систему на vulners.com.
Перейдите в userinfo https://vulners.com/userinfo.
Выберите «API KEYS».
Выберите «scan» в меню областей и нажмите «Generate new key».
Вы получите api-ключ, который выглядит так:

RGB9YPJG7CFAXP35PMDVYFFJPGZ9ZIRO1VGO9K9269B0K86K6XQQQR32O6007NUK

Теперь вам нужно добавить api-ключ Vulners в свой файл конфигурации (параметр) — >VulnersApiKey

VulnersApiKey = RGB9YPJG7CFAXP35PMDVYFFJPGZ9ZIRO1VGO9K9269B0K86K6XQQQR32O6007NUK

Учетные данные Zabbix

Чтобы подключиться к Zabbix, вам нужно указать следующее в файле конфигурации:

URL, имя пользователя и пароль. Обратите внимание, что Пользователь должен иметь права на создание групп, хостов и шаблонов в Zabbix.

Доменное имя и порт Zabbix-сервера для передачи данных с помощью zabbix-отправителя.

Ниже приведен пример допустимого файла конфигурации:

ZabbixApiUser = yourlogin ZabbixApiPassword = yourpassword ZabbixFrontUrl = https://zabbixfront.yourdomain.com ZabbixServerFQDN = zabbixserver.yourdomain.com ZabbixServerPort = 10051

Объект Zabbix

Чтобы создать все необходимые объекты в Zabbix, запустите:

prepare.py

скрипт с параметрами:

/opt/monitoring/zabbix-threat-control/prepare.py -uvtda 

Он проверит, что утилиты zabbix-agent и zabbix-get настроены правильно и создают следующие объекты с использованием Zabbix API:

  • Шаблон, используемый для сбора данных с серверов.
  • Zabbix хосты для получения данных об уязвимостях.
  • Уязвимость устраняется действием команды.
  • Панель инструментов для отображения результатов.

Серверы, требующие сканирования на наличие уязвимостей

Zabbix-агент должен иметь возможность выполнять удаленные команды.

Для этого измените параметры в файле конфигурации zabbix-agent

/etc/zabbix/zabbix_agentd.conf

добавьте следующие параметры:

EnableRemoteCommands=1 LogRemoteCommands=1

Zabbix-агент должен иметь возможность обновлять пакеты с правами root. Для этого добавьте строку в файл /etc/sudoers

zabbix ALL=(ALL) NOPASSWD: /usr/bin/yum -y update * zabbix ALL=(ALL) NOPASSWD: /usr/bin/apt-get --assume-yes install --only-upgrade *

Выполнение

 /opt/monitoring/os-report/report.py 

Скрипт передает имя, версию и установленные пакеты операционной системы в Zabbix.

Работает с zabbix-агентом на всех хостах, к которым связан шаблон «Vulners OS-Report».

 /opt/monitoring/zabbix-threat-control/scan.py 

Скрипт обрабатывает необработанные данные из zabbix и vulners и переносит  их в систему мониторинга с помощью zabbix-sender.

Работает с zabbix-агентом на сервере Zabbix через пункт «Service» на хосте «Vulners — Statistics».

Эти 2 скрипта выше запускаются один раз в день.

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

 /opt/monitoring/zabbix-threat-control/fix.py 

Скрипт запускает команды для исправления уязвимостей на серверах.

Выполняется как удаленная команда в действии «Vunlers» в Zabbix.

см.также:

  • Выполнение сканирования уязвимостей в вашей сети с помощью Maltego
  • Как установить Zabbix и добавить удаленные хосты на Ubuntu 18.04
  • Как установить и настроить Zabbix на RHEL/CentOS 7
  • Как добавить мониторинг MySQL в Zabbix 3.2
  • Лучшие инструменты для мониторинга системы Windows
   

Комментарии


Дистанционная компьтерная помощь, удаленная компьютерная помощь онлайн.

Популярные сообщения из этого блога

Лучшие плагины для OBS Studio

Open Broadcast Software или OBS - это свободное программное обеспечение с открытым исходным кодом для стриминга аудио и видео данных в сеть интернет. Программа полностью кроссплатформенная и может работать в Windows, Linux или MacOS. Это отличная альтернатива для таких программ, как Wirecast и XSplit. OBS использует для вещания стандартный протокол обмена сообщениями в реальном времени, а поэтому может транслировать данные в любой сервис, поддерживающий это, например, Yotube. Несмотря на широкие возможности OBS, программа поддерживает еще и множество плагинов. В этой статье мы рассмотрим лучшие плагины для OBS Studio, которые вы можете использовать. Содержание статьи: Лучшие плагины OBS Studio 1. Browser Source Plugin 2. Video Source Plugin 3. Simple Scene Switcher 4. DirectShow Audio Source 5. CLR Browser Source 6. OBS Remote 7. AMD Advanced Media Framework Encoder 8. Text Source Plugin Выводы Лучшие плагины OBS Studio Чтобы найти плагины OBS Studio для Video пользователям пр…

Лучшие аналоги Paint для Linux

Когда я работал в Windows, я часто использовал стандартную программу редактора изображений Windows - Paint. Не всегда нужен очень и многофункциональный инструмент вроде Photoshop или Gimp. Иногда, чтобы подправить ту или иную картинку, дорисовать на ней несколько фигур или вставить текст достаточно простого, легкого в освоении графического редактора вроде Paint. В Linux таких программ довольно много. В этой инструкции мы рассмотрим лучшие аналоги Paint для Linux. В этот список не будут включены такие программы, как Gimp и Krita, ведь это полнофункциональные графические редакторы, векторные редакторы, такие как Inkscape мы тоже рассматривать не будем. А теперь перейдем к списку. Содержание статьи: KolourPaint MyPaint Gnome Paint XPaint Pinta mtPaint GPaint Rassam-paint Выводы KolourPaint На первом месте в списке аналогов Piant для Linux будет KoloutPaint. Это стандартный графический редактор для окружения рабочего стола KDE. Он поддерживает множество форматов изображений PNG, J…

Подключение OneDrive в Linux

OneDrive (Ранее известный как SkyDrive) это популярное облачное хранилище файлов от Майкрософт. Сейчас OneDrive бесплатно предоставляет 7 гигабайт пространства новым пользователям. Как вы знаете OneDrive хорошо интегрирован с другими продуктами компании  Microsoft. В OneDrive Также есть официальный клиент который автоматически загружает ваши видео и фотографии с камеры в облако. Но к сожалению этот клиент недоступен для операционных систем семейства Linux. Но не все так плохо. Сообщество открытого программного обеспечения уже нашло решение. Это opedrive-d от Boilermaker. Запустившись как демон программа автоматически синхронизирует локальную папку с облаком OneDrive. Содержание статьи: Установка Onedrive-d в Linux Настройка Синхронизация локальной папки с OneDrive Установка Onedrive-d в Linux Несмотря на то что onedrive-d разрабатывается для Ubuntu/Debian, CentOs/Fedora/RHEL поддерживается тоже хорошо. Для установки достаточно набрать несколько команд: $ git clone https://gith…