Linux-Schwachstellenanalyse | Vuls

Aktuelle Betriebssysteme sowie ihre Komponenten (Dienste, Prozesse und Anwendungen) sind derzeit Angriffen verschiedener Art sowohl intern als auch extern durch kategorisierte Bedrohungen aller Art ausgesetzt, und wenn wir Administratoren oder fortgeschrittene Benutzer sind, müssen wir auf diese Angriffe vorbereitet sein und lernen, ein spezielles Schutzsystem zu haben. Aber dafür ist es grundlegend zu bestimmen, welche Schwachstellen das Team präsentiert, um an ihnen zu arbeiten. TechnoWikis wird in diesem Tutorial klar erklären, wie man Vuls verwendet, um diese Analyse durchzuführen.

 

 

was ist vuls
Vuls wurde als Open-Source-Tool zum Scannen von Schwachstellen entwickelt, das Schwachstellen in Betriebssystemen und Anwendungen in einer lokalen Netzwerkumgebung unter Verwendung verschiedener Quellen von Schwachstelleninformationen erkennen kann. Darin finden wir Datenbanken mit öffentlichen Schwachstellen, Sicherheitsbulletins von Softwareanbietern und Bedrohungsnachrichtendiensten. Dies ist der Schlüssel, da diese Datenbanken täglich aktualisiert werden und wir daher mit neu auftretenden Schwachstellen auf Augenhöhe sind.

 

Vuls ist mit mehreren Betriebssystemen und Anwendungen kompatibel und verwendet verschiedene Arten von Scans für Aufgaben zur Erkennung von Schwachstellen. Dies reicht von Port-Scans, Überprüfung von Softwareversionen bis hin zur Erkennung von Schwachstellen in Dateien und Konfigurationen, die als etwas Normales, Schlimmeres versteckt werden können eine Reihe von Problemen im System auslösen.

 

Vuls-Eigenschaften
Unter den Hauptmerkmalen von Vuls finden wir:

 

  • Integration mit gängigen Vulnerability-Management-Systemen wie JIRA und GitHub, um die Verwaltung erkannter Schwachstellen zu automatisieren.
  • Automatische System- und Anwendungsscanfunktion.
  • Erstellen Sie detaillierte Berichte über die erkannten Schwachstellen. Dieser Bericht enthält eine Analyse des Schweregrads der Schwachstelle sowie eine Reihe von Empfehlungen zu deren Behebung.
  • Unterstützung für mehrere Betriebssysteme und Anwendungen.
  • Kompatibel mit Apache, MySQL und mehr.
  • Scannen Sie im Offline-Modus ohne Internetzugang.
  • Es ermöglicht das Scannen ohne Root-Rechte und ohne Abhängigkeiten.
  • Mit yum-ps können Sie Prozesse erkennen, die von Aktualisierungsprozessen betroffen sind.
  • Lokaler Scanmodus.
  • Benötigt kein SSH.
  • Es ist möglich, Vuls im Servermodus zu starten und als HTTP-Server lauschen zu lassen.
  • Scanergebnisse können im JSON-Format erstellt werden.
  • Wir können Analysen von Middleware, Programmiersprachenbibliotheken und Frames durchführen, um Schwachstellen zu erkennen.
  • Bei CPE registrierte Support-Software.

 

 

Sehen wir uns an, wie Sie dieses leistungsstarke Tool verwenden, um unsere Systeme funktionsfähig zu halten.

 

 

Um auf dem Laufenden zu bleiben, denken Sie daran, unseren YouTube-Kanal zu abonnieren!

ABONNIEREN SIE AUF YOUTUBE

 

So führen Sie einen Schwachstellenscan mit Vuls durch

 

Schritt 1

Wir öffnen das Terminal und installieren die Abhängigkeiten, wir erstellen das Verzeichnis für die Daten:

 sudo mkdir /usr/share/vuls-data 

1-Analyse-von-Schwachstellen.png

 

Schritt 2

Wir vergeben Benutzerzugriff:

 sudo chown -R (Benutzer) /usr/share/vuls-data 

2-Analyse-von-Schwachstellen.png

 

Schritt 3

Wir aktualisieren das System:

 sudo apt aktualisieren 

3-Analyse-von-Schwachstellen.png

 

 

Schritt 4

Danach installieren wir die notwendigen Dienstprogramme, damit alles optimal funktioniert:

 sudo apt install sqlite git debian-goodies gcc make wget 

