Schwachstellensuche mit OpenVAS - Geplanter Einbruch

Lesezeit
8 Minuten
Bis jetzt gelesen

Schwachstellensuche mit OpenVAS - Geplanter Einbruch

30.09.2019 - 17:43
Veröffentlicht in:

In Zeiten der Digitalisierung und Automatisierung geraten kritische Komponenten der Infrastruktur verstärkt unter Beschuss. Medienwirksame Meldungen wie die Hackerattacken auf die IT-Infrastrukturen von BASF, Bayer, Henkel, Siemens und ThyssenKrupp im Sommer dieses Jahres sind lediglich die Spitze des Eisbergs. Unternehmen können sich nur schützen, indem sie Schwachstellen vor potenziellen Angreifern identifizieren und schließen. Das kostenfreie OpenVAS bietet hierfür einen umfangreichen Ansatz.

Zur Ermittlung von Schwachstellen benötigen Administratoren einen Security Scanner beziehungsweise einen Schwachstellenscanner. Aus dem ehemaligen Klassiker Nessus, der seit 2005 unter einer proprietären Lizenz weiterentwickelt wird, ist OpenVAS [1] (Open Vulnerability Assessment System) entstanden. Es handelt sich dabei um ein umfassendes Framework, das aus verschiedenen Diensten und Werkzeugen besteht und eine professionelle Software für das Schwachstellen-Scanning und -Management darstellt. Die Analyse erfolgt dabei meist nach dem gleichen Schema: Die Zielsysteme werden spezifischen Tests unterzogen, wobei das Testergebnis Rückschlüsse bezüglich der Verwundbarkeit eines Service oder einer Applikation zulässt.

Das Herzstück von OpenVAS stellt der "OpenVAS Scanner" dar, der die Rolle des virtuellen Penetration-Testers übernimmt und die eigentlichen Tests ausführt. Dazu greift OpenVAS auf verschiedene Klassiker wie den Portscanner Nmap zurück. Die notwendigen Informationen darüber, wie eine Probe auf etwaige Schwachstellen angewendet wird, liefert ein Feed. In einem Feed sind die sogenannten Network Vulnerability Tests (NVTs) enthalten. Neben kostenlosen Feeds, wie dem Greenbone Community Feed (GCF), stellen die OpenVAS-Entwickler Unternehmen eine kommerzielle Variante als Greenbone Security Feed (GSF) zur Verfügung. Die kommerzielle Variante deckt Tests in speziellen Sicherheitskontexten ab. Unabhängig von der jeweiligen Fokussierung stellen beide Feed-Varianten in der Regel tägliche Updates bereit.

In den NVTs sind die Anweisungen für das Erkennen von Sicherheitslücken hinterlegt. Zu Beginn eines Tests wird ein Profil des Systems erstellt. Dabei wählt OpenVAS auf Grundlage des Profils die Tests aus, die für das Zielsystem infrage kommen. Wenn Sie einen Windows-Server unter Beschuss nehmen wollen, wählt OpenVAS die hierfür passenden Tests aus. In der Praxis untersucht der Scanner das Ziel dann auf fehlende Windows-Updates. Die Profile und Ergebnisse der Tests verwaltet der OpenVAS-Manager im Hintergrund in einer SQLite-Datenbank. Grundsätzlich kann der Penetration-Tester den Umfang manuell definieren. Dabei lassen sich die Tests beispielsweise auf die Umsetzung des durch das BSI vorgeschriebenen IT-Grundschutz-Konzepts beschränken.

BSI-Empfehlungen im Fokus

Die Sicherheitslücken unterteilt OpenVAS in sogenannte Severity Classes. Diese Klassifizierung dient dazu, die Schwere einer Lücke auf einen Blick zu erkennen. Die Schwachstellen werden in die Kategorien Low, Medium und High unterteilt. Neben dieser Standardkategorisierung können Sie allerdings auch die vom BSI herausgegebene Schwachstellenampel verwenden. Dass in OpenVAS insbesondere Empfehlungen des BSI berücksichtigt sind, hat zwei Gründe: Zum einen hat das Bundesamt für Sicherheit in der Informationstechnologie das OpenVAS-Projekt über Jahre hinweg finanziell gefördert, zum anderen muss auch die Rechtssicherheit bei der Schwachstellenanalyse gegeben sein.

Bild 1: Der Assistent vereinfacht die ersten Schritte mit dem Security Scanner OpenVAS.
Bild 1: Der Assistent vereinfacht die ersten Schritte mit dem Security Scanner OpenVAS.

