Test für offenen Port 4711 in Greenbone/OpenVAS: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| (4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
| − | = | + | = Open Port 4711 Detection (NASL-VT) = |
| − | |||
| − | |||
| − | |||
| − | + | Diese VT prüft, ob TCP-Port 4711 auf einem Ziel offen ist, und meldet das im Report. | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | == Das Skript == | |
| − | < | + | |
| − | # Port 4711 | + | ;Skript anlegen |
| − | if (description) { | + | *vi check_port_4711.nasl |
| − | script_oid("1.3.6.1.4.1.25623.1. | + | <pre> |
| − | script_version(" | + | # check_port_4711.nasl |
| − | script_tag(name:"creation_date", value:" | + | # Erkennt, ob TCP-Port 4711 offen ist |
| − | script_name( | + | |
| − | script_family( | + | if(description) |
| − | script_tag(name:" | + | { |
| − | script_tag(name:" | + | # Eigene Arc - NICHT .1.0. (gehört Greenbone). Nur lokal eindeutig. |
| − | + | script_oid("1.3.6.1.4.1.25623.1.7.4711001"); | |
| + | script_version("2026-06-24T00:00:00+0000"); | ||
| + | script_tag(name:"creation_date", value:"2026-06-24 10:00:00 +0000 (Tue, 24 Jun 2026)"); | ||
| + | script_tag(name:"last_modification", value:"2026-06-24 10:00:00 +0000 (Tue, 24 Jun 2026)"); | ||
| + | script_name("Open Port 4711 Detection"); | ||
| + | script_category(ACT_GATHER_INFO); | ||
| + | script_family("Service detection"); | ||
| + | script_copyright("Copyright (C) 2026 Thomas / Xinux"); | ||
| + | |||
| + | script_tag(name:"cvss_base", value:"0.0"); | ||
| + | script_tag(name:"qod_type", value:"remote_active"); | ||
| + | script_tag(name:"summary", value:"Prüft, ob TCP-Port 4711 offen ist."); | ||
| + | script_tag(name:"solution", value:"Port 4711 schließen oder per Firewall | ||
| + | einschränken, falls nicht benötigt."); | ||
| + | script_tag(name:"solution_type", value:"Mitigation"); | ||
| + | |||
| + | script_require_ports(4711); | ||
exit(0); | exit(0); | ||
} | } | ||
| − | |||
port = 4711; | port = 4711; | ||
| − | if (get_port_state(port)) | + | if(!get_port_state(port)) |
| − | + | exit(0); | |
| − | + | ||
| − | + | log_message(port:port, data:"TCP-Port 4711 ist offen.", proto:"tcp"); | |
| − | + | exit(0); | |
| − | + | </pre> | |
| − | + | ||
| − | </ | + | == Syntax prüfen == |
| + | |||
| + | ;Vor dem Deployen linten: | ||
| + | *openvas-nasl-lint check_port_4711.nasl | ||
| + | |||
| + | == Deployment ins Feed == | ||
| + | |||
| + | ;Skript ablegen (lesbar für den Scanner-User) | ||
| + | *sudo install -d -o _gvm -g _gvm -m 0755 /var/lib/openvas/plugins/custom | ||
| + | *sudo install -o _gvm -g _gvm -m 0644 check_port_4711.nasl /var/lib/openvas/plugins/custom/check_port_4711.nasl | ||
| + | ;NVTI-Cache neu aufbauen | ||
| + | *sudo runuser -u _gvm -- openvas --update-vt-info | ||
| + | ;Scanner neu laden | ||
| + | *sudo systemctl restart ospd-openvas | ||
| + | |||
| + | Pfad/Username ggf. an die Distro anpassen (<code>plugins_folder</code> in | ||
| + | <code>/etc/openvas/openvas.conf</code> prüfen). | ||
| + | |||
| + | == Scan konfigurieren == | ||
| + | |||
| + | # '''Configuration → Port Lists''' → sicherstellen, dass 4711 im Portbereich liegt | ||
| + | #: (eigene Portliste mit <code>T:4711</code> oder ein Bereich, der 4711 enthält). | ||
| + | # '''Scans → Tasks''' → Task mit Ziel-IP und dieser Portliste anlegen. | ||
| + | # Scan starten, Report unter '''Scans → Reports''' prüfen. | ||
| + | |||
| + | Ohne 4711 in der Portliste wird der Port nie gescannt und <code>script_require_ports(4711)</code> | ||
| + | plant die VT nicht ein – der häufigste „läuft nicht"-Grund. | ||
| + | |||
| + | == Verifikation == | ||
| − | + | ;Erst von Hand prüfen, ob der Port offen ist: | |
| − | < | + | *nmap -p 4711 <ziel-ip> |
| − | + | ;VT eingelesen? SecInfo → NVTs nach Name oder OID suchen. | |
| − | |||
| − | |||
| − | == | + | == Hinweis: Log-Level im Report == |
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | Der Treffer kommt über <code>log_message</code> und erscheint mit Severity '''Log (0.0)'''. | |
| − | + | Da die Standard-Reportansicht Log-Meldungen oft ausblendet, im Report-Filter die Stufe | |
| − | + | '''Log''' einschalten (z.B. <code>levels=hmlg</code>), sonst wirkt es, als sei nichts gefunden. | |
| − | |||
| − | |||
| − | + | == Soll der Port laut Vorgabe verboten sein == | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | Dann wird aus der Info ein Finding: <code>log_message</code> durch <code>security_message</code> | |
| − | + | ersetzen und einen begründbaren <code>cvss_base</code> setzen (etwa 2.0–4.0 für einen | |
| − | + | unerwarteten offenen Port): | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | <pre> | |
| − | + | security_message(port:port, | |
| − | + | data:"TCP-Port 4711 ist offen, entgegen der Vorgabe.", | |
| − | + | proto:"tcp"); | |
| − | </ | + | </pre> |
| + | </pre> | ||
Aktuelle Version vom 24. Juni 2026, 04:57 Uhr
Open Port 4711 Detection (NASL-VT)
Diese VT prüft, ob TCP-Port 4711 auf einem Ziel offen ist, und meldet das im Report.
Das Skript
- Skript anlegen
- vi check_port_4711.nasl
# check_port_4711.nasl
# Erkennt, ob TCP-Port 4711 offen ist
if(description)
{
# Eigene Arc - NICHT .1.0. (gehört Greenbone). Nur lokal eindeutig.
script_oid("1.3.6.1.4.1.25623.1.7.4711001");
script_version("2026-06-24T00:00:00+0000");
script_tag(name:"creation_date", value:"2026-06-24 10:00:00 +0000 (Tue, 24 Jun 2026)");
script_tag(name:"last_modification", value:"2026-06-24 10:00:00 +0000 (Tue, 24 Jun 2026)");
script_name("Open Port 4711 Detection");
script_category(ACT_GATHER_INFO);
script_family("Service detection");
script_copyright("Copyright (C) 2026 Thomas / Xinux");
script_tag(name:"cvss_base", value:"0.0");
script_tag(name:"qod_type", value:"remote_active");
script_tag(name:"summary", value:"Prüft, ob TCP-Port 4711 offen ist.");
script_tag(name:"solution", value:"Port 4711 schließen oder per Firewall
einschränken, falls nicht benötigt.");
script_tag(name:"solution_type", value:"Mitigation");
script_require_ports(4711);
exit(0);
}
port = 4711;
if(!get_port_state(port))
exit(0);
log_message(port:port, data:"TCP-Port 4711 ist offen.", proto:"tcp");
exit(0);
Syntax prüfen
- Vor dem Deployen linten
- openvas-nasl-lint check_port_4711.nasl
Deployment ins Feed
- Skript ablegen (lesbar für den Scanner-User)
- sudo install -d -o _gvm -g _gvm -m 0755 /var/lib/openvas/plugins/custom
- sudo install -o _gvm -g _gvm -m 0644 check_port_4711.nasl /var/lib/openvas/plugins/custom/check_port_4711.nasl
- NVTI-Cache neu aufbauen
- sudo runuser -u _gvm -- openvas --update-vt-info
- Scanner neu laden
- sudo systemctl restart ospd-openvas
Pfad/Username ggf. an die Distro anpassen (plugins_folder in
/etc/openvas/openvas.conf prüfen).
Scan konfigurieren
- Configuration → Port Lists → sicherstellen, dass 4711 im Portbereich liegt
- (eigene Portliste mit
T:4711oder ein Bereich, der 4711 enthält).
- (eigene Portliste mit
- Scans → Tasks → Task mit Ziel-IP und dieser Portliste anlegen.
- Scan starten, Report unter Scans → Reports prüfen.
Ohne 4711 in der Portliste wird der Port nie gescannt und script_require_ports(4711)
plant die VT nicht ein – der häufigste „läuft nicht"-Grund.
Verifikation
- Erst von Hand prüfen, ob der Port offen ist
- nmap -p 4711 <ziel-ip>
- VT eingelesen? SecInfo → NVTs nach Name oder OID suchen.
Hinweis: Log-Level im Report
Der Treffer kommt über log_message und erscheint mit Severity Log (0.0).
Da die Standard-Reportansicht Log-Meldungen oft ausblendet, im Report-Filter die Stufe
Log einschalten (z.B. levels=hmlg), sonst wirkt es, als sei nichts gefunden.
Soll der Port laut Vorgabe verboten sein
Dann wird aus der Info ein Finding: log_message durch security_message
ersetzen und einen begründbaren cvss_base setzen (etwa 2.0–4.0 für einen
unerwarteten offenen Port):
security_message(port:port,
data:"TCP-Port 4711 ist offen, entgegen der Vorgabe.",
proto:"tcp");