Vulnerability Scanner · 8 min read · Sep 16, 2025
So installieren und verwenden Sie den Vuls Vulnerability Scanner auf Ubuntu 24.04

Vuls ist ein agentenloser, kostenloser und Open-Source-Vulnerability-Scanner, der überall ausgeführt werden kann. Sie können Vuls in der Cloud, vor Ort und in Docker ausführen und es unterstützt die wichtigsten Distributionen. Vuls unterstützt mehrere Schwachdatenbanken wie NVD, JVN, OVAL, RHSA/ALAS/ELSA/FreeBSD-SA.
Mit Vuls können Sie mehrere Betriebssysteme mit verschiedenen Methoden scannen. Sie können die lokalen Systeme Ihres Hosts scannen und Sie können entfernte Hosts/Server über SSH scannen. Es bietet auch mehrere Scanning-Methoden, einen schnellen Scan, der keine Root-Rechte erfordert, und einen tiefen Scan, der Root-Rechte erfordert. Vuls kann mehrere Zielserver gleichzeitig scannen. Wenn der Scan abgeschlossen ist, können Sie das Ergebnis per E-Mail und Slack senden.
In diesem Leitfaden zeigen wir Ihnen, wie Sie den Vuls Vulnerability Scanner auf einem Ubuntu 24.04-Server installieren. Sie werden Vuls installieren, CVE-Datenbanken generieren und Ubuntu/Debian über lokale und entfernte Scans scannen.
Voraussetzungen
Um mit diesem Leitfaden zu beginnen, stellen Sie sicher, dass Sie Folgendes haben:
- Einen Ubuntu 24.04-Server
- Einen Nicht-Root-Benutzer mit Root-Rechten
- Eine zusätzliche Ubuntu/Debian-Maschine für den Remote-Scan über Vuls
Abhängigkeiten installieren
Bevor Sie Vuls installieren, müssen Sie sicherstellen, dass Golang auf Ihrem System installiert ist. Derzeit erfordert die neueste Version von Vuls die neueste Golang-Version, daher müssen Sie Golang manuell installieren, indem Sie das Binärpaket herunterladen.
Zuerst führen Sie den folgenden Befehl aus, um Ihr Ubuntu-Paket-Index zu aktualisieren und Abhängigkeiten wie ‘ sqlite3 ‘, ‘ git ‘, ‘ make ‘ und ‘ gcc ‘ zu installieren.
sudo apt update
sudo apt install sqlite3 git debian-goodies gcc make wget -y
Nachdem die Abhängigkeiten installiert sind, müssen Sie Golang auf Ihrem System installieren. In diesem Beispiel werden Sie die neueste Version von Golang durch manuelle Binärinstallation erhalten.
Wählen Sie Ihre Golang-Version mit folgendem Befehl. Zum Beispiel Golang 1.23.2:
export latest_version=1.23.2Führen Sie den ‘wget’-Befehl unten aus, um Golang herunterzuladen und mit dem ‘ tar ‘ Befehl in das Verzeichnis ‘ /usr/local ‘ zu extrahieren.
wget https://dl.google.com/go/go$latest_version.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go$latest_version.linux-amd64.tar.gzSobald Golang installiert ist, melden Sie sich bei Ihrem Benutzer an und erstellen Sie ein neues ‘ go ‘ Verzeichnis im Home-Verzeichnis.
su - arvd
mkdir $HOME/goErstellen Sie als Nächstes eine neue Umgebungsdatei ‘ /etc/profile.d/go-env.sh ‘ mit dem ‘ nano ‘ Editor.
sudo nano /etc/profile.d/go-env.shFügen Sie die folgende Konfiguration ein, um PATH für Golang einzurichten.
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/binSpeichern Sie die Datei und beenden Sie den Editor, wenn Sie fertig sind.
Machen Sie nun die ‘ /etc/profile.d/go-env.sh ‘ ausführbar und laden Sie sie mit dem ‘ source ‘ Befehl in Ihre aktuelle Sitzung.
sudo chmod +x /etc/profile.d/go-env.sh
source /etc/profile.d/go-env.shÜberprüfen Sie zuletzt die Binärdatei für ‘ go ‘ und überprüfen Sie ihre Version mit folgendem Befehl:
which go
go versionWie Sie unten sehen können, ist Golang ‘ 1.23.2 ‘ im ‘ /usr/local/go/bin/go ‘ installiert.