OpenVAS erlaubt die Integration von ergänzender Sicherheitssoftware, um beispielsweise lokale Prüfungen durch­zuführen, um Berichtauswertungen aufzubereiten und um Schwachstellen auf den Zielsystemen genauer unter die Lupe zu nehmen. OpenVAS generiert Prüfberichte und kann im Fall von Sicherheitsvorkommnissen Alarme auslösen. Identifizierte Probleme können Sie in Sicherheitsklassen priorisieren und diesen bei Bedarf Sicherheitsmeldungen zuordnen. Da Sicherheitschecks immer auch eine Momentaufnahme darstellen und sich Administratoren auch für Trends interessieren sowie Entwicklungen verfolgen, bieten die Prüfberichte mit der Vergleichsfunktion die Möglichkeit, Trends in der IT-Sicherheit zu erkennen.

OpenVAS unterstützt die tägliche Durchführung von Scans mithilfe der aktualisierten Schwachstellen-Prüfroutinen, den "Network Vulnerability Tests". Dabei können Sie wichtige Aufgaben und Routinen weitgehend automatisieren. OpenVAS kann über die Kommandozeile und über einen Webbrowser (Greenbone Security Assistant, GSA) gesteuert werden. Mit dem Greenbone Security Assistant steht Ihnen eine komfortable Webschnittstelle für OpenVAS zur Verfügung. In älteren Versionen war auch eine Desktop-Anwendung (Greenbone Security Desktop, GSD) verfügbar, doch deren Weiterentwicklung scheint inzwischen eingestellt zu sein.

Sie können zeitgesteuerte Prüfungen vornehmen. Inzwischen stehen weit mehr als 25.000 Schwachstellen-Prüfroutinen (NVTs) zur Verfügung. Die Prüffähigkeiten sind nicht nur auf die Identifikation von Schwachstellen einzelner Systeme beschränkt, sondern vielmehr erlaubt OpenVAS Security-Scanning von kompletten Netzwerken. Wenngleich der Fokus der Sicherheitstests bei Serverdiensten liegt, erlaubt OpenVAS auch die Durchführung lokaler Sicherheitsprüfungen, die Prüfung von Webapplikationen und die Nutzung individueller Richtlinienvorgaben. Der Scanner bietet zudem IT-Grundschutz- und Inventarisierungs-Unterstützung.

 Bild 2: OpenVAS erlaubt das Scannen einzelner Systeme, aber auch ganzer Netzwerke. Auch Host-Listen können für die Tests verwendet werden.
 Bild 2: OpenVAS erlaubt das Scannen einzelner Systeme, aber auch ganzer Netzwerke. Auch Host-Listen können für die Tests verwendet werden.

Scans auswerten

Mit der Durchführung von Scans ist nur der erste Schritt getan. Die gesammelten Informationen müssen ausgewertet und aufbereitet werden. Hierfür stellt OpenVAS umfangreiche Berichtsfunktionen bereit. Der Scanner sammelt die Daten zentral und wertet die Scanergebnisse in einem Prüfbericht aus. Die Ergebnisübersicht bietet vielfältige Filter- und Sortiermöglichkeiten. Die Prüfberichte stellen einen Deltavergleich zur Anzeige von Unterschieden zwischen Scanergebnissen und umfangreiche Suchfunktionen zur Verfügung.

Von Vorteil ist die Funktion "False Positives", die falsche Warnungen als solche identifiziert und in der Berichtausgabe entsprechend hervorhebt. Die Berichtfunktion erlaubt das Hinzufügen von Notizen zur Kommentierung der Scanergebnisse und bietet Hilfestellungen zu den gefundenen Schwachstellen. Die Prüfberichte können in unterschiedliche Formate exportiert werden, darunter TXT, PDF, XML, HTML, LaTeX, außerdem in topologische und geographische Visualisierungen.

OpenVAS unterstützt zudem das Security Content Automation Protocol (SCAP) und bietet eine vollständige Integration der SCAP-Datenbank mit aktuellen CPE- und CVE-Informationen. Nicht minder interessant: Der Scanner unterstützt Information-Security-Management-Systeme wie Nagios, die relevante Ergebnisse für die Durchführung von Sicherheitstests bereitstellen.

Bild 3: Auf Grundlage bestehender Scandaten können Prognosen angestellt werden. Damit sparen Sie sich aufwendige und ressourcenintensive Tests.
Bild 3: Auf Grundlage bestehender Scandaten können Prognosen angestellt werden. Damit sparen Sie sich aufwendige und ressourcenintensive Tests.

