17 Die Leistung verwalten

Beim Betreiben der Greenbone Enterprise Appliance kann eine erhebliche Datenmenge zwischen der Appliance, den Scanzielen und jeder Sensor-Appliance übertragen werden. Zusätzlich müssen die Scanergebnisse von der Appliance analysiert, gefiltert und verarbeitet werden. Abhängig vom Appliance-Modell, von der Anzahl der Benutzer und von der Konfiguration der Scanaufgaben laufen viele dieser Prozesse gleichzeitig ab.

17.1 Die Applianceleistung überwachen

Die Gesamtleistung der Greenbone Enterprise Appliance kann überwacht werden, indem Administration > Leistungsdaten in der Menüleiste gewählt wird (siehe Abb. 17.1).

_images/performance2-de.png

Abb. 17.1 Die Leistung der Appliance anzeigen

Die Ressourcennutzung der Appliance der letzten Stunde, des letzten Tags, der letzten Woche, des letzten Monats oder des letzten Jahrs können angezeigt werden.

Bemerkung

Die Leistung eines konfigurierten Sensors kann ebenfalls auf dem Master angezeigt werden.

Die folgenden Abschnitte sind wichtig:

Prozesse (Processes)
Eine hohe Anzahl an Prozessen ist nicht kritisch. Es sollten jedoch in erster Linie nur schlafende (Sleeping) und laufende (Running) Prozesse angezeigt werden.
Systemlast (System Load)
Eine andauernde Nutzung ist kritisch. Eine Last von 4 auf einem System mit 4 Kernen wird als akzeptabel angesehen.
CPU-Nutzung (CPU Usage)
Insbesondere ein hoher Wait-IO ist kritisch.
Speichernutzung (Memory Usage)
Die Appliance nutzt aggressives Caching. Die Nutzung eines Großteils des Speichers als Cache ist akzeptabel.
Swap-Nutzung (Swap Usage)
Die Nutzung des Swap-Speichers weist auf eine potentielle Systemüberlastung hin.

17.2 Die Scanleistung optimieren

Die Geschwindigkeit eines Scans hängt von vielen Parametern ab:

  • Gewählte Ports
  • Gewählte Scan-Konfiguration
  • Scanreihenfolge der Ziele

17.2.1 Eine Portliste für eine Aufgabe wählen

Die Portliste, die für ein Ziel konfiguriert wurde, hat einen großen Einfluss auf die Dauer des Erreichbarkeitstests und des Schwachstellenscans dieses Ziels.

17.2.1.1 Allgemeine Informationen über Ports und Portlisten

Ports sind die Verbindungspunkte der Netzwerkkommunikation. Jeder Port eines Systems verbindet sich mit dem Port eines anderen Systems.

Transmission Control Protocol (TCP) Ports

  • 65535 TCP-Ports für jedes System
  • Datenübertragung zwischen zwei TCP-Ports geschieht in beide Richtungen.
  • Der Scan von TCP-Ports wird normalerweise schnell und einfach durchgeführt.

User Datagram Protocol (UDP) Ports

  • 65535 UDP-Ports für jedes System
  • Datenübertragung zwischen zwei UDP-Ports geschieht nur in eine Richtung.
  • Der Empfang von Daten, die über UDP übertragen werden, wird nicht zwingend bestätigt, sodass das Prüfen von UDP-Ports normalerweise länger dauert.

Port 0 bis 1023 sind privilegierte oder Systemports und können nicht von Benutzeranwendungen geöffnet werden 1.

Die Internet Assigned Numbers Authority (IANA) weist Standardprotokollen Ports zu, z. B. Port 80 zu „http“ oder Port 443 zu „https“. Über 5000 Ports sind registriert.

Das Scannen aller Ports dauert in vielen Fällen zu lang und viele Ports werden normalerweise nicht genutzt. Um dieses Problem zu beheben, können Portlisten genutzt werden.

Alle Ports aller Systeme aller per Internet zugänglichen Systeme wurden untersucht und Listen der meist genutzten Ports wurden erstellt. Diese spiegeln nicht unbedingt die IANA-Liste wider, da es keine Pflicht ist, für einen bestimmten Diensttyp einen entsprechenden Port zu registrieren. Nmap, ein Open-Source-Portscanner und der OpenVAS-Scanner nutzen standardmäßig unterschiedliche Listen und prüfen nicht alle Ports.

Für die meisten Scans ist es oft ausreichend die Ports zu scannen, die bei IANA registriert sind.

