Print
Category: Penetration testing
Hits: 9752

Im Verlauf dieses Tutorials betrachten wir sowohl die Verwendung von Nessus als auch OpenVAS. Doch warum sollten wir uns zwei der führenden Vulnerability Scannern widmen? Sind die Ergebnisse nach dem Durchlaufen eines Scans so unterschiedlich, dass sich ein Vergleich lohnt? Obwohl OpenVAS als Abspaltung von Nessus entstanden ist, also beide eine gemeinsame technische Basis mitbringen, ist die Entwicklung unterschiedlich vorangeschritten. Nessus gilt unter den Vulnerability Scannern als weltweit führende kommerzielle Lösung. OpenVAS hingegen stellt die Open Source Lösung dar. Die Programmteile sind unter GPL lizensiert und seit 2019 wird der openVAS Scanner als Bestandteil des Greenbone Vulnerability Management (GVM) geführt. Trotz der gemeinsamen Wurzeln weisen die Schwachstellenscanner teils erhebliche Unterschiede auf, wie wir später sehen werden.

1. Installation von Nessus und erster Scan
2. Installation von OpenVAS und erster Scan
3. Vergleich
4. Fazit


1. Installation von Nessus und erster Scan:

1.1 Bevor wir uns mit der Installation von Nessus widmen bringen wir unser System mit dem folgenden Befehl auf den neusten Stand:

sudo apt-get update && apt-get upgrade -y

1.2 Da wir Nessus auf einem Kali Linux Rechner verwenden wollen, wählen wir die Debian Version für die Installationsdatei aus. Dazu navigieren wir zur Herstellerseite www.tenable.com/products/nessus/nessus-essentials und laden die entsprechende Datei herunter.

1.3 Ist der Download beendet, wechseln wir ins Downloadverzeichnis und öffnen die Paketverwaltung um Nessus zu installieren

sudo dpkg -i Nessus-10.3.0-debian9_amd64.deb

1.4 Nach Abschluss der Installation starten wir den Nessus Daemon mit dem Befehl

sudo /bin/systemctl start nessusd.service

1.5 Nun steht dem Start nichts mehr im Wege und wir öffnen die folgenden Webseite mit unserem Browser:

https://127.0.0.1:8834

1.6 Wir akzeptieren den Sicherheitshinweis und geben den zuvor beantragten Lizenzschlüssel für die Nessus Essentials Version ein.

1.7 Anschließend können wir einen Benutzeraccount für die Weboberfläche anlegen. Ist dies geschehen, startet der Download der Plugins.

1.8 Nach dem Download der Plugins und dem Eintragen des Benutzernamens samt Password navigieren wir auf die Seite "Scan Templates". Dort wählen wir "Basic Network Scan" aus und füllen die geforderten Eingaben aus.

Unter dem Menüauswahl "Discovery" verwenden wir den "Port Scan" welcher alle Ports abfragt. Nachdem wir unseren Scan vorbereitet haben speichern wir diesen ab. Er ist nun unter der Menüpunkt "My Scans" zu finden. Dort klicken wir auf den Play-Symbol um den Scan zu starten.

Nach dem Durchlaufen des Scans erhalten wir die Ergebnisse


2. Installation von OpenVAS und erster Scan

2.1 Mit dem folgendem Befehl updaten wir unser System und installieren OpenVAS

sudo apt-get update && apt-get install openvas -y

2.2 Nach dem Durchlaufen der Installation erscheint uns als nächstens das Passwort. Der hierzu gehörende Username lautet:"admin". Sinnigerweise können wir das Passwort bereits beim ersten Start ändern. Dazu später.

2.3 Um sicherzustellen, dass die Installation fehlerfrei durchlaufen ist nutzen wir den folgenden Befehl:

sudo gvm-check-setup

2.4 Die Installation ist nun einsatzbereit und können an dieser Stelle den Browser verwenden, um zum Dashboad zu gelangen

http://127.0.0.1:9392

2.5 Wie anfangs angesprochen, ändern wir unser Passwort unter "my settings" und klicken zudem auf den Notizblock oben links. Sind die Eingaben getätigt schließen wir das Fenster mit "save".

2.6 Um sobald als möglich loszulegen wechseln wir die Ansicht, indem wir auf die Button "Scans" klicken. Dort benutzen wir das Task Wizard Symbol um einen ersten Scan durchzuführen. Nach Angabe der IP Adresse des zu scannenden Host starten wir den Scan wie abgebildet.