4-Analyse-von-Schwachstellen.png

 

Schritt 5

Wir bestätigen den Vorgang, indem wir den Buchstaben S eingeben:

 

5-Analyse-von-Schwachstellen.png

 

Schritt 6

Wir hoffen, dass dieser Prozess ein Ende findet:

 

6-Analyse-von-Schwachstellen.png

Schritt 7

 

sqlite ist ein Datenbanksystem, mit dem die Schwachstelleninformationen gespeichert werden, debian-goodies integriert das Dienstprogramm checkrestart, das Informationen über die Pakete bietet, die in einem Teil des Prozesses neu gestartet werden können und sollten.

 

Jetzt werden wir Go installieren, dies ist eine effiziente Programmiersprache, dank der es möglich sein wird, große und komplexe Anwendungen auf einfache Weise zu verwalten, ihre Struktur ist einfach und ermöglicht es Ihnen, leistungsstarke Anwendungen zu erstellen, einige ihrer Funktionen Sind.

 

  • Nutzt effektiv verschiedene CPU-Kerne und bietet native Unterstützung für Parallelität
  • Ihre Variablen müssen mit einem bestimmten Datentyp deklariert werden
  • Es unterstützt Cross-Compiling
  • Integriert einen Garbage Collector, der eine Speicherverwaltung ermöglicht

 

Schritt 8

Für seine Installation führen wir aus:

 sudo snap install go –classic 

7-Analyse-von-Schwachstellen.png

 

Schritt 9

Wir hoffen, dass es das Ende erreicht:

 

8-Analyse-von-Schwachstellen.png

 

Schritt 10

Für einen optimalen Betrieb benötigt Go Umgebungsvariablen, in denen GOPATH und PATH konfiguriert werden, GOPATH gibt das Arbeitsverzeichnis für Go und PATH an, dort werden die Verzeichnisse gespeichert, in die die Programme gehen, diese Umgebungsvariablen müssen jedes Mal konfiguriert werden der Benutzer meldet sich an, aber um dies zu vermeiden und die Aktion zu automatisieren, erstellen wir eine neue ausführbare Datei namens go-env.sh in /etc/profile.d, dafür geben wir Folgendes ein:

 sudo nano /etc/profile.d/go-env.sh 

9-Analyse-von-Schwachstellen.png

 

Schritt 11

Wir geben folgendes ein. Der Befehl „export“ setzt die Umgebungsvariable auf den angegebenen Wert.

 export GOPATH=$HOME/go export PATH=$PATH:$GOPATH/bin:/snap/bin 

10-Analyse-von-Schwachstellen.png

 

 

Schritt 12

Wir speichern die Änderungen mit folgender Tastenkombination:

 

Strg + O

 

Wir verlassen den Editor mit:

 

Strg + X

 

 

Schritt 13

Wir vergeben Ausführungsberechtigungen:

 sudo chmod +x /etc/profile.d/go-env.sh 

11-Analyse-von-Schwachstellen.png

 

Schritt 14

Um die Anmeldung zu vermeiden, führen wir Folgendes aus:

 Quelle /etc/profile.d/go-env.sh 

12-Analyse-von-Schwachstellen.png

 

Schritt 15

Wie bereits erwähnt, werden die Schwachstellen in verschiedenen Bibliotheken gehostet, in denen Vuls sich selbst aktualisiert und dafür sorgt, dass das System in optimalen Bedingungen ist, go-cve-dictionary, ein Go-Paket, bietet uns Zugriff auf die National Vulnerability Database oder NVD ( National Vulnerability Database) ist NVD das Repository der US-Regierung für öffentlich zugängliche Cybersicherheitslücken.

 

Dort finden wir Schwachstellenidentifikationen (CVE, Schwachstellen), Zusammenfassungen und Analysen der Auswirkungen dieser Schwachstellen auf die Maschine und es ist in einem lesbaren Format, Go speichert die Pakete in $GOPATH/src/, wir installieren die Go-cve- Wörterbuch, Dazu erstellen wir das Verzeichnis:

 sudo mkdir -p $GOPATH/src/github.com/vulsio 

13-Analyse-von-Schwachstellen.png

 

Schritt 16

Wir greifen auf den Ordner zu:

 cd $GOPATH/src/github.com/vulsio 
Schritt 17

Wir klonen das Wörterbuch aus den Repositories:

 sudo git clone https://github.com/vulsio/go-cve-dictionary.git 

14-Analyse-von-Schwachstellen.png

 

Schritt 18

Wir greifen auf das Verzeichnis zu:

 cd go cve Wörterbuch 
Schritt 19

Wir stellen die Dateien zusammen:

 sudo make install 

15-Analyse-von-Schwachstellen.png

 

Schritt 20

Wir warten, bis dieser Vorgang abgeschlossen ist:

 

16-Analyse-von-Schwachstellen.png

 

Schritt 21

Sie können die Dateien auf das Basissystem kopieren:

 sudo cp $GOPATH/bin/go-cve-dictionary /usr/local/bin 
Schritt 22

go-cve-dictionary benötigt Zugriff auf ein Protokollausgabeverzeichnis, also erstellen wir es:

 sudo mkdir /var/log/vuls 

17-Analyse-von-Schwachstellen.png

 

Schritt 23

Wir vergeben die Berechtigungen:

 sudo chmod 700 /var/log/vuls 

18-Analyse-von-Schwachstellen.png

 

Schritt 24

Benutzerzugriff zulassen:

 sudo chown -R (Benutzer) /var/log/vuls 

19-Analyse-von-Schwachstellen.png

 

Schritt 25

Wir führen den Schwachstellenscan von NVD aus:

 go-cve-dictionary fetchnvd --dbpath /usr/share/vuls-data/cve.sqlite3 

20-Analyse-von-Schwachstellen.png

 

Schritt 26

Der Analyseprozess wird gestartet:

 

21-Analyse-von-Schwachstellen.png

 

Schritt 27

Wir werden spezifische Details zu jeder Schwachstelle sehen:

 

22-Analyse-von-Schwachstellen.png

 

Schritt 28

Die go-cve-dictionary Optionen sind:

 

  • jvn: Holen Sie sich das JVN-Schwachstellenwörterbuch
  • nvd: Ruft das NVD-Schwachstellenwörterbuch ab
  • –config string: Konfiguriert die String-Konfigurationsdatei
  • –dbpath string: ist die SQL-Verbindungszeichenfolge
  • –debug: gibt den Debugging-Modus an (Standard: false)
  • –debug-sql: ist der SQL-Debugging-Modus
  • –log-json: Erstellt eine JSON-Protokollausgabe
  • –log-to-file: Erstellt ein Protokoll der Ausgabe in eine Datei

 

 

Schritt 29

Ein weiteres Schwachstellenwörterbuch ist Goval, dies ist ein Go-Paket, mit dem Sie Zugriff auf die OVAL-Datenbank für Ubuntu haben. OVAL (Open Vulnerability and Assessment Language) ist eine offene Sprache, um Prüfungen auszudrücken, um festzustellen, ob Software-Schwachstellen vorhanden sind System verwendet es die NVD-Datenbank als Informationsquelle für Schwachstellen.
Wir werden das Goval-Wörterbuch installieren, dafür gehen wir zur Route:

 cd $GOPATH/src/github.com/vulsio 
Schritt 30

Wir klonen das Verzeichnis:

 sudo git clone https://github.com/vulsio/goval-dictionary.git 

23-Analyse-von-Schwachstellen.png

 

Schritt 31

Wir greifen auf das Verzeichnis zu:

 cd goval wörterbuch 
Schritt 32

Wir installieren die Plugins:

 sudo make install 

24-Analyse-von-Schwachstellen.png

 

 

Schritt 33

Wir haben eine Analyse für einige der verfügbaren Distributionen durchgeführt:

 sudo goval-dictionary fetch-ubuntu --dbpath=/usr/share/vuls-data/oval.sqlite3 22 

25-Analyse-von-Schwachstellen.png

 

Schritt 34

Mit dem Parameter fetch können wir Systeme hinzufügen wie:

 

  • Red Hat, CentOS, Alma-Linux, Rocky-Linux
  • Ubuntu
  • Debian
  • Orakel
  • suse
  • alpin

 

Schritt 35

Im letzten Teil geben wir die Nummer der zu analysierenden Version ein. Es ist Zeit, Vuls zu installieren, wir installieren Vuls aus den Repositories, zuerst erstellen wir das Verzeichnis:

 sudo mkdir -p $GOPATH/src/github.com/future-architect 