Die folgenden Portlisten sind auf der Appliance vordefiniert:

  • All IANA assigned TCP: Alle von der Internet Assigned Numbers Authority (IANA) zugewiesenen TCP-Ports, laufend aktualisiert
  • All IANA assigned TCP and UDP: Alle von der Internet Assigned Numbers Authority (IANA) zugewiesenen TCP- und UDP-Ports, laufend aktualisiert
  • All privileged TCP
  • All privileged TCP and UDP
  • All TCP
  • All TCP and Nmap top 100 UDP: Alle TCP-Ports und die 100 meistgenutzten UDP-Ports gemäß dem Nmap-Netzwerkscanner, laufend aktualisiert
  • All TCP and Nmap top 1000 UDP: Alle TCP-Ports und die 1000 meistgenutzten UDP-Ports gemäß dem Nmap-Netzwerkscanner, laufend aktualisiert
  • Nmap top 2000 TCP and top 100 UDP: Die 2000 meistgenutzten TCP-Ports und die 100 meistgenutzten UDP-Ports gemäß dem Nmap-Netzwerkscanner, laufend aktualisiert
  • OpenVAS Default: Die TCP-Ports, die vom OpenVAS-Scanner beim Übergeben der standardmäßigen Portbereichpräferenz, gescannt werden

Bemerkung

Zusätzliche Portlisten können, wie in Kapitel 10.7 beschrieben, erstellt werden.

17.2.1.2 Die richtige Portliste wählen

Beim Wählen einer Portliste muss die Erkennungsleistung und die Scandauer beachtet werden.

Die Dauer eines Scans wird hauptsächlich durch die Netzwerkkonfiguration und die Anzahl der zu prüfenden Ports bestimmt.

Dienste, die nicht an Ports auf der Liste gebunden sind, werden nicht auf Schwachstellen untersucht. Zusätzlich werden schädliche Anwendungen, die an solche Ports gebunden sind, nicht entdeckt. Schädliche Anwendungen öffnen meistens Ports, die für gewöhnlich nicht genutzt werden und weit von den Systemports entfernt sind.

Andere Kriterien sind die Abwehrmechanismen, die durch vollständige Portscans ausgelöst werden und Gegenmaßnahmen oder Benachrichtigungen einleiten. Selbst bei gewöhnlichen Scans können Firewalls simulieren, dass alle 65535 Ports aktiv sind und somit den Scan mit sogenannten Time-outs ausbremsen.

Zusätzlich reagiert der Dienst hinter jedem Port, der abgefragt wird, mindestens einen Log-Eintrag. Aus organisatorischen Gründen dürfen einige Dienste nur zu bestimmten Zeiten gescannt werden.

17.2.1.2.1 Scandauer

In Situationen, in denen Portdrosselung auftritt, kann das Scannen aller TCP- und UDP-Ports eines einzelnen Systems bis zu 24 Stunden oder länger dauern. Da alle Scans parallel ausgeführt werden, benötigen zwei Systeme nur unwesentlich mehr Zeit als ein einzelnes System. Trotzdem hat die Parallelisierung aufgrund von Systemressourcen und der Netzwerkleistung ihre Grenzen.

Alle IANA TCP-Ports benötigen normalerweise nur einige Minuten, um gescannt zu werden.

Da einige Gegenmaßnahmen die Dauer eines Scans erhöhen können, kann eine Drosselung vermieden werden, indem die Konfiguration des Abwehrsystems geändert wird.

Bei Verdachtsfällen einer Kompromittierung oder höchsten Sicherheitsansprüchen ist ein vollständiger Scan unerlässlich.

17.2.1.2.2 Totale Sicherheit

Für Portscans besteht keine totale Sicherheit, was bedeutet, dass selbst beim Scannen aller TCP- und aller UDP-Ports das voreingestellte Timeout für die Portprüfung zu kurz sein kann, um eine versteckte schädliche Anwendung zu einer Antwort zu zwingen.

Falls ein anfänglicher Verdacht besteht, sollte ein erfahrener Penetrationstester hinzugezogen werden.

17.2.2 Eine Scan-Konfiguration für eine Aufgabe wählen

Auch die Scan-Konfiguration hat eine Auswirkung auf die Dauer des Scans. Die Appliance bietet für den Schwachstellenscan vier verschiedene Scan-Konfigurationen:

  • Full and fast
  • Full and fast ultimate
  • Full and very deep
  • Full and very deep ultimate

Die Scan-Konfigurationen Full and fast und Full and fast ultimate optimieren den Scanprozess durch die Nutzung von Informationen, die zuvor im Scan gefunden wurden. Nur VTs, die nützlich sind, werden ausgeführt, was zu einer reduzierten Scandauer führt.

