Wie man Vuls Vulnerability Scanner unter Debian 12 installiert und verwendet

Vuls ist ein agentenloser, freier und quelloffener Schwachstellenscanner für Linux und FreeBSD. Vuls ist hauptsächlich in Go geschrieben und kann überall ausgeführt werden. Du kannst Vuls in der Cloud, vor Ort und auf Docker betreiben und unterstützt die wichtigsten Distributionen. Vuls bietet hochwertige Scans, die mehrere Schwachstellen-Datenbanken wie NVD, JVN, OVAL, RHSA/ALAS/ELSA/FreeBSD-SA unterstützen.

Mit Vuls kannst du mehrere Betriebssysteme mit verschiedenen Methoden scannen. Du kannst die lokalen Systeme deines Hosts scannen und du kannst entfernte Hosts/Server über SSH scannen. Außerdem bietet es mehrere Scan-Methoden: einen schnellen Scan, für den keine Root-Rechte erforderlich sind, und einen Tiefenscan, für den Root-Rechte erforderlich sind. Vuls kann mehrere Zielserver auf einmal scannen. Wenn der Scan abgeschlossen ist, kannst du das Ergebnis per E-Mail und Slack verschicken.

In dieser Anleitung erfährst du, wie du Vuls Vulnerability Scanner auf dem Debian 12 Server installierst. Du installierst Vuls, richtest CVE-Datenbanken ein und scannst dann das lokale System und den entfernten Rechner mit Vuls.

Voraussetzungen

Bevor du loslegst, solltest du sicherstellen, dass du Folgendes hast:

  • Einen Debian 12 Server
  • Einen Nicht-Root-Benutzer mit Administrator-Rechten
  • Zusätzliche Server wie RockyLinux/Ubuntu als Ziele für den Remote-Scan

Installieren von Abhängigkeiten

Bevor du Vuls installierst, musst du sicherstellen, dass die Abhängigkeiten installiert sind. In diesem Abschnitt wirst du die Pakete„debian-goodies“ und„reboot-notifier“ als Abhängigkeiten für Vuls installieren.

Führe zunächst den folgenden Befehl aus, um deinen Debian-Paketindex zu aktualisieren.

sudo apt update

Installiere nun die Pakete„debian-goodies“ und„reboot-notifier“ mit dem folgenden Befehl. Gib„Y“ ein, um die Installation zu bestätigen.

sudo apt install debian-goodies reboot-notifier

deps installieren

Installation von Vuls mit dem Installer-Skript

Nachdem die Abhängigkeiten installiert sind, installierst du Vuls mit dem Installer-Skript. Dieses kompiliert und installiert Vuls und zusätzliche Tools für Vuls automatisch auf deinem System.

Um Vuls zu installieren, führe den folgenden Befehl aus. Damit lädst du das Vuls-Installationsskript „install.sh“ herunter und führst es aus.