2.7 Das Durchlaufen des Scans dauert nun eine Weile. Die Scandauer ist variabel und ein vulnerables System wir metasploitable mit vielen Sicherheitslücken dauerte ungefähr eine Stunde.

2.8 Nach Beenden das Scans stellt OpenVAS einen Report zur Verfügung. Diesen rufen wir auf, indem auf der oberen Leiste auf "Scans" -> "Reports" und anschließend den Report aus der Liste auswählen. Es erscheint zunächst eine Übersicht mit grundlegenden Informationen.

2.9 Die Ausgabe der ermittelten Schwachstellen erhalten wir durch das Wechseln auf den Reiter "Results".

2.10 Unterhalb der Menüleiste am oberen Rand erhalten wir die Möglichkeit einen Report zu exportieren. Um beispielsweise ein PDF zu erhalten wählen wir das Downloadsymbol mit dem Pfeil nach unten und verwenden anschließend .pdf als Ausgabeformat.

3. Im folgenden Vergleich gehen wir auf die Vor- und Nachteile beider Produkte ein und weisen anschließend auf die Unterschiede bei der Erkennung von Schwachstellemn hin.

3.1 Pro/Cons Nessus:

+ niedrige falsch / positiv Rate
+ niedrige Responsetime bei neu entdeckten Schwachstellen
+ moderne Benutzeroberfläche
+ fertige Templates für große Sicherheitslücken
+ Berücksichtigung von 72K CVEs

- hohe Kosten für professionelle User
- keine Open Source Software

3.2 Pro/Cons OpenVAS:

+ kostenlos
+ Integration in andere Sicherheitslösungen
+ höhere Gesamtanzahl an sicherheitsrelevanten Hinweisen

- Probleme mit falsch-positiven Ergebnissen
- Berücksichtigung von mur 26K CVEs
- keine Policy Management

3.3 Anzahl der Ergebnisse bei Nessus/OpenVAS:

High: 10
Medium: 25
Low: 2
Log: 72

Critical: 10
High: 5
Medium: 24
Low: 5
Info: 124

3.4 Auffälligkeiten bei der Untersuchung der Ergebnisse: die Durchsicht von "kritischen" oder Hinweisen der Stufe "hoch" in der Ergebnisliste der Schwachstellenanalyse zeigt eklatante Unterschiede unter beiden Programmen auf. An folgender Stelle sei eine Auswahl an Auffälligkeiten aufgezeigt, die bei der Analyse von Metaspolitable entstanden sind.

Folgende Einträge fehlen in den Ergebnissen bei OpenVAS:
- NSF Exported Share Information Disclosure Port: 2049 / udp
- NFS Shares World Readable Port: 2049 / tcp
- Samba Badlock Vulnerability Port: 445 / tcp


Folgende Einträge fehlen in den Ergebnissen bei Nessus:
- TWiki XSS and Command Execution Vulnerabilities Port; 80 / tcp
- Possible Backdoor: Ingreslock
- Distributed Ruby Multiple Remote Code Execution Vulnerabilities Port:8787/tcp

Die Auswahl gibt einen Hinweis darauf, dass selbst bei kritischen Sicherheitslücken die Ergebnisse nicht übereinstimmen. Dabei werden Schwachstellen entweder gar nicht erwähnt oder sie finden sich in unterschiedlichen Kategorien wieder.

Auffallend ist bei der Sortierung der Ergebnisse zudem, dass etliche Schwachstellen unter Nessus einen deutlich niedrigeren Score aufweisen als OpenVAS. So rangiert beispielsweise die Unreal IRCd (6697/tcp) Schwachstelle unter Nessus in der Rubrik "Info", während sie in OpenVAS als "high" eingestuft wird. Gleichsam verhält es sich mit einem FTP Server. Laut OpenVAS weist dieser in der laufenden Version eine Backdoor Vulnernability auf, während Nessus hingeben nur einen Hinweis auf einen laufenden Dienst ausgibt.

4. Fazit:

Angesichts der teils deutlichen Unterschiede bei der Bedienung, dem Workflow und Umfang an detektierten Schwachstellen kann keine Entweder-oder Empfehlung gegeben werden. Ratsam ist deshalb eine Nutzung bzw. die Kombination beider Produkte bei der Schwachstellenanalyse. Bei der Anzahl der detektierten von Schwachstellen bei Metasploitable punktet OpenVAS während Nessus eine zuverlässigere Erkennungsrate bietet.