OpenVAS in Betrieb nehmen

Für die Inbetriebnahme von OpenVAS stehen Ihnen verschiedene Möglichkeiten zur Verfügung. Der einfachste Weg: Sie laden sich das Community-ISO-Image [2] von der Greenbone-Webseite herunter und installieren das Framework. Wenn Sie sich lediglich einen ersten Eindruck von der Leistungsfähigkeit und Funktionalität des Security Scanners verschaffen wollen, können Sie sich unter [3] für einen Test registrieren.

Da Penetration Tester in der Regel weitere Werkzeuge für die Identifikation von Schwachstellen benötigen, greifen Sie am besten direkt zu Kali Linux [4], dem Standardwerkzeugkasten. Lange Zeit war OpenVAS fester Bestandteil der Pentesting-Suite. In neueren Kali-Versionen muss der Security-Scanner zunächst installiert werden. Dazu führen Sie auf der Konsole zunächst apt install openvas und dann openvas-setup aus.

Dann prüfen Sie, ob "gsad" ausgeführt wird und auf Anfragen antwortet:

root@kali:~# netstat -apn | grep LISTEN

tcp 0 0 127.0.0.1:9390 0.0.0.0:* LISTEN 18108/openvasmd

tcp 0 0 127.0.0.1:80 0.0.0.0:* LISTEN 128112/gsad

tcp 0 0 127.0.0.1:9392 0.0.0.0:* LISTEN 128106/gsad

Anschließend starten Sie den Standardbrowser und loggen sich in das Frontend des OpenVAS-Scanners, den Greenbone Security Assistant, ein unter "https://localhost:9392". Als Zugangsdaten verwenden Sie den Benutzernamen "admin" und das vom Setup-Skript generierte Passwort. Der Security Manager präsentiert Ihnen beim Login das Dashboard, das Ihnen einen Überblick über den Zustand Ihrer IT-Infrastruktur gibt. Aus dem Dashboard stehen die Scan- und administrativen Funktionen zur Verfügung.

Erste Schwachstellentests

Bei der Durchführung von Sicherheitstests können Sie grundsätzlich zwei Wege einschlagen: Sie sichern sich die Unterstützung des sogenannten "Task Wizard" beziehungsweise "Advanced Task Wizard" oder konfigurieren einen Scan manuell. Die beiden Assistenten erlauben den schnellen Einstieg in das Security-Scanning mit OpenVAS. Die Assistenten sind im GSA über das Menü "Scan / Task" verfügbar. Mit "Task Wizard" verwenden Sie die einfachste Scanvariante, die das Zielsystem verschiedenen Standardüberprüfungen unterzieht.

Im Dialog des Assistenten geben Sie lediglich die IP-Adresse des Zielsystems an und leiten den Prüfvorgang mit einem Klick auf "Start Scan" ein. Mit diesem Befehl erzeugen Sie zunächst einen neuen Zieleintrag in der Zielverwaltung, führen den Scan mit standardisierten Scaneinstellungen durch und erhalten anschließend das Ergebnis in der Task-Übersicht aufgeführt. Nach Ausführen des ersten Scans entnehmen Sie der "Status"-Spalte die Zustände der Prüfung. Im Bereich "Actions" finden Sie verschiedene Funktionen, mit denen Sie die Tests erneut ausführen, die Task-Konfiguration klonen oder löschen können.

Wenn Sie Anpassungsmöglichkeiten der Tests wünschen, greifen Sie zur erweiterten Variante des Task-Wizards. Neben einer Task-Beschreibung bestimmen Sie die Scankonfiguration. Diese stellt Ihnen verschiedene Scantiefen zur Verfügung. Um erste Erfahrungen zu sammeln, verwenden Sie die Option "Full and Fast". Diese Konfiguration gilt als bester Ausgangspunkt beim Penetration-Testing. Hier wird zunächst ein Portscan durchgeführt, gefolgt von der Ausführung nahezu aller NVTs. Allerdings ist die Ausführung auf die Tests beschränkt, bei denen das Ziel keinen Schaden nimmt.

Die Auswahl ist außerdem von Seiten des OpenVAS-Systems so getroffen, dass die Anzahl der "False Positive"-Meldungen minimal ist. Dem Assistenten teilen Sie des Weiteren die IP-Adressen der Ziele, den Startzeitpunkt und etwaige Benutzerdaten für SSH-, SMB- und ESXi-Dienste mit. Sie können außerdem E-Mail-Adressen für den Berichtversand angeben. Dazu ist in den System­einstellungen die Konfiguration eines SMTP-Servers erforderlich.

