14 Das Greenbone Management Protocol nutzen

Die Schwachstellenverwaltung von OPENVAS SCAN ist auch über das Greenbone Management Protocol (GMP) verfügbar. GMP ist ein XML-basiertes, menschenlesbares, zustandsloses Anfrage-Antwort-Protokoll.

Greenbone stellt Greenbone Vulnerability Management Tools (gvm-tools) bereit, um diese Funktion mit GMP verfügbar zu machen (siehe Kapitel 14.3).

Die neueste GMP-Version ist unter https://docs.greenbone.net/API/GMP/gmp-22.7.html dokumentiert.

14.1 Änderungen am GMP

GMP wird regelmäßig aktualisiert, um Änderungen in der Funktionalität, die durch den zugrunde liegenden Dienst bereitgestellt werden, anzuwenden und eine einheitliche und umfassende Oberfläche zur Verfügung zu stellen.

Updates führen zu einer neuen Version von GMP. Jede neue Version enthält eine Liste hinzugefügter, veränderter oder entfernter Protokollelementen (Befehle oder Attribute). Die neueste Version der Liste ist unter https://docs.greenbone.net/API/GMP/gmp-22.7.html#changes verfügbar.

Abhängig von den Änderungen ist die veraltete Version noch für einige Zeit verfügbar. Während dieser Übergangsphase sind sowohl die veraltete als auch die neue Version erhältlich.

Die Liste kann bei der frühstmöglichen Vorbereitung auf kommende Veränderungen helfen. Sie stellt nicht die komplette Liste an bevorstehenden Veränderungen dar.

14.2 GMP aktivieren

Bevor GMP genutzt werden kann, muss es auf der Appliance aktiviert werden.

Während die Web-Oberfläche GMP lokal auf der Appliance nutzt, kann standardmäßig nicht remote über das Netzwerk auf GMP zugegriffen werden.

Der Remote-GMP-Dienst kann mithilfe des GOS-Administrationsmenüs aktiviert werden (siehe Kapitel 6.2.4.2).

Allgemein wird der Zugriff auf GMP mit SSL/TLS authentifiziert und verschlüsselt. Dieselben Benutzer wie für die Web-Oberfläche werden genutzt. Die Benutzer unterliegen denselben Beschränkungen und haben dieselben Berechtigungen.

14.3 Die gvm-tools nutzen

Die Greenbone Vulnerability Management Tools (gvm-tools) sind eine Sammlung von Werkzeugen, die Zugang zu den Funktionen des Greenbone Management Protocols (GMP) bereitstellen. GMP-Skripte, die mit gvm-script ausgeführt werden, benutzen die API, die von der Bibliothek python-gvm zur Verfügung gestellt wird.

Bemerkung

python-gvm wird bei der Installation von gvm-tools automatisch installiert.

gvm-tools sind als Befehlszeilenschnittstelle (CLI) und als Python-Shell für jedes Betriebssystem, das Python unterstützt, verfügbar.

Die folgenden Versionen sind erforderlich, um gvm-tools mit GOS 24.10 zu verwenden:

  • gvm-tools: 25.1.1 oder höher

  • python-gvm: 26.0.0 oder höher

Bemerkung

Sowohl gvm-tools als auch python-gvm verwenden ein anderes Versionsschema als GOS, sodass die Versionen von gvm-tools, python-gvm und GOS nicht unbedingt identisch sind.

Es wird empfohlen, die neuesten Versionen von gvm-tools und python-gvm zu verwenden.

Die gvm-tools können vom offiziellen GitHub-Repository des Projekts heruntergeladen werden. Python 3.9 oder höher wird benötigt. Um gvm-tools zu installieren, müssen die Anweisungen unter https://greenbone.github.io/gvm-tools/ befolgt werden.

Wichtig

Externe Links zur Greenbone-Downloadseite unterscheiden Groß- und Kleinbuchstaben.

Großbuchstaben, Kleinbuchstaben und Sonderzeichen müssen exakt so, wie sie in den Fußnoten stehen, eingegeben werden.

Bemerkung

Die gvm-tools sind unter der GNU General Public License v3.0 lizensiert und können möglicherweise für andere Anwendungsfälle, basierend auf dem Quellcode, angepasst und gebaut werden.

gvm-tools sind hilfreich für die Verarbeitung großer Datenmengen oder bestimmter Teilmengen von Daten, die von OPENVAS SCAN-Produkten bereitgestellt werden (batch processing, scripting).