Vuls und Vuls-Wörterbücher installieren
Nachdem Golang installiert ist, werden Sie Vuls und seine Komponenten zum Erstellen von CVE-Datenbanken im sqlite3-Format kompilieren und installieren. Im Folgenden sind einige Vuls-Komponenten aufgeführt, die Sie installieren werden:
- ‘ go-cve-dictionary ‘ wird zum Erstellen der NVD (National Vulnerabilities Database) verwendet
- ‘ goval-dictionary ‘ zum Erstellen der OVAL-Datenbank, die CVEs für die meisten Linux-Distributionen wie Debian, Ubuntu und RedHat enthält
- ‘ go-exploitdb ‘ zum Suchen von Exploits aus ExploitDB-Datenbanken
- ‘ go-msfdb ‘ zum Suchen von CVEs innerhalb der Metasploit-Datenbanken
- ‘ go-kev ‘ zum Erstellen einer lokalen Kopie von KEV (Known Exploited Vulnerabilities), die von CISA bereitgestellt wird
- ‘ go-cti ‘ wird verwendet, um die CVE-Datenbank aus CTI (Cyber Threat Intelligence) zu erstellen
Führen Sie zuerst den folgenden Befehl aus, um neue Protokollverzeichnisse zu erstellen und den Besitz auf Ihren Benutzer wie ‘arvd’ zu ändern.
sudo mkdir /var/log/{vuls,go-exploitdb,go-msfdb,go-kev,go-cti}
sudo chown arvd /var/log/{vuls,go-exploitdb,go-msfdb,go-kev,go-cti}
sudo chmod 700 /var/log/{vuls,go-exploitdb,go-msfdb,go-kev,go-cti}Erstellen Sie ein neues Verzeichnis ‘$GOPATH/src/github.com/vulsio’ mit folgendem Befehl:
mkdir -p $GOPATH/src/github.com/vulsioWechseln Sie in das ‘$GOPATH/src/github.com/vulsio’ Verzeichnis, laden Sie den Quellcode des ‘ go-cve-dictionary ‘ Tools über ‘git’ herunter und kompilieren und installieren Sie es dann.
cd $GOPATH/src/github.com/vulsio
git clone https://github.com/vulsio/go-cve-dictionary.git
cd go-cve-dictionary; make install
Führen Sie jetzt den folgenden Befehl aus, um das ‘ goval-dictionary ‘ Tool herunterzuladen, zu kompilieren und zu installieren.
cd $GOPATH/src/github.com/vulsio
git clone https://github.com/vulsio/goval-dictionary.git
cd goval-dictionary; make installNachdem ‘goval-dictionary’ installiert ist, wechseln Sie zum nächsten Tool, um das ‘ go-exploitdb ‘ Tool zu installieren.
cd $GOPATH/src/github.com/vulsio
git clone https://github.com/vulsio/go-exploitdb.git
cd go-exploitdb; make install
ln -s $GOPATH/src/github.com/vulsio/go-exploitdb/go-exploitdb.sqlite3 $HOME/go-exploitdb.sqlite3
Führen Sie als Nächstes den folgenden Befehl aus, um das ‘ go-msfdb ‘ Tool zu installieren und zu kompilieren.
cd $GOPATH/src/github.com/vulsio
git clone https://github.com/vulsio/go-msfdb.git
cd go-msfdb; make install
Danach installieren Sie das ‘ go-kev ‘ Tool zum Erstellen von CVE-Datenbanken für KEV (Known Exploited Vulnerabilities) von CISA.
cd $GOPATH/src/github.com/vulsio
git clone https://github.com/vulsio/go-kev.git
cd go-kev; make install
ln -s $GOPATH/src/github.com/vulsio/go-kev/go-kev.sqlite3 $HOME/go-kev.sqlite3Und dann installieren Sie das ‘ go-cti ‘ Tool, das zum Erstellen von CVEs aus CTI (Cyber Threat Intelligence) verwendet wird.
cd $GOPATH/src/github.com/vulsio
git clone https://github.com/vulsio/go-cti.git
cd go-cti; make install
ln -s $GOPATH/src/github.com/vulsio/go-cti/go-cti.sqlite3 $HOME/go-cti.sqlite3Führen Sie als Nächstes den folgenden Befehl aus, um ‘ vuls ‘ auf Ihrem Ubuntu-Rechner herunterzuladen, zu kompilieren und zu installieren.
mkdir -p $GOPATH/src/github.com/future-architect
cd $GOPATH/src/github.com/future-architect
git clone https://github.com/future-architect/vuls.git
cd vuls; make install
Wenn alles installiert ist, steht die Binärdatei für jedes Tool im ‘$GOPATH/bin’ Verzeichnis zur Verfügung. Führen Sie den folgenden Befehl aus, um dieses Verzeichnis zu überprüfen.
ls $GOPATH/bin/Sie können die Binärdateien für ‘ vuls ‘, ‘ go-cve-dictionary ‘, ‘ goval-dictionary ‘, ‘ go-exploitdb ‘, ‘ go-msfdb ‘, ‘ go-kev ‘ und ‘ go-cti ‘ sehen.
Zuletzt können Sie auch den ‘ vuls ‘ Befehl unten überprüfen. Dies zeigt Ihnen die Hilfenachricht für ‘ vuls ‘.
vuls help
Herunterladen von CVE-Datenbanken (Common Vulnerabilities and Exposure)
In diesem Beispiel werden Sie CVE-Datenbanken für:
- NVD (National Vulnerabilities Database) über ‘ go-cve-dictionary ‘
- OVAL (Open Vulnerability and Assessment Language) für Ubuntu 24.04 über ‘ goval-dictionary ‘
- ExploitDB-Datenbanken über ‘ go-exploitdb ‘
- Metasploit-Datenbanken über ‘ go-msfdb ‘
- KEV (Known Exploited Vulnerabilities) Katalog von CISA über ‘ go-kev ‘
- MITRE ATT&CK und CAPEC-Datenbanken über ‘ go-cti ‘
Gehen Sie in Ihr Home-Verzeichnis mit folgendem Befehl:
cd $HOMEFühren Sie nun den folgenden Befehl aus, um CVE (Common Vulnerabilities and Exposures) Datenbanken herunterzuladen und zu erstellen.
go-cve-dictionary fetch nvd
goval-dictionary fetch ubuntu 24.04
go-exploitdb fetch exploitdb
go-msfdb fetch msfdb
go-kev fetch kevuln
go-cti fetch threat