Scans, die die Scan-Konfigurationen Full and very deep und Full and very deep ultimate nutzen, ignorieren bereits gefundene Informationen und führen alle verfügbaren VTs ohne Ausnahme aus.

17.2.3 Die Scanreihenfolge der Ziele wählen

Während eines Scans zeigt der entsprechende Statusbalken auf der Seite Aufgaben den Fortschritt des Scans in Prozent (siehe Kapitel 10.8).

In den meisten Fällen ist der Fortschritt eine grobe Schätzung, da es für die Appliance schwierig ist, hochzurechnen, wie sich die Systeme oder Dienste, die noch nicht gescannt wurden, im Vergleich zu den bereits gescannten Systemen und Diensten, verhalten.

Beispiel

Ein Zielnetzwerk 192.168.0.0/24, welches nur 5 erreichbare Hosts mit den IP-Adressen 192.168.0.250-254 hat, soll gescannt werden. Wenn die Aufgabe für dieses Ziel mit Standardeinstellungen erstellt wird, versucht der Scanner, alle möglichen Hosts im Zielnetzwerk der Reihe nach zu scannen.

Da für die IP-Adressen 192.168.0.1-249 keine Hosts gescannt werden können, überspringt der Scanner dieses Hosts und der Scanfortschritt erreicht sehr schnell 95 %. Dies lässt vermuten, dass der Scan fast abgeschlossen ist.

Dann werden die Hosts mit den IP-Adressen 192.168.0.250-254 gescannt und für jeden Host nehmen die Schwachstellentests einige Zeit in Anspruch. Aus diesem Grund ist der Scanfortschritt zwischen 95 % und 100 % deutlich langsamer.

Um die Schätzung des Fortschritts zu verbessern, kann die Einstellung Reihenfolge der Ziel-Hosts beim Erstellen einer neuen Aufgabe angepasst werden (siehe Kapitel 10.2.2).

Die Einstellung Zufällig wird empfohlen (siehe Abb. 17.2).

_images/performance_task-de.png

Abb. 17.2 Auswählen der Reihenfolge der Ziele

17.3 Scan-Warteschlange

Wenn start für eine Aufgabe oder ein Audit geklickt wird, wird sie/es einer Warteschlange hinzugefügt und erhält den Status In Warteschlange. Der Scanner beginnt nur dann mit dem Scan, wenn genügend Systemressourcen verfügbar sind. Die verfügbaren Ressourcen hängen vom Appliance-Modell, der verwendeten GOS-Version und der aktuellen Arbeitslast des Systems ab. Außerdem werden die Scans in der Warteschlange in Abständen von 1 Minute gestartet, um eine Überlastung des Systems zu vermeiden.

Die wichtigste Ressource ist Random-Access Memory (RAM). Jeder Scan benötigt ein bestimmtes Minimum an RAM, um korrekt ausgeführt zu werden, da derselbe Scanprozess nicht mehrere Scans unterschiedlicher Nutzer oder auch vom gleichen Nutzer bearbeiten kann. Der RAM hat physische Grenzen und kann nicht auf zufriedenstellende Weise geteilt werden.

CPU, Netzwerkverbindung und Festplatten-E/A sind ebenfalls wichtige Systemressourcen. Allerdings können diese im Gegensatz zum RAM auf Kosten einer langsameren Scanausführung geteilt werden.

Die Diagramme zur Systemleistung stellen detaillierte Informationen über den RAM im Verlauf der Zeit bereit (siehe Kapitel 17.1).

In manchen Fällen bleiben Aufgaben/Audits in der Warteschlange:

  • Es werden zu viele Aufgaben/Audits gleichzeitig gestartet und ausgeführt, und es ist nicht genügend RAM verfügbar.
  • Die Appliance führt ein Feed-Update durch und lädt momentan neue VTs.
  • Die Appliance wurde gerade gestartet und lädt momentan die VTs.

Wenn der benötigte RAM wieder verfügbar oder das Laden der VTs beendet ist, werden die Scans aus der Warteschlange nach dem Prinzip „first in, first out“ gestartet.

Das Auslastungsmangement unterliegt dem Scanner. Falls ein Master-Sensor-Setup genutzt wird, verwaltet jeder Sensor seine Kapazität selbst. Sensorscans beeinflussen die Scankapazität des Masters nur minimal.

Fußnoten

[1]Unter Unix-ähnlichen Systemen ist der Zugriff auf diese privilegierten Ports nur für privilegierte Benutzer (d. h. root) erlaubt. Ports ab 1024 sind auch für nicht-privilegierte Benutzer verfügbar.