Как установить и использовать сканер уязвимостей Vuls на Debian 12

Vuls – это бесплатный сканер уязвимостей с открытым исходным кодом для Linux и FreeBSD. Vuls написан в основном на Go и может быть запущен где угодно. Вы можете запустить Vuls в облаке, на месте, в Docker, и поддерживает основные дистрибутивы. Vuls обеспечивает высококачественное сканирование с поддержкой множества баз данных уязвимостей, таких как NVD, JVN, OVAL, RHSA/ALAS/ELSA/FreeBSD-SA.

С помощью Vuls вы можете сканировать несколько операционных систем, используя различные методы. Вы можете сканировать локальные системы вашего хоста, а также удаленные хосты/серверы через SSH. Vuls также предоставляет несколько методов сканирования: быстрое сканирование, не требующее прав root, и глубокое сканирование, требующее прав root. Vuls может сканировать несколько целевых серверов одновременно. По окончании сканирования вы можете отправить результат по электронной почте и в Slack.

В этом руководстве вы узнаете, как установить Vuls Vulnerability Scanner на сервер Debian 12. Вы установите Vuls, настроите базы данных CVE, а затем просканируете локальную систему и удаленную машину Vuls.

Установка зависимостей

Перед установкой Vuls необходимо убедиться, что установлены зависимости. В этом разделе вы установите ‘debian-goodies‘ и ‘reboot-notifier‘ пакеты в качестве зависимостей для Vuls.

Сначала выполните следующую команду, чтобы обновить индекс пакетов Debian.

sudo apt update

Теперь установите пакеты ‘debian-goodies‘ и ‘reboot-notifier‘ с помощью следующей команды. Введите ‘Y‘, чтобы подтвердить установку.

sudo apt install debian-goodies reboot-notifier

установить deps

Установка Vuls с помощью скрипта установщика

После установки зависимостей вы будете устанавливать Vuls с помощью скрипта установщика. Он автоматически скомпилирует и установит Vuls и дополнительные инструменты для Vuls в вашу систему.

Чтобы установить Vuls, выполните следующую команду. С ее помощью вы загрузите скрипт установщика Vuls ‘install.sh’ и запустите его.

bash

установить vuls

Now the installer script will install the latest version of Golang, then compile and install multiple tools for Vuls, such as ‘go-cti‘, ‘go-cve-dictionary‘, ‘goval-dictionary‘, ‘go-exploitdb‘, ‘go-kev‘, ‘go-msfdb‘, and ‘gost‘.

install and comile go-cve-dictionary

установить гост

установить вирусы

После завершения установки проверьте ‘/usr/local/bin‘ каталог, и вы увидите бинарный файл для Vuls с его инструментами.

ls /usr/local/bin/

Теперь вы можете проверить сообщение справки с помощью команды ‘vuls help’, приведенной ниже.

vuls help

Вы получите результат, подобный следующему:

vuls go

Настройка вулса

После установки Vuls вам нужно будет настроить его перед сканированием любого компьютера или сервера. В этом разделе вы создадите новую директорию и файлы для установки Vuls. Вы определите базы данных CVE для конкретных баз данных SQLite и создадите первую конфигурацию сканирования для localhost.

Создайте новую директорию ‘/opt/vuls‘ и перейдите в него. Затем создайте новый файл ‘config.toml‘ с помощью редактора ‘nano’.

mkdir -p /opt/vuls; cd /opt/vuls
nano config.toml

Введите следующую конфигурацию для интеграции баз данных CVE с Vuls. Также в нижней строке вы определяете сканирование для localhost.

[cveDict]
type = "sqlite3"
SQLite3Path = "/opt/vuls/cve.sqlite3"

[ovalDict]
type = “sqlite3”
SQLite3Path = “/opt/vuls/oval.sqlite3”

[gost]
type = “sqlite3”
SQLite3Path = “/opt/vuls/gost.sqlite3”

[metasploit]
type = “sqlite3”
SQLite3Path = “/opt/vuls/go-msfdb.sqlite3”

[servers]

[servers.localhost]
host = “localhost”
port = “local”
scanMode = [ “fast-root” ]
#scanMode = [“fast”, “fast-root”, “deep”, “offline”]

Сохраните и выйдите из файла после завершения.

Наконец, запустите команду ‘vuls‘ команду ниже, чтобы проверить конфигурацию.

vuls configtest

Если конфигурация выполнена правильно, вы увидите следующий результат:

проверить конфигурацию