Für die manuelle Zielkonfiguration führen Sie den Befehl "Configuration / Targets" aus und klicken auf das "New Target"-Symbol. Dabei können Sie auf Host-Listen zurückgreifen. Auch der gezielte Ausschluss über das Eingabefeld "Exclude Hosts" ist möglich. Mit dem Auswahlmenü "Alive Test" geben Sie die Methoden vor, die auf dem Zielsystem geprüft werden sollen. Wie beim erweiterten Assistenten lassen sich auch hier Zugangsdaten für verschiedene Dienste hinterlegen. Mit einem Klick auf "Create" legen Sie die manuelle Scankonfiguration an.

Die Ausführung und Steuerung von manuellen Scankonfigurationen erfolgen mit Hilfe der Aufgabenverwaltung. Diese öffnen Sie mit "Scan / Task". Klicken Sie auf das "New Task"-Symbol, um eine Task-Konfiguration anzulegen. Geben Sie in dem zugehörigen Dialog eine Bezeichnung an. Über "Scan Targets" greifen Sie auf ein Auswahlmenü zu, das die zuvor angelegten Scankonfigurationen aufführt. Bei der manuellen Konfiguration lohnt ein zweiter Blick auf die Scanoptionen, denn neben der Standard-Scanvariante stehen sechs weitere zur Verfügung.

Mit der Option "Discovery" beschränken Sie die Ausführung beispielsweise auf die NVTs, die Informationen über die Zielsysteme sammeln. Dabei werden allerdings keinerlei Schwachstellen identifiziert. Wenn Sie mehr Details wünschen, gewährt Ihnen die Option "Full and very deep" weitreichende Einblicke in die Zielsysteme. Allerdings ist dieser Scan sehr langsam, weil dabei viele Tests und Prüfungen ablaufen. Des Weiteren können Sie auf zuvor definierte Ausführungszeitpunkte zurückgreifen. Mit einem Klick auf "Create" legen Sie die manuelle Konfiguration an.

Neu erstellte Scankonfigurationen sind in der Task-Verwaltung mit dem Status "New" gekennzeichnet, bereits ausgeführte Konfigurationen entsprechend mit "Done". Um eine Task-Konfiguration manuell zu starten, klicken Sie in der "Actions"-Spalte auf das "Start"-Symbol (grün hinterlegter Pfeil). Die entscheidenden Informationen bezüglich der Sicherheitsbewertung finden Sie in der "Severity"-Spalte. Die Bewertung reicht von "Low" bis "High".

Fortgeschrittene Scans

Viele Schwachstellen sind nicht durch externe Prüfungen ermittelbar, sondern setzen einen Zugang zum Zielsystem voraus. Wie bereits erwähnt, bietet OpenVAS die Möglichkeit, sich Zugang zu diesen Systemen zu verschaffen. Allerdings verfügt der Scanner nicht über einen Passwort-Cracker, sondern kann sich lediglich bei bekannten Zugangsdaten per SMB, SSH, ESXi und SNMP in Zielsysteme einloggen.

Dazu legen Sie zunächst die Zugangsdaten mit "Configuration / Credentials" an. Abhängig vom gewählten Zugangstyp werden Ihnen die entsprechenden Eingabefelder angeboten. Auf Seiten der Zielsysteme müssen die angelegten Benutzer existieren. Anschließend wählen Sie in der entsprechenden Scankonfiguration die in OpenVAS hinterlegten Zugangsdaten aus.

Nicht jede sicherheitsrelevante Anfälligkeit rechtfertigt einen erneuten Scan des Netzwerks oder einzelner Systeme. Wenn das OpenVAS-System bereits durch frühere Scans Informationen über Sicherheitslücken erhalten hat, kann es eine Prognose darüber abgeben, welche Sicherheitsrisiken bestehen könnten. Hierzu bedienen Sie sich des CVE-Scanners. Er ermöglicht die Vorhersage möglicher Sicherheitsrisiken basierend auf aktuellen Informationen über bekannte Sicherheitsrisiken aus der SecInfo-Verwaltung, ohne einen erneuten Scan durchführen zu müssen. Das ist besonders interessant für Umgebungen, in denen die meisten Sicherheitslücken bereits geschlossen wurden.