14.3.1 gvm-cli nutzen

Das von Greenbone bereitgestellte Befehlszeilenprogramm gvm-cli ermöglicht den einfachen Zugriff auf die umfangreichen Funktionen der XML-basierten GMP-Befehle, die unter https://docs.greenbone.net/API/GMP/gmp-22.7.html dokumentiert sind. Optionale Argumente in der API sind durch ? gekennzeichnet.

gvm-cli unterstützt mehrere Befehlszeilenoptionen, die wie folgt angezeigt werden können:

$ gvm-cli -h
usage: gvm-cli [-h] [-c [CONFIG]] [--log [{DEBUG,INFO,WARNING,ERROR,CRITICAL}]] [--timeout TIMEOUT] [--gmp-username GMP_USERNAME]
             [--gmp-password GMP_PASSWORD] [-V] [--protocol {GMP,OSP}]
             CONNECTION_TYPE ...

optional arguments:
  -h, --help            show this help message and exit
  -c [CONFIG], --config [CONFIG]
                        Configuration file path (default: ~/.config/gvm-
                        tools.conf)
  --log [{DEBUG,INFO,WARNING,ERROR,CRITICAL}]
                        Activate logging (default level: None)
  --timeout TIMEOUT     Response timeout in seconds, or -1 to wait
                        indefinitely (default: 60)
  --gmp-username GMP_USERNAME
                        Username for GMP service (default: '')
  --gmp-password GMP_PASSWORD
                        Password for GMP service (default: '')
  -V, --version         Show version information and exit
  --protocol {GMP,OSP}  Service protocol to use (default: GMP)

connections:
  valid connection types

  CONNECTION_TYPE       Connection type to use
    ssh                 Use SSH to connect to service
    tls                 Use TLS secured connection to connect to service
    socket              Use UNIX Domain socket to connect to service

14.3.1.1 Verbindungstypen

gvm-cli unterstützt die folgenden Verbindungen:

  • SSH

  • TLS

  • Unix Domain Socket

Bemerkung

Alle aktuellen Appliances nutzen SSH zum Verschlüsseln von GMP. Die Nutzung von TLS ist veraltet, wird nicht offiziell unterstützt und könnte in zukünftigen Versionen entfernt werden.

Zusätzlichen Befehlszeilenoptionen für gvm-cli werden angezeigt, wenn der Verbindungstyp angegeben wird:

$ gvm-cli ssh -h
usage: gvm-cli ssh [-h] [--hostname HOSTNAME] [--port PORT] [--ssh-username SSH_USERNAME] [--ssh-password SSH_PASSWORD] [-A] [-X XML] [-r]
                 [--pretty] [--duration]
                 [infile]

positional arguments:
  infile                File to read XML commands from.

optional arguments:
  -h, --help            show this help message and exit
  --hostname HOSTNAME   Hostname or IP address (default: 127.0.0.1)
  --port PORT           SSH port (default: 22)
  --ssh-username SSH_USERNAME
                        SSH username (default: 'gmp')
  --ssh-password SSH_PASSWORD
                        SSH password (default: 'gmp')
  -A, --auto-accept-host
                      When executed in e.g. CI, auto accept SSH host addition
  -X XML, --xml XML     XML request to send
  -r, --raw             Return raw XML
  --pretty              Pretty format the returned xml
  --duration            Measure command execution time

14.3.1.2 In die Appliance einloggen

Für die Nutzung von gvm-cli ist das Einloggen in die Appliance nötig. Es werden dieselben Benutzer wie für die Web-Oberfläche der Appliance verwendet.

Die benötigten Logininformationen müssen bei jedem verwendeten Befehl angegeben werden. Dies kann entweder mithilfe von Befehlszeilenoptionen oder einer Konfigurationsdatei (~/.config/gvm-tools.conf) erfolgen.

Um die Informationen mit Befehlszeilenoptionen zur Verfügung zu stellen, kann Folgendes bei jedem Befehl genutzt werden:

--gmp-username <USER_NAME> --gmp-password <PASSWORD>

Um die Informationen mit einer Konfigurationsdatei bereitzustellen, muss eine Datei ~/.config/gvm-tools.conf, die die folgenden Informationen enthält, erstellt werden:

[Auth]
gmp_username=<USER_NAME>
gmp_password=<PASSWORD>

Diese Konfigurationsdatei wird nicht standardmäßig gelesen. Die Befehlszeilenoption --config oder -c muss hinzugefügt werden, um die Konfigurationsdatei zu lesen.