Создание баз данных CVE с помощью Vuls

В этом разделе вы будете создавать новые базы данных CVE из различных источников с помощью инструментов Vuls. Вы создадите базы данных CVE для трекера безопасности Debian, баз данных NVD, OVAL и Metasploit.

Сначала перейдите к разделу ‘/opt/vuls‘ директория:

cd /opt/vuls

Теперь выполните приведенную ниже команду, чтобы загрузить и собрать базы данных CVE из нескольких источников. В этом примере вы будете использовать базы данных CVE из трекера безопасности Debian, NVD, OVAL и базы данных Metasploit.

gost fetch debian --dbpath /opt/vuls/gost.sqlite3
go-cve-dictionary fetch nvd --dbpath /opt/vuls/cve.sqlite3
goval-dictionary fetch debian 12 --dbpath /opt/vuls/oval.sqlite3
go-msfdb fetch msfdb --dbpath /opt/vuls/go-msfdb.sqlite3

скачать adtabase

скачать базу данных cve

скачать базу данных cve

После завершения процесса ваши базы данных CVE будут доступны в ‘/opt/vuls‘ каталог. Проверьте каталог ‘/opt/vuls‘ каталог с помощью следующей команды.

ls /opt/vuls/*.sqlite3

Сканирование localhost с помощью Vuls

На данном этапе вы настроили Vuls и создали базы данных CVE. Теперь вы готовы к сканированию localhost или локальной машины с помощью Vuls.

Чтобы просканировать локальную машину, запустите команду ‘vuls‘ команда ниже.

vuls scan localhost

После завершения процесса вы увидите в терминале результат simple.

Теперь запустите команду ‘vuls tui‘ команда ниже, чтобы просмотреть отчет о сканировании в деталях.

vuls tui

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

vuls tui

Нажмите ‘Ctrl+c’, чтобы выйти из интерфейса пользователя терминала Vuls.

Сканирование удаленного сервера с помощью Vuls

В этом разделе вы будете сканировать удаленный сервер с помощью Vuls. В данном примере целевым сервером будет сервер Rocky Linux 9 с IP-адресом ‘192.168.10.45‘ и пользователь ‘рок‘.

Сначала выполните приведенную ниже команду для загрузки базы данных OVAL CVE для RedHat 9, используя следующее:

goval-dictionary fetch redhat 9 --dbpath /opt/vuls/oval.sqlite3

скачать атабазу

Теперь сгенерируйте новый открытый и закрытый ключ SSH, а затем загрузите открытый ключ на целевой сервер. В этом примере целевым сервером является Rocky Linux 9 с IP-адресом ‘192.168.10.45‘ и пользователя SSH ‘качать‘.

ssh-keygen -t ed25519
ssh-copy-id [email protected]

Теперь войдите на целевой сервер с помощью команды ‘ssh’ ниже и установите ‘lsof‘ пакет с помощью следующей команды.

ssh [email protected]
sudo dnf install lsof -y

Введите ‘выход‘, чтобы выйти из сервера Rocky Linux.

Далее перейдите в раздел ‘/opt/vuls’ и отредактируйте каталог ‘config.toml‘ файл с помощью редактора ‘nano’.

cd /opt/vuls/
nano config.toml

Вставьте следующую конфигурацию, чтобы создать новое сканирование для удаленной системы Rocky Linux 9 server. Также не забудьте изменить IP-адрес и пользователя на свои данные.

[servers.debian-server]
host = "192.168.10.45"
port = "22"
user = "rock"
keyPath = "/root/.ssh/id_ed25519"
scanMode = [ "fast-root" ] # "fast", "fast-root" or "deep"

Сохраните файл и выйдите из редактора.

С новой конфигурацией вы можете протестировать ваш ‘config.toml’ файл с помощью приведенной ниже команды.

vuls configtest

проверить конфигурацию

Если ошибок нет, просканируйте удаленный сервер с помощью программы ‘vuls’ команда ниже.

vuls scan rocky9

Наконец, выполните команду ‘vuls’ выполните команду ниже, чтобы получить отчет об удаленном сканировании.

vuls tui

Ниже показан подробный отчет об удаленном сервере Rocky Linux 9.

результат сканирования

Заключение

Поздравляем! Вы завершили установку сканера уязвимостей Vuls на сервер Debian 12. Вы также узнали, как создавать базы данных CVE с помощью дополнительных инструментов Vuls. После этого. Вы также узнали, как сканировать локальные и удаленные серверы/машины с помощью Vuls.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *