GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Konfigurieren und Tunen von OpenVAS in Kali Linux

Benutzer fordern häufig das Hinzufügen von Schwachstellen-Scannern zu Kali an, insbesondere diejenigen, die mit „N“ beginnen, aber aufgrund von Lizenzbeschränkungen nehmen wir sie nicht in die Distribution auf. Glücklicherweise enthält Kali das sehr leistungsfähige OpenVAS, das kostenlos und Open-Source ist. Obwohl wir in der Vergangenheit kurz über OpenVAS berichtet haben, haben wir uns entschlossen, einen ausführlicheren Post seiner Einrichtung und seiner effektiveren Nutzung zu widmen.

Schwachstellen-Scanner haben oft einen schlechten Ruf, vor allem weil ihre Rolle und ihr Zweck missverstanden werden. Schwachstellen-Scanner scannen nach Schwachstellen – sie sind keine magischen Exploit-Maschinen und sollten eine von vielen Informationsquellen sein, die bei einer Bewertung verwendet werden. Das blinde Ausführen eines Schwachstellen-Scanners gegen ein Ziel wird mit ziemlicher Sicherheit in Enttäuschung und Leid enden, mit Dutzenden (oder sogar Hunderten) von niederschwelligen oder nicht informativen Ergebnissen.

Systemanforderungen

Die Hauptbeschwerde, die wir über OpenVAS (oder jeden anderen Schwachstellen-Scanner) erhalten, kann wie folgt zusammengefasst werden:„Es ist zu langsam und stürzt ab und funktioniert nicht und es ist schlecht, und Sie sollten sich schlecht fühlen“. In fast allen Fällen sind Langsamkeit und/oder Abstürze auf unzureichende Systemressourcen zurückzuführen . OpenVAS hat Zehntausende von Signaturen und wenn Sie Ihrem System nicht genug Ressourcen, insbesondere RAM, geben, werden Sie sich in einer Welt des Elends wiederfinden. Einige kommerzielle Schwachstellen-Scanner erfordern ein Minimum 8 GB RAM und empfehlen sogar noch mehr.

OpenVAS benötigt nicht annähernd so viel Speicher, aber je mehr Sie bereitstellen können, desto reibungsloser läuft Ihr Scansystem. Für diesen Beitrag hat unsere virtuelle Kali-Maschine 3 CPUs und 3 GB RAM , was im Allgemeinen ausreicht, um eine kleine Anzahl von Hosts gleichzeitig zu scannen.

Erste OpenVAS-Einrichtung in Kali

OpenVAS hat viele bewegliche Teile und die manuelle Einrichtung kann manchmal eine Herausforderung sein. Glücklicherweise enthält Kali ein benutzerfreundliches Dienstprogramm namens „openvas-setup“, das sich um die Einrichtung von OpenVAS, das Herunterladen der Signaturen und das Erstellen eines Passworts für den Admin-Benutzer kümmert.

Diese Ersteinrichtung kann ziemlich lange dauern , sogar mit einer schnellen Internetverbindung, also lehnen Sie sich einfach zurück und lassen Sie es sein Ding machen. Am Ende des Setups wird das automatisch generierte Passwort für den Admin-Benutzer angezeigt. Achten Sie darauf, dieses Passwort an einem sicheren Ort aufzubewahren .

[email protected]:~# openvas-setup
ERROR: Directory for keys (/var/lib/openvas/private/CA) not found!
ERROR: Directory for certificates (/var/lib/openvas/CA) not found!
ERROR: CA key not found in /var/lib/openvas/private/CA/cakey.pem
ERROR: CA certificate not found in /var/lib/openvas/CA/cacert.pem
ERROR: CA certificate failed verification, see /tmp/tmp.7G2IQWtqwj/openvas-manage-certs.log for details. Aborting.

ERROR: Your OpenVAS certificate infrastructure did NOT pass validation.
See messages above for details.
Generated private key in /tmp/tmp.PerU5lG2tl/cakey.pem.
Generated self signed certificate in /tmp/tmp.PerU5lG2tl/cacert.pem.
...
/usr/sbin/openvasmd

User created with password 'xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx'.

Umgang mit Einrichtungsfehlern

Gelegentlich zeigt das Skript „openvas-setup“ am Ende des NVT-Downloads Fehler ähnlich dem folgenden an.

(openvassd:2272): lib kb_redis-CRITICAL **: get_redis_ctx: redis connection error: No such file or directory

(openvassd:2272): lib kb_redis-CRITICAL **: redis_new: cannot access redis at '/var/run/redis/redis.sock'

(openvassd:2272): lib kb_redis-CRITICAL **: get_redis_ctx: redis connection error: No such file or directory
openvassd: no process found

Wenn Sie unglücklicherweise auf dieses Problem stoßen, können Sie „openvas-check-setup“ ausführen, um zu sehen, welche Komponente Probleme verursacht. In diesem speziellen Fall erhalten wir Folgendes vom Skript.

...
ERROR: The number of NVTs in the OpenVAS Manager database is too low.
FIX: Make sure OpenVAS Scanner is running with an up-to-date NVT collection and run 'openvasmd --rebuild'.
...

Das Skript „openvas-check-setup“ erkennt das Problem und stellt sogar den Befehl bereit, um das Problem (hoffentlich) zu lösen. Nachdem die NVT-Sammlung wie empfohlen neu erstellt wurde, sind alle Prüfungen bestanden.

[email protected]:~# openvasmd --rebuild
[email protected]:~# openvas-check-setup
openvas-check-setup 2.3.7
Test completeness and readiness of OpenVAS-9
...
It seems like your OpenVAS-9 installation is OK.
...

Verwaltung von OpenVAS-Benutzern

Wenn Sie zusätzliche OpenVAS-Benutzer erstellen müssen (oder wollen), führen Sie „openvasmd“ mit --create-user aus Option, die einen neuen Benutzer hinzufügt und das zufällig generierte Passwort anzeigt.

[email protected]:~# openvasmd --create-user=dookie
User created with password 'yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyy'.
[email protected]:~# openvasmd --get-users
admin
dookie

Wenn Sie uns ähnlich sind, werden Sie vergessen, das Admin-Passwort zu speichern, oder es versehentlich löschen. Glücklicherweise ist das Ändern von OpenVAS-Benutzerpasswörtern einfach mit „openvasmd“ und dem --new-password zu bewerkstelligen Option.

[email protected]:~# openvasmd --user=dookie --new-password=s3cr3t
[email protected]:~# openvasmd --user=admin --new-password=sup3rs3cr3t

Starten und Stoppen von OpenVAS

Netzwerkdienste sind in Kali Linux standardmäßig deaktiviert. Wenn Sie also OpenVAS nicht so konfiguriert haben, dass es beim Booten startet, können Sie die erforderlichen Dienste starten, indem Sie „openvas-start“ ausführen.

[email protected]:~# openvas-start
Starting OpenVas Services

Wenn die Dienste mit der Initialisierung fertig sind, sollten Sie die TCP-Ports 9390 und 9392 finden, die auf Ihrer Loopback-Schnittstelle lauschen.

[email protected]:~# ss -ant
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 127.0.0.1:9390 *:*
LISTEN 0 128 127.0.0.1:9392 *:*

Aufgrund der Belastung der Systemressourcen möchten Sie OpenVAS wahrscheinlich immer dann stoppen, wenn Sie es nicht mehr verwenden, insbesondere wenn Sie kein dediziertes System zum Scannen auf Schwachstellen verwenden. OpenVAS kann durch Ausführen von „openvas-stop“ gestoppt werden.

[email protected]:~# openvas-stop
Stopping OpenVas Services

Verwendung des Greenbone Security Assistant

Der Greenbone Security Assistant ist die OpenVAS-Webschnittstelle, die auf Ihrem lokalen Computer (nach dem Start von OpenVAS) unter https://localhost:9392 verfügbar ist . Nachdem Sie das selbstsignierte Zertifikat akzeptiert haben, wird Ihnen die Anmeldeseite angezeigt und nach der Authentifizierung sehen Sie das Haupt-Dashboard.

Anmeldeinformationen konfigurieren

Schwachstellen-Scanner liefern die vollständigsten Ergebnisse, wenn Sie der Scan-Engine Anmeldeinformationen zur Verwendung auf gescannten Systemen bereitstellen können. OpenVAS verwendet diese Anmeldeinformationen, um sich beim gescannten System anzumelden und eine detaillierte Aufzählung der installierten Software, Patches usw. durchzuführen. Sie können Anmeldeinformationen über den Eintrag „Anmeldeinformationen“ im Menü „Konfiguration“ hinzufügen.

Zielkonfiguration

OpenVAS kann, wie die meisten Schwachstellen-Scanner, nach entfernten Systemen scannen, aber es ist ein Schwachstellen-Scanner, kein Port-Scanner. Anstatt sich auf einen Schwachstellen-Scanner zum Identifizieren von Hosts zu verlassen, werden Sie Ihr Leben viel einfacher machen, indem Sie einen dedizierten Netzwerk-Scanner wie Nmap oder Masscan verwenden und die Liste der Ziele in OpenVAS importieren.

[email protected]:~# nmap -sn -oA nmap-subnet-86 192.168.86.0/24
[email protected]:~# grep Up nmap-subnet-86.gnmap | cut -d " " -f 2 > live-hosts.txt

Sobald Sie Ihre Hostliste haben, können Sie sie im Abschnitt „Ziele“ des Menüs „Konfiguration“ importieren.

Scankonfiguration

Bevor Sie einen Schwachstellen-Scan starten, sollten Sie die verwendete Scan-Konfiguration feinabstimmen, was im Abschnitt „Scan-Konfigurationen“ des Menüs „Konfiguration“ möglich ist. Sie können jede der standardmäßigen Scan-Konfigurationen klonen und ihre Optionen bearbeiten, indem Sie alle Dienste oder Prüfungen deaktivieren, die Sie nicht benötigen. Wenn Sie Nmap verwenden, um eine vorherige Analyse Ihrer Ziele durchzuführen, können Sie Stunden beim Scannen auf Sicherheitslücken sparen.

Aufgabenkonfiguration

Ihre Anmeldeinformationen, Ziele und Scankonfigurationen sind eingerichtet, sodass Sie jetzt alles zusammenstellen und einen Schwachstellenscan ausführen können. In OpenVAS werden Schwachstellen-Scans als „Tasks“ durchgeführt. Wenn Sie eine neue Aufgabe einrichten, können Sie den Scan weiter optimieren, indem Sie die gleichzeitig stattfindenden Aktivitäten entweder erhöhen oder verringern. Bei unserem System mit 3 GB RAM haben wir unsere Aufgabeneinstellungen wie unten gezeigt angepasst.

Mit unseren feiner abgestimmten Scaneinstellungen und der Zielauswahl sind die Ergebnisse unseres Scans viel nützlicher.

OpenVAS automatisieren

Eine der weniger bekannten Funktionen von OpenVAS ist seine Befehlszeilenschnittstelle, mit der Sie über den Befehl „omp“ interagieren. Seine Verwendung ist nicht ganz intuitiv, aber wir sind nicht die einzigen Fans von OpenVAS und wir sind auf ein paar grundlegende Skripte gestoßen, die Sie verwenden und erweitern können, um Ihre OpenVAS-Scans zu automatisieren.

Das erste ist openvas-automate.sh von mgeeky, ein semi-interaktives Bash-Skript, das Sie nach einem Scan-Typ fragt und sich um den Rest kümmert. Die Scan-Konfigurationen sind im Skript fest codiert. Wenn Sie also Ihre benutzerdefinierten Konfigurationen verwenden möchten, können sie im Abschnitt „Ziele“ hinzugefügt werden.

[email protected]:~# apt -y install pcregrep
[email protected]:~# ./openvas-automate.sh 192.168.86.61

:: OpenVAS automation script.
mgeeky, 0.1

[>] Please select scan type:
1. Discovery
2. Full and fast
3. Full and fast ultimate
4. Full and very deep
5. Full and very deep ultimate
6. Host Discovery
7. System Discovery
9. Exit

--------------------------------
Please select an option: 5

[+] Tasked: 'Full and very deep ultimate' scan against '192.168.86.61'
[>] Reusing target...
[+] Target's id: 6ccbb036-4afa-46d8-b0c0-acbd262532e5
[>] Creating a task...
[+] Task created successfully, id: '8e77181c-07ac-4d2c-ad30-9ae7a281d0f8'
[>] Starting the task...
[+] Task started. Report id: 6bf0ec08-9c60-4eb5-a0ad-33577a646c9b
[.] Awaiting for it to finish. This will take a long while...

8e77181c-07ac-4d2c-ad30-9ae7a281d0f8 Running 1% 192.168.86.61

Wir sind auch auf einen Blogbeitrag von code16 gestoßen, der ihr Python-Skript für die Interaktion mit OpenVAS vorstellt und erklärt. Wie beim obigen Bash-Skript müssen Sie einige geringfügige Änderungen am Skript vornehmen, wenn Sie den Scan-Typ anpassen möchten.

[email protected]:~# ./code16.py 192.168.86.27
------------------------------------------------------------------------------
code16
------------------------------------------------------------------------------
small wrapper for OpenVAS 6

[+] Found target ID: 19f3bf20-441c-49b9-823d-11ef3b3d18c2
[+] Preparing options for the scan...
[+] Task ID = 28c527f8-b01c-4217-b878-0b536c6e6416
[+] Running scan for 192.168.86.27
[+] Scan started... To get current status, see below:

zZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzz
...
zZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzzZzz

[+] Scan looks to be done. Good.
[+] Target scanned. Finished taskID : 28c527f8-b01c-4217-b878-0b536c6e6416
[+] Cool! We can generate some reports now ... :)
[+] Looking for report ID...
[+] Found report ID : 5ddcb4ed-4f96-4cee-b7f3-b7dad6e16cc6
[+] For taskID : 28c527f8-b01c-4217-b878-0b536c6e6416

[+] Preparing report in PDF for 192.168.86.27

[+] Report should be done in : Report_for_192.168.86.27.pdf
[+] Thanks. Cheers!

Mit der großen Auswahl an Optionen, die in OpenVAS verfügbar sind, konnten wir in diesem Beitrag nur an der Oberfläche kratzen, aber wenn Sie sich die Zeit nehmen und Ihre Schwachstellen-Scans effektiv optimieren, werden Sie feststellen, dass der schlechte Ruf von OpenVAS und anderen Schwachstellen-Scannern ist unverdient. Die Anzahl der vernetzten Geräte in unseren Häusern und am Arbeitsplatz nimmt ständig zu und deren Verwaltung wird zu einer immer größeren Herausforderung. Der effektive Einsatz eines Schwachstellen-Scanners kann diese Verwaltung zumindest ein wenig vereinfachen.


Linux
  1. Konfigurieren einer IPv6-Adresse in Red Hat Enterprise Linux 7 und 8

  2. Kali Linux 1.0.5 und Software Defined Radio

  3. Kali Linux 1.0.7-Veröffentlichung

  4. Kali Linux 1.0.6-Veröffentlichung

  5. Kali Linux 1.1.0-Veröffentlichung

Kali Linux Review und Installationsanleitung mit Screenshots

OpenVAS - Vulnerability Assessment auf Kali Linux installieren

Installieren und Konfigurieren von Jenkins unter Linux

Erklärt:Eingabe-, Ausgabe- und Fehlerumleitung in Linux

Installieren Sie Nessus auf Kali und verbessern Sie die Linux-Distribution

Einführung in die Linux-Leistungsüberwachung und -optimierung