bash <( curl -s https://raw.githubusercontent.com/vulsio/vulsctl/master/install-host/install.sh )

vollständig installieren

Das Installationsskript installiert nun die neueste Version von Golang und kompiliert und installiert dann mehrere Tools für Vuls, wie z.B.„go-cti„,„go-cve-dictionary„,„goval-dictionary„,„go-exploitdb„,„go-kev„,„go-msfdb“ und„gost„.

go-cve-dictionary installieren und kompilieren

gost installieren

vollständig installieren

Nachdem die Installation abgeschlossen ist, siehst du im Verzeichnis„/usr/local/bin“ eine Binärdatei für Vuls und seine Tools.

ls /usr/local/bin/

Du kannst nun die Hilfemeldung mit dem Befehl „vuls help“ überprüfen.

vuls help

Du wirst eine Ausgabe wie die folgende erhalten:

vuls gehen

Vuls konfigurieren

Wenn Vuls installiert ist, musst du es konfigurieren, bevor du einen Computer oder Server scannen kannst. In diesem Abschnitt erstellst du ein neues Verzeichnis und Dateien für die Installation von Vuls. Du definierst CVE-Datenbanken für bestimmte SQLite-Datenbanken und erstellst die erste Scankonfiguration für localhost.

Erstelle ein neues Verzeichnis„/opt/vuls“ und wechsle in dieses Verzeichnis. Dann erstellst du mit dem Editor „nano“ eine neue Datei„config.toml„.

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

Gib die folgende Konfiguration ein, um CVE-Datenbanken mit Vuls zu integrieren. In der untersten Zeile legst du außerdem den Scan für localhost fest.

[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"]

Speichere und beende die Datei, wenn du fertig bist.

Führe abschließend den Befehl„vuls“ aus, um deine Konfiguration zu überprüfen.

vuls configtest

Wenn du richtig konfiguriert hast, siehst du die folgende Ausgabe:

Konfiguration prüfen

CVE-Datenbanken mit Vuls erstellen

In diesem Abschnitt wirst du neue CVE-Datenbanken aus verschiedenen Quellen mit den Vuls-Tools erstellen. Du wirst CVE-Datenbanken für den Debian Security Tracker, NVD, OVAL und die Metasploit-Datenbanken erstellen.

Wechsle zunächst in das Verzeichnis„/opt/vuls„:

cd /opt/vuls

Führe nun den folgenden Befehl aus, um CVE-Datenbanken aus verschiedenen Quellen herunterzuladen und zu erstellen. In diesem Beispiel verwendest du die CVE-Datenbank aus dem Debian Security Tracker, NVD, OVAL und der Metasploit-Datenbank.

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 herunterladen

cve-Datenbank herunterladen

cve-Datenbank herunterladen

Nachdem der Prozess abgeschlossen ist, sind deine CVE-Datenbanken im Verzeichnis„/opt/vuls“ verfügbar. Überprüfe das Verzeichnis„/opt/vuls“ mit dem unten stehenden Befehl.

ls /opt/vuls/*.sqlite3

Scannen von localhost mit Vuls

Jetzt hast du Vuls konfiguriert und CVE-Datenbanken erstellt. Jetzt kannst du deinen Localhost oder deinen lokalen Rechner mit Vuls scannen.

Um deinen lokalen Rechner zu scannen, führe den unten stehenden Befehl„vuls“ aus.

vuls scan localhost

Nachdem der Vorgang abgeschlossen ist, siehst du das einfache Ergebnis in deinem Terminal.

Führe nun den unten stehenden Befehl„vuls tui“ aus, um den Scan-Bericht im Detail zu sehen.

vuls tui

Im Folgenden siehst du einen detaillierten Scan-Bericht für localhost.

Tui stopfen

Drücke „Strg+c“, um die Vuls Terminal-Benutzeroberfläche zu verlassen.

Scannen von Remote-Servern mit Vuls

In diesem Abschnitt wirst du den Remote-Server mit Vuls scannen. In diesem Beispiel ist der Zielserver der Rocky Linux 9 Server mit der IP-Adresse192.168.10.45 und dem Benutzerrock.

Führe zunächst den folgenden Befehl aus, um die OVAL CVE-Datenbank für RedHat 9 herunterzuladen:

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

atabase herunterladen

Erstelle nun einen neuen öffentlichen und privaten SSH-Schlüssel und lade den öffentlichen Schlüssel auf den Zielserver hoch. In diesem Beispiel ist der Zielserver Rocky Linux 9 mit der IP-Adresse„192.168.10.45“ und dem SSH-Benutzer„rock„.

ssh-keygen -t ed25519
ssh-copy-id rock@192.168.10.45

Melde dich nun mit dem unten stehenden „ssh“-Befehl auf dem Zielserver an und installiere das Paket„lsof“ mit dem unten stehenden Befehl.

ssh rock@192.168.10.45
sudo dnf install lsof -y

Gib„exit“ ein, um dich vom Rocky Linux Server abzumelden.

Wechsle dann in das Verzeichnis „/opt/vuls“ und bearbeite die Datei„config.toml“ mit dem Editor „nano“.

cd /opt/vuls/
nano config.toml

Füge die folgende Konfiguration ein, um einen neuen Scan für das Remote-System Rocky Linux 9 Server zu erstellen. Achte außerdem darauf, dass du die Angaben zur IP-Adresse und zum Benutzer mit deinen Daten änderst.

[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"

Speichere die Datei und beende den Editor.

Mit der neuen Konfiguration kannst du nun deine Datei „config.toml“ mit dem folgenden Befehl testen.

vuls configtest

Konfiguration prüfen

Wenn kein Fehler auftritt, überprüfe den Remote-Server mit dem unten stehenden Befehl „vuls“.

vuls scan rocky9

Führe abschließend den Befehl „vuls“ aus, um den Bericht deines Remote-Scans aufzurufen.

vuls tui

Im Folgenden siehst du einen detaillierten Bericht über den Remote-Server Rocky Linux 9.

Scanergebnis

Fazit

Herzlichen Glückwunsch! Du hast die Installation von Vuls Vulnerability Scanner auf dem Debian 12 Server abgeschlossen. Außerdem hast du gelernt, wie du mit Vuls zusätzlichen Tools CVE-Datenbanken erstellen kannst. Danach. Du hast auch gelernt, wie du lokale und entfernte Server/Maschinen mit Vuls scannen kannst.

Das könnte dich auch interessieren …