26-Analyse-von-Schwachstellen.png

 

Schritt 36

Greifen Sie auf das Verzeichnis zu:

 cd $GOPATH/src/github.com/future-architect 
Schritt 37

Versuchen Sie, das Repository von der offiziellen Website herunterzuladen:

 sudo git clone https://github.com/future-architect/vuls.git 

27-Analyse-von-Schwachstellen.png

 

Schritt 38

Dort müssen wir ein Konto erstellt haben, aber mit den neuesten Versionen sehen wir Folgendes:

 

28-Analyse-von-Schwachstellen.png

 

Schritt 39

Wir sehen, dass es keine Unterstützung für diese Art der Authentifizierung gibt, in diesem Fall greifen wir als root mit “sudo -i” zu, dann führen wir Folgendes aus:

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

29-Analyse-von-Schwachstellen.png

 

Schritt 40

Wir validieren die Binärdateien:

 ls /usr/local/bin/ 

30-Analyse-von-Schwachstellen.png

 

Schritt 41

Wir erstellen ein neues Verzeichnis und erstellen die Konfigurationsdatei:

 mkdir -p /usr/share/vuls-data touch /usr/share/vuls-data/config.toml 

31-Analyse-von-Schwachstellen.png

 

Schritt 42

Wir bearbeiten die Datei:

 nano /usr/share/vuls-data/config.toml 
Schritt 43

Wir geben die Werte ein:

 [cveDict] type = "sqlite3" SQLite3Path = "/usr/share/vuls-data/cve.sqlite3" [ovalDict] type = "sqlite3" SQLite3Path = "/usr/share/vuls-data/oval.sqlite3" [gost ] type = "sqlite3" SQLite3Path = "/usr/share/vuls-data/gost.sqlite3" [metasploit] type = "sqlite3" SQLite3Path = "/usr/share/vuls-data/go-msfdb.sqlite3" [servers ] [servers.localhost] host = "localhost" port = "local" scanMode = [ "fast" ] #scanMode = ["fast", "fast-root", "deep", "offline"] 

32-Analyse-von-Schwachstellen.png

 

Schritt 44

Wir sehen alle aufgezeichneten Daten:

 

33-Analyse-von-Schwachstellen.png

 

Schritt 45

4 Vuls-Datenbanken werden im SQLite3-Format definiert:

 

  • CVE (Häufige Schwachstellen und Gefährdungen)
  • OVAL (Open Language of Assessment and Vulnerability)
  • Gost – Dies verwendet den Sicherheitsscanner von Linux-Distributionen wie Redhat, Debian, Ubuntu und Microsoft Windows.
  • CVE der Metasploit-Framework-Module

 

Schritt 46

Wir speichern die Änderungen mit folgender Tastenkombination:

 

Strg + O

 

Wir verlassen den Editor mit:

 

Strg + X

 

Schritt 47

Wir greifen auf das Verzeichnis zu:

 cd /usr/share/vuls-data/ 
Schritt 48

Führen Sie den Konfigurationstest durch:

 vuls-Konfigurationstest 

34-Analyse-von-Schwachstellen.png

 

Schritt 49

Wir erstellen eine Konfigurationsdatei:

 Vuls entdecken 127.0.0.1/32 

35-Analyse-von-Schwachstellen.png

 

Schritt 50

Wir führen einen allgemeinen Scan durch:

 Vuls-Scan 

36-Analyse-von-Schwachstellen.png

 

Schritt 51

Führen Sie für einen Scan auf einem bestimmten Computer Folgendes aus:

 vuls scannen localhost 

37-Analyse-von-Schwachstellen.png

 

Schritt 52

Dort sehen wir Details wie den Systemtyp, die Anzahl der installierten Pakete und die erkannten Bedrohungen.
Um die Daten grafisch anzuzeigen (gilt, wenn Schwachstellen erkannt werden), führen Sie Folgendes aus:

 vuls tui 

38-Analyse-von-Schwachstellen.png

 

Schritt 53

Um den Verlauf zu überprüfen, führen wir Folgendes aus:

 vuls Geschichte 

39-Analyse-von-Schwachstellen.png

 

Vuls ist ein integrales Dienstprogramm, um unser System oder andere Geräte zu überprüfen und so sicherzustellen, dass sie keiner Bedrohung ausgesetzt sind, die ihre Integrität gefährdet.