Liegt ein bekanntes Sicherheitsrisiko vor, kann ein realer Scan durchgeführt werden, um die Prognose zu überprüfen. Um einen Prognosescan durchzuführen, erzeugen Sie eine neue Scankonfiguration und weisen dieser einen neuen Task zu. In der Scannerauswahl entscheiden Sie sich für den Eintrag "CVE". Nach dem Anlegen führen Sie den Scan aus. OpenVAS erzeugt wie bei allen anderen Tests eine Severity-Bewertung. Im Falle des PrognoseScans wird diese Bewertung durch den QoD-Wert ergänzt, der die Qualität der Aussage in Prozent einschätzt.

OpenVAS greift bei seinen Portscans auf Ping und Nmap zurück. Die Integration von Nmap erfolgt mithilfe des NASL-Wrappers. Das sichert einen hohen Grad an Flexibilität. In den Systemeinstellungen können Sie verschiedene Konfigurationen dieser Werkzeuge ändern. Dazu führen Sie den Befehl "Configuration / Scan Configs" aus und klicken auf das Schraubenschlüsselsymbol. Im Dialog "Edit Scanner Preferences" legen Sie beispielsweise Timeout- und Lastwerte fest.

Warnungen einrichten

Neben der Ermittlung von sicherheitsrelevanten Informationen und dem Abrufen von System- und Servicespezifika ist die Alarmkonfiguration eine der wichtigsten Aufgaben von OpenVAS. Warnungen sind im Scanner verankert. Tritt ein bestimmtes Ereignis ein oder wird eine bestimmte sicherheitsrelevante Bedingung erfüllt, schlägt das System Alarm. Die Alarmkonfiguration finden Sie unter "Configuration / Alters". Um einen neuen Alarm anzulegen, klicken Sie auf das "New Alert"-Symbol. Unter "Event" bestimmen Sie das Ereignis, auf das sich die Alarmkonfiguration bezieht. Warnmeldungen können beispielsweise bei Änderungen der SecInfos oder bei Statusänderungen ausgegeben werden.

Mit "Condition" legen Sie die exakten Bedingungen fest, die erfüllt sein müssen, damit ein Alarm ausgegeben wird. Sie geben dabei an, ob diese Warnung immer oder bei bestimmten Leveln ausgegeben wird. Bezüglich der Alamierung sind Sie nicht nur auf Versand einer E-Mail beschränkt, sondern können über die HTTP-Get-Anweisung auch SMS über ein entsprechendes Gateway initiieren. Eine Alarmmeldung kann weitere Aktionen nach sich ziehen, beispielsweise die Ausführung bestimmter Task-Konfigurationen oder das Kopieren des Berichts per SMB oder SCP auf bestimmte Zielsysteme. Bei der Alarmkonfiguration ist darauf zu achten, dass diese bestimmten Tasks zugewiesen wird.

Fazit

OpenVAS hat sich in den vergangenen Jahren zu einem würdigen Nessus-Nachfolger gemausert. Nicht zuletzt dank der finanzkräftigen Förderung des Projekts durch das BSI ist OpenVAS heute der mit Abstand beste freie Security-Scanner. Administratoren steht somit ein vorzügliches Werkzeug zur Verfügung, das auch professionellen Anforderungen genügt.

(dr)

Link-Codes

[1] OpenVAS: http://www.openvas.org

[2] ISO-Image von GSM-Community-Edition: https://www.greenbone.net/en/install_use_gce

[3] Testzugang von Greenbone: https://www.greenbone.net/en/testnow

[4] Kali Linux: https://www.kali.org

 

Ähnliche Beiträge

Mit Mikrosegmentierung Sicherheitsrisiken minimieren

Netzwerksegmentierung dient der Abwehr von Schadsoftware, die sich nach der Infiltration des Netzwerks seitlich darin ausbreitet. Die Mikrosegmentierung untergliedert noch granularer, sodass zwischen einzelnen Unterbereichen des Netzwerks der Zugang beschränkt ist. Werden diese beiden Methoden miteinander kombiniert, lässt sich die Cybersicherheit eines Unternehmens merklich verbessern und Sicherheitsrisiken reduzieren.

Dezentrale digitale Identitäten: Eine Bestandsaufnahme

Die eigene digitale Identität ist ein komplexes Konstrukt aus verschiedenen Arten von Nutzerkonten, Anmeldedaten, Historien und weiteren Informationen, die in Gesamtheit den Online-Fußabdruck einer Person ergeben. Oder besser: Ergeben würden, denn diese einzelnen Bestandteile sind üblicherweise hochfragmentiert bei verschiedenen Unternehmen gespeichert. Mit dem Konzept dezentraler digitaler Identitäten gibt es aber inzwischen eine Alternative.