Nachdem der Prozess abgeschlossen ist, stehen Ihre CVE-Datenbanken in Ihrem Home-Verzeichnis im Format ‘ .sqlite3 ‘ zur Verfügung. Überprüfen Sie die Liste der Datenbanken mit folgendem Befehl:
ls -ah *.sqlite3Scannen des lokalen Rechners mit Vuls
Jetzt, da Sie Vuls und seine Komponenten einschließlich der CVEs-Datenbanken installiert haben. In diesem Abschnitt werden Sie Ihren lokalen Ubuntu-Rechner mit Vuls scannen.
Erstellen Sie innerhalb Ihres Home-Verzeichnisses eine neue Datei ‘ config.toml ‘ mit dem ‘ nano ‘ Editor.
nano config.tomlFügen Sie die folgende Konfiguration ein, um das Scannen für localhost im Modus ‘fast’ einzurichten.
[servers]
[servers.localhost]
host = "localhost"
port = "local"
scanMode = [ "fast" ]
#scanMode = ["fast", "fast-root", "deep", "offline"]Speichern Sie die Datei und beenden Sie den Editor.
Führen Sie nun den ‘vuls’ Befehl unten aus, um die ‘config.toml’ Datei zu überprüfen.
vuls configtestWenn Sie eine ordnungsgemäße Konfiguration haben, sehen Sie eine Ausgabe wie die folgende:

Scannen Sie als Nächstes localhost mit dem ‘vuls scan ‘ Befehl unten.
sudo vuls scanSie können sehen, dass der Scan-Prozess abgeschlossen ist.

Um Details des Scanberichts zu erhalten, verwenden Sie den ‘ vuls tui ‘ Befehl unten. Dies zeigt Ihnen die terminalbasierte Benutzeroberfläche des Vuls-Berichts.
sudo vuls tuiSie können ‘ CTRL+c ‘ drücken, um die Vuls TUI zu verlassen.
Scannen eines Remote-Servers mit Vuls
In diesem Abschnitt lernen Sie, wie Sie einen Remote-Scan mit Vuls einrichten. Sie werden das entfernte System über SSH mit Vuls scannen. In diesem Beispiel scannen Sie den Zielserver Debian 12 mit der IP-Adresse ‘ 192.168.10.10 ‘ und der Benutzer ist ‘ alice ‘.
Führen Sie zuerst den folgenden Befehl aus, um die OVAL-Datenbank für Debian 12 herunterzuladen.
goval-dictionary fetch debian 12Generieren Sie nun SSH-Öffentliche und private Schlüssel und laden Sie diese dann mit dem ‘ ssh-copy-id ‘ Befehl auf den Zielserver hoch.
ssh-keygen -t ed25519
ssh-copy-id [email protected]
Verbinden Sie sich mit dem Zielserver ‘192.168.10.10’, und aktualisieren Sie dann den Paketindex und installieren Sie Abhängigkeiten wie ‘ debian-goodies ‘ und ‘ reboot-notifier ‘.
ssh [email protected]
sudo apt update && sudo apt install debian-goodies reboot-notifier -yGeben Sie ‘ exit ‘ ein, um sich vom Zielserver abzumelden.
Öffnen Sie als Nächstes die Vuls-Konfiguration ‘ config.toml ‘ mit dem ‘ nano ‘ Editor.
nano ~/config.tomlFügen Sie die folgende Konfiguration ein, um die Details des Zielservers hinzuzufügen. In diesem Fall wird der neue Zielserver ‘ debian12 ‘ mit der IP-Adresse ‘ 192.168.10.10 ‘ und der Authentifizierung über den SSH-Schlüssel benannt.
[servers.debian12]
host = "192.168.10.10"
port = "22"
user = "alice"
keyPath = "~/.ssh/id_ed25519"
scanMode = [ "fast-root" ] # "fast", "fast-root" oder "deep"Speichern Sie die Datei und beenden Sie den Editor.
Führen Sie nun den ‘ vuls ‘ Befehl unten aus, um Ihre Konfiguration zu überprüfen. Stellen Sie sicher, dass Sie die richtige und ordnungsgemäße Konfiguration haben.
vuls configtestScannen Sie danach den Remote-Server ‘ debian12 ‘ mit dem folgenden Befehl.
vuls scan debian12Sie können sehen, dass der Remote-Scan über Vuls abgeschlossen ist.

Fazit
Herzlichen Glückwunsch! Sie haben die Installation des Vuls Vulnerability Scanners auf dem Ubuntu 24.04-Server abgeschlossen. Sie haben auch gelernt, wie man CVE-Datenbanken mit Vuls generiert und lokale sowie entfernte Server mit Vuls scannt. Von hier aus können Sie Vuls jetzt mit einem anderen Scanner wie NMAP für Port-Scans integrieren oder Sie können auch Vulsrepo für die grafische und webbasierte Schnittstelle installieren.
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.