14.3.1.3 Einen Scan erstellen und starten

Dieses Kapitel zeigt die Verwendung von gvm-cli am Beispiel eines einfachen Scans.

14.3.1.3.1 Verwendete Befehle

Die in diesem Beispiel verwendeten Befehle sind unter https://docs.greenbone.net/API/GMP/gmp-22.7.html dokumentiert.

  • create_target

  • get_port_lists

  • create_task

  • get_configs

  • start_task

  • get_tasks

  • get_report_formats

  • get_reports

14.3.1.3.2 Verwendete Platzhalter

Die folgenden Platzhalter werden verwendet:

  • <USER_NAME>: Benutzername des Web-/GMP-Benutzers.

  • <PASSWORD>: Passwort des Web-/GMP-Benutzers.

  • <APPLIANCE_IP>: IP-Adresse der Appliance, auf die zugegriffen wird.

  • <TARGET_IP>: IP-Adresse des Scanziels.

  • <PORT_LIST_ID>: ID der verwendeten Portliste. Alle verfügbaren Portlisten können durch Ausführen des folgenden Befehls abgerufen werden:

    $ gvm-cli --gmp-username <USER_NAME> --gmp-password <PASSWORD> ssh --hostname <APPLIANCE_IP> --xml "<get_port_lists/>"
    
  • <TARGET_ID>: ID des Scanziels.

  • <SCAN_CONFIG_ID>: ID der verwendeten Scan-Konfiguration. Alle verfügbaren Scan-Konfigurationen können durch Ausführen des folgenden Befehls abgerufen werden:

    $ gvm-cli --gmp-username <USER_NAME> --gmp-password <PASSWORD> ssh --hostname <APPLIANCE_IP> --xml "<get_configs/>"
    
  • <TASK_ID>: ID der Aufgabe.

  • <REPORT_ID>: ID des Scanberichts.

  • <REPORT_FORMAT_ID>: ID des verwendeten Berichtformats. Alle verfügbaren Berichtformate können durch Ausführen des folgenden Befehls abgerufen werden:

    $ gvm-cli --gmp-username <USER_NAME> --gmp-password <PASSWORD> ssh --hostname <APPLIANCE_IP> --xml "<get_report_formats/>"
    
14.3.1.3.3 Schritt-für-Schritt-Anleitung

Die Aufgabe kann wie folgt erstellt und gestartet werden:

  1. Das Scanziel erstellen:

$ gvm-cli --gmp-username <USER_NAME> --gmp-password <PASSWORD> ssh \
--hostname <APPLIANCE_IP> --xml "<create_target><name>Suspect Host</name>\
<hosts><TARGET_IP></hosts><port_list id='<PORT_LIST_ID>'></port_list></create_target>"

→ Die Ausgabe enthält die ID des Scanziels. Diese wird zum Erstellen der Aufgabe benötigt.

<create_target_response status="201" status_text="OK, resource created" id="<TARGET_ID>"/>
  1. Die Aufgabe erstellen:

$ gvm-cli --gmp-username <USER_NAME> --gmp-password <PASSWORD> ssh \
--hostname <APPLIANCE_IP> --xml "<create_task><name>Scan Suspect Host</name> \
<target id='<TARGET_ID>'></target> <config id='<SCAN_CONFIG_ID>'></config></create_task>"

→ Die Ausgabe enthält die ID der Aufgabe. Diese wird zum Starten und Überwachen der Aufgabe benötigt.

<create_task_response status="201" status_text="OK, resource created" id="<TASK_ID>"/>
  1. Die Aufgabe starten:

$ gvm-cli --gmp-username <USER_NAME> --gmp-password <PASSWORD> ssh \
--hostname <APPLIANCE_IP> --xml "<start_task task_id='<TASK_ID>'/>"

→ Die Aufgabe wird ausgeführt. Die Ausgabe enthält die ID des Scanberichts.

<start_task_response status="202" status_text="OK, request submitted"><report_id><REPORT_ID></report_id></start_task_response>
  1. Den Status der Aufgabe anzeigen:

$ gvm-cli --gmp-username <USER_NAME> --gmp-password <PASSWORD> ssh \
--hostname <APPLIANCE_IP> --xml "<get_tasks task_id='<TASK_ID>'/>"

<get_tasks_response status="200" status_text="OK"><apply_overrides>
...<status>Running</status><progress>98<host_progress>
<host><TARGET_IP></host>98</host_progress></progress>.../>

→ Sobald der Scan abgeschlossen ist, kann der Bericht geladen werden. Dazu wird die Bericht-ID benötigt, die beim Starten der Aufgabe angezeigt wurde.

  1. Den Scanbericht laden:

$ gvm-cli --gmp-username <USER_NAME> --gmp-password <PASSWORD> ssh \
--hostname <APPLIANCE_IP> --xml "<get_reports report_id='<REPORT_ID>' \
format_id='<REPORT_FORMAT_ID>'/>"

Tipp

Um die Daten vollständig und automatisch zu verarbeiten, kann die Aufgabe mit einer Benachrichtigung kombiniert werden, die den Bericht, basierend auf den gegebenen Bedingungen, weiterleitet.

14.3.2 gvm-pyshell nutzen

Das von Greenbone bereitgestellte Befehlszeilenprogramm gvm-pyshell ermöglicht den einfachen Zugriff auf die umfangreichen Funktionen der XML-basierten GMP-Befehle durch eine interaktive Python-Shell. Die Befehle übernehmen die Generierung und Analyse der XML-Daten. Die Python-Implementierung folgt der GMP-API, die unter https://docs.greenbone.net/API/GMP/gmp-22.7.html dokumentiert ist. Optionale Argumente in der API sind durch ? gekennzeichnet.

gvm-pyshell unterstützt mehrere Befehlszeilenoptionen, die wie folgt angezeigt werden können:

$ gvm-pyshell -h
usage: gvm-pyshell [-h] [-c [CONFIG]] [--log [{DEBUG,INFO,WARNING,ERROR,CRITICAL}]] [--timeout TIMEOUT]
                   [--gmp-username GMP_USERNAME] [--gmp-password GMP_PASSWORD] [-V] [--protocol {GMP,OSP}]
                   CONNECTION_TYPE ...

options:
  -h, --help            show this help message and exit
  -c, --config [CONFIG]
                        Configuration file path (default: ~/.config/gvm-tools.conf)
  --log [{DEBUG,INFO,WARNING,ERROR,CRITICAL}]
                        Activate logging (default level: None)
  --timeout TIMEOUT     Response timeout in seconds, or -1 to wait indefinitely (default: 60)
  --gmp-username GMP_USERNAME
                        Username for GMP service (default: '')
  --gmp-password GMP_PASSWORD
                        Password for GMP service (default: '')
  -V, --version         Show version information and exit
  --protocol {GMP,OSP}  Service protocol to use (default: GMP)

14.3.2.1 Verbindungstypen

gvm-pyshell unterstützt die folgenden Verbindungen:

  • TLS

  • SSH

  • Socket

Während die aktuellen Appliances SSH nutzen, um GMP zu schützen, haben ältere Appliances TLS und Port 9390 für den Transport von GMP genutzt. gvm-tools können sowohl mit dem älteren als auch mit dem aktuellen GOS genutzt werden.

Zusätzlichen Befehlszeilenoptionen für gvm-pyshell werden angezeigt, wenn der Verbindungstyp angegeben wird:

$ gvm-pyshell ssh -h
usage: gvm-pyshell ssh [-h] [--hostname HOSTNAME] [--port PORT] [--ssh-username SSH_USERNAME] [--ssh-password SSH_PASSWORD] [-A] [-i] [SCRIPT] [ARG ...]

positional arguments:
  SCRIPT                Path to script to be preloaded (example: myscript.gmp.py)
  ARG                   Arguments for preloaded script

options:
  -h, --help            show this help message and exit
  --hostname HOSTNAME   Hostname or IP address (default: 127.0.0.1)
  --port PORT           SSH port (default: 22)
  --ssh-username SSH_USERNAME
                        SSH username (default: 'gmp')
  --ssh-password SSH_PASSWORD
                        SSH password (default: 'gmp')
  -A, --auto-accept-host
                        When executed in e.g. CI, auto accept SSH host addition
  -i, --interactive     Start an interactive Python shell

14.3.2.2 Argumente übergeben

Erforderliche Argumente können in der richtigen Reihenfolge angegeben werden und werden automatisch erkannt:

gmp.create_task("Name","Config","Scanner","Target",comment="comment")

Alternativ können sie anhand ihrer Kennung angegeben werden:

gmp.create_task(name="Name",config_id="Config",scanner_id="Scanner",
target_id="Target",comment="comment")

14.3.2.3 In die Appliance einloggen

Für die Nutzung von gvm-pyshell ist das Einloggen in die Appliance nötig. Es werden dieselben Benutzer wie für die Web-Oberfläche der Appliance verwendet.

Die benötigten Logininformationen müssen angegeben werden. Dies kann entweder mithilfe von Befehlszeilenoptionen oder einer Konfigurationsdatei (~/.config/gvm-tools.conf) erfolgen.

Um die Informationen mit Befehlszeilenoptionen zur Verfügung zu stellen, kann Folgendes genutzt werden:

--gmp-username <USER_NAME> --gmp-password <PASSWORD>

Um die Informationen mit einer Konfigurationsdatei bereitzustellen, muss eine Datei ~/.config/gvm-tools.conf, die die folgenden Informationen enthält, erstellt werden:

[Auth]
gmp_username=<USER_NAME>
gmp_password=<PASSWORD>

Diese Konfigurationsdatei wird nicht standardmäßig gelesen. Die Befehlszeilenoption --config oder -c muss hinzugefügt werden, um die Konfigurationsdatei zu lesen.

14.3.2.4 Einen Scan erstellen und starten

Dieses Kapitel zeigt die Verwendung des Befehls gvm-pyshell am Beispiel eines einfachen Scans.

14.3.2.4.1 Verwendete Befehle

Die in diesem Beispiel verwendeten Befehle sind unter https://docs.greenbone.net/API/GMP/gmp-22.7.html dokumentiert.

  • create_target

  • get_port_lists

  • create_task

  • get_configs

  • start_task

14.3.2.4.2 Verwendete Platzhalter

Die folgenden Platzhalter werden verwendet:

  • <USER_NAME>: Benutzername des Web-/GMP-Benutzers.

  • <PASSWORD>: Passwort des Web-/GMP-Benutzers.

  • <APPLIANCE_IP>: IP-Adresse der Appliance, auf die zugegriffen wird.

  • <TARGET_IP>: IP-Adresse des Scanziels.

  • <PORT_LIST_ID>: ID der verwendeten Portliste. Alle verfügbaren Portlisten können durch Ausführen des folgenden Befehls abgerufen werden:

    >>> res=gmp.get_port_lists()
    >>> for i, portlist in enumerate(res.xpath('port_list')):
    ...     id = portlist.xpath('@id')[0]
    ...     name = portlist.xpath('name/text()')[0]
    ...     print('\n({0}) {1}: ({2})'.format(i, name, id))
    ...
    
  • <SCAN_CONFIG_ID>: ID der verwendeten Scan-Konfiguration. Alle verfügbaren Scan-Konfigurationen können durch Ausführen des folgenden Befehls abgerufen werden:

    >>> res=gmp.get_scan_configs()
    >>> for i, scanconfig in enumerate(res.xpath('scan_config')):
    ...     id = scanconfig.xpath('@id')[0]
    ...     name = scanconfig.xpath('name/text()')[0]
    ...     print('\n({0}) {1}: ({2})'.format(i, name, id))
    ...
    
14.3.2.4.3 Schritt-für-Schritt-Anleitung

Die Aufgabe kann wie folgt erstellt und gestartet werden:

  1. Python-Shell öffnen:

$ gvm-pyshell --gmp-username <USER_NAME> --gmp-password <PASSWORD> ssh --hostname <APPLIANCE_IP>

→ Die Python-Shell wird geöffnet:

GVM Interactive Console 25.4.3 API 26.8.0.Type "help" to get information about functionality.
>>>
  1. Das Scanziel erstellen:

>>> res=gmp.create_target("Suspect Host", hosts=['<TARGET_IP>'], port_list_id="<PORT_LIST_ID>")
  1. Variable target_id als die ID des erstellten Ziels festlegen:

>>> target_id = res.xpath('@id')[0]
  1. Die Aufgabe erstellen:

>>> res=gmp.create_task("Scan Suspect Host", config_id="<SCAN_CONFIG_ID>", scanner_id="08b69003-5fc2-4037-a479-93b440211c73", target_id=target_id)

Bemerkung

Alle verfügbaren Scanner können mithilfe des Befehls get_scanners angezeigt werden. Falls nur die integrierten Scanner genutzt werden, sind die folgenden IDs fest codiert:

  • OpenVAS Default: 08b69003-5fc2-4037-a479-93b440211c73

  • CVE-Scanner: 6acd0832-df90-11e4-b9d5-28d24461215b

  1. Variable task_id als die ID der erstellten Aufgabe festlegen:

>>> task_id = res.xpath('@id')[0]
  1. Die Aufgabe starten:

>>> gmp.start_task(task_id)

→ Die Aufgabe wird ausgeführt.

14.3.2.4.4 Ein Skript benutzen

Alle Befehle können in ein Python-Skript eingefügt werden, das von der Python-Shell aufgerufen werden kann.

len_args = len(args.script) - 1
if len_args != 2:
    message = """
    This script creates a new task with a specific host.
    It needs two parameters after the script name.
    The first one is the name of the target and the second
    one is the host to be scanned.

    Example:
        $ gvm-script --gmp-username <USER_NAME> --gmp-password <PASSWORD> ssh --hostname <APPLIANCE_IP> <SCRIPT_NAME> "Suspect Host" 127.0.0.1
    """
    print(message)
    quit()

target = args.script[1]
host = [args.script[2]]
task = target + " Task"

# All IANA assigned TCP
myportlist_id = "33d0cd82-57c6-11e1-8ed1-406186ea4fc5"

# Full and Fast
myconfig_id = "daba56c8-73ec-11df-a475-002264764cea"

# OpenVAS Scanner
myscanner_id = "08b69003-5fc2-4037-a479-93b440211c73"

res=gmp.create_target(target, hosts=host, port_list_id=myportlist_id)
mytarget_id = res.xpath('@id')[0]

res=gmp.create_task(name=task, config_id=myconfig_id, scanner_id=myscanner_id, target_id=mytarget_id)
mytask_id = res.xpath('@id')[0]

gmp.start_task(mytask_id)

Das Skript kann über den Befehl gvm-script ausgeführt werden. Es benötigt zwei Argumente: einen Namen für das Ziel und den Host, der gescannt werden soll.

Beispiel:

gvm-script --gmp-username <USER_NAME> --gmp-password <PASSWORD> ssh --hostname <APPLIANCE_IP> <SCRIPT_NAME> "Suspect Host" 127.0.0.1

14.3.3 Beispielskripte

Die gvm-tools werden mit einer Sammlung von Beispielskripten geliefert, die verschiedene experimentelle Funktionen bieten und als Ausgangspunkt für die Entwicklung benutzerdefinierter Skripte dienen.

Aktuell sind die folgenden Skripte für die gvm-tools verfügbar: https://github.com/greenbone/gvm-tools/tree/main/scripts

Die Skripte können über den Befehl gvm-script ausgeführt werden.

14.4 Statuscodes

GMP nutzt Statuscodes, die HTTP-Statuscodes ähnlich sind. Die folgenden Codes werden genutzt:

2xx:

Das Kommando wurde erfolgreich übertragen, verstanden und akzeptiert.

200: OK
201: Resource created
202: Request submitted
4xx:

Es liegt ein Benutzerfehler vor.

400: Syntax-Fehler

Dies beinhaltet verschiedene Syntaxfehler. Oft fehlen Elemente oder Attribute im GMP-Befehl. Der Statustext zeigt zusätzliche Informationen.

Aktuell wird dieser Statuscode auch für fehlende oder falsche Authentifizierungen genutzt.

401: Authenticate First

Dieser Fehlercode wird für eine fehlende oder falsche Authentifizierung genutzt. Aktuell wird noch der Wert 400 genutzt.

403: Access to resource forbidden

Dieser Fehlercode wird genutzt, wenn nicht genügend Berechtigungen vorhanden sind. Oft wird stattdessen 400: Permission denied angezeigt.

404: Resource missing

Die Ressource konnte nicht gefunden werden. Die Ressourcen-ID ist leer oder falsch.

409: Resource busy

Dieser Fehlercode tritt beispielsweise dann auf, wenn die Synchronisierung des Feeds gestartet wird, während sie bereits läuft.

5xx:

Es liegt ein Serverfehler vor.

500: Internal Error

Dies kann durch Einträge, die die interne Puffergröße übersteigen, ausgelöst werden.

503: Scanner loading NVTs

Der Scanner lädt gerade VTs aus seinem Speicher. Die Anfrage sollte zu einem späteren Zeitpunkt noch einmal gestellt werden.

503: Service temporarily down

Möglicherweise läuft der Scanner-Daemon nicht. Oft wird dieses Problem durch abgelaufene Zertifikate hervorgerufen.

503: Service unavailable

Der GMP-Befehl ist auf der Appliance gesperrt.