Fenster-Scanning mit Nmap durchführen

NmapNmapBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Labyrinth lernst du, wie du mit Nmap Fensterabfragen durchführen kannst, eine wertvolle Fähigkeit in der Netzwerksicherheit. Das Lab beginnt mit der Ausführung einer grundlegenden Fensterabfrage an eine Ziel-IP-Adresse und geht dann zu einer Abfrage eines bestimmten Portbereichs über. Du wirst auch die Ausführlichkeit der Abfrage erhöhen, die Ergebnisse in eine Datei speichern, die Abfrage im Xfce-Terminal analysieren und sie mit einer ACK-Abfrage vergleichen. Diese praktische Erfahrung wird dein Verständnis der Fensterabfragefähigkeiten von Nmap verbessern.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL nmap(("Nmap")) -.-> nmap/NmapGroup(["Nmap"]) nmap/NmapGroup -.-> nmap/output_formats("Output Formats") nmap/NmapGroup -.-> nmap/save_output("Save Output to File") nmap/NmapGroup -.-> nmap/port_scanning("Port Scanning Methods") nmap/NmapGroup -.-> nmap/scan_types("Scan Types and Techniques") nmap/NmapGroup -.-> nmap/target_specification("Target Specification") nmap/NmapGroup -.-> nmap/verbosity("Verbosity Levels") nmap/NmapGroup -.-> nmap/service_detection("Service Detection") subgraph Lab Skills nmap/output_formats -.-> lab-547107{{"Fenster-Scanning mit Nmap durchführen"}} nmap/save_output -.-> lab-547107{{"Fenster-Scanning mit Nmap durchführen"}} nmap/port_scanning -.-> lab-547107{{"Fenster-Scanning mit Nmap durchführen"}} nmap/scan_types -.-> lab-547107{{"Fenster-Scanning mit Nmap durchführen"}} nmap/target_specification -.-> lab-547107{{"Fenster-Scanning mit Nmap durchführen"}} nmap/verbosity -.-> lab-547107{{"Fenster-Scanning mit Nmap durchführen"}} nmap/service_detection -.-> lab-547107{{"Fenster-Scanning mit Nmap durchführen"}} end

Führe eine Fensterabfrage mit nmap -sW 192.168.1.1 durch

In diesem Schritt werden wir eine Fensterabfrage mit Nmap durchführen. Eine Fensterabfrage ist eine Art TCP-Abfrage, die manchmal mehr Informationen über offene und gefilterte Ports enthüllen kann als andere Abfragetypen. Sie ist besonders nützlich, wenn Firewalls vorhanden sind, die andere Abfragetypen blockieren könnten.

Bevor wir beginnen, besprechen wir kurz, was eine Fensterabfrage macht. Die Fensterabfrage nutzt eine Besonderheit in einigen TCP-Implementierungen. Sie sendet ein TCP-Paket mit dem SYN-Flag an den Zielhost. Wenn der Port geöffnet ist, antwortet der Zielhost mit einem SYN/ACK-Paket. Nmap prüft dann die TCP-Fenstergröße der Antwort. Basierend auf dieser Fenstergröße kann Nmap bestimmen, ob der Port geöffnet oder gefiltert ist.

Lassen Sie uns jetzt die Fensterabfrage ausführen. Wir verwenden den folgenden Befehl:

nmap -sW 192.168.1.1

Ersetzen Sie 192.168.1.1 durch die tatsächliche IP-Adresse des Ziels, das Sie abfragen möchten. Wenn Sie nicht sicher sind, welche IP-Adresse Sie verwenden sollen, können Sie die Loopback-Adresse 127.0.0.1 verwenden, die sich auf Ihren eigenen Computer bezieht.

Öffnen Sie Ihren Xfce-Terminal. Sie können das Terminal-Symbol auf dem Desktop oder im Anwendungsmenü finden.

Geben Sie im Terminal folgenden Befehl ein und drücken Sie die Eingabetaste:

nmap -sW 127.0.0.1

Dieser Befehl 告诉 Nmap, eine Fensterabfrage (-sW) auf die Loopback-Adresse (127.0.0.1) durchzuführen.

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:00 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000072s latency).
Other addresses for localhost (alias(es)): localhost

PORT     STATE  SERVICE
135/tcp  closed msrpc
139/tcp  closed netbios-ssn
445/tcp  closed microsoft-ds

Nmap done: 1 IP address (1 host up) scanned in 2.50 seconds

Die Ausgabe zeigt die offenen, geschlossenen oder gefilterten Ports auf dem Zielcomputer. In diesem Beispiel sind die Ports 135, 139 und 445 geschlossen. Die spezifischen Ports und ihre Zustände variieren je nach Zielsystem.

Scanne einen Portbereich mit nmap -sW -p 1-100 127.0.0.1

In diesem Schritt erweitern wir die Fensterabfrage, indem wir einen Portbereich angeben. Dadurch können wir unsere Abfrage auf einen bestimmten Satz von Ports konzentrieren, was hilfreich sein kann, um Dienste auf einem Zielcomputer zu identifizieren.

Standardmäßig scannt Nmap einen vordefinierten Satz von häufig verwendeten Ports. Sie können jedoch die Abfrage anpassen, um bestimmte Ports oder einen Portbereich als Ziel zu verwenden, indem Sie die Option -p verwenden. Dies ist besonders hilfreich, wenn Sie überprüfen möchten, ob ein bestimmter Dienst auf einem nicht standardmäßigen Port läuft oder wenn Sie die Abfragezeit durch die Konzentration auf einen kleineren Satz von Ports reduzieren möchten.

Lassen Sie uns jetzt die Fensterabfrage mit einem Portbereich ausführen. Wir verwenden den folgenden Befehl:

nmap -sW -p 1-100 127.0.0.1

Dieser Befehl 告诉 Nmap, eine Fensterabfrage (-sW) auf den Ports 1 bis 100 (-p 1-100) der Loopback-Adresse (127.0.0.1) durchzuführen.

Öffnen Sie Ihren Xfce-Terminal.

Geben Sie im Terminal folgenden Befehl ein und drücken Sie die Eingabetaste:

nmap -sW -p 1-100 127.0.0.1

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:05 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE  SERVICE
22/tcp  closed ssh
25/tcp  closed smtp
80/tcp  closed http

Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

Die Ausgabe zeigt die offenen, geschlossenen oder gefilterten Ports im angegebenen Bereich (1-100) auf dem Zielcomputer. In diesem Beispiel sind die Ports 22, 25 und 80 geschlossen. Die spezifischen Ports und ihre Zustände variieren je nach Zielsystem.

Füge die Ausführlichkeit mit nmap -v -sW 192.168.1.1 hinzu

In diesem Schritt werden wir der Fensterabfrage Ausführlichkeit hinzufügen. Die Ausführlichkeit liefert detailliertere Informationen über den Abfrageprozess, was für das Problembehandlung oder das Verständnis der Ergebnisse hilfreich sein kann.

Die Ausführlichkeitsoption von Nmap (-v) erhöht die Menge an angezeigten Informationen während der Abfrage. Dies kann Details über die Abfragephasen, die gesendeten und empfangenen Pakete sowie die Gründe umfassen, warum Nmap bestimmte Entscheidungen trifft. Die Verwendung von Ausführlichkeit kann besonders nützlich sein, wenn Sie versuchen, Netzwerkprobleme zu diagnostizieren oder wenn Sie verstehen möchten, wie Nmap die Antworten des Ziels interpretiert.

Lassen Sie uns jetzt die Fensterabfrage mit Ausführlichkeit ausführen. Wir verwenden den folgenden Befehl:

nmap -v -sW 192.168.1.1

Ersetzen Sie 192.168.1.1 durch die tatsächliche IP-Adresse des Ziels, das Sie abfragen möchten. Wenn Sie nicht sicher sind, welche IP-Adresse Sie verwenden sollen, können Sie die Loopback-Adresse 127.0.0.1 verwenden, die sich auf Ihren eigenen Computer bezieht.

Öffnen Sie Ihren Xfce-Terminal.

Geben Sie im Terminal folgenden Befehl ein und drücken Sie die Eingabetaste:

nmap -v -sW 127.0.0.1

Dieser Befehl 告诉 Nmap, eine Fensterabfrage (-sW) auf die Loopback-Adresse (127.0.0.1) durchzuführen und die Ausführlichkeitsstufe zu erhöhen (-v).

Sie sollten eine Ausgabe ähnlich der folgenden sehen (die genaue Ausgabe wird variieren):

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:10 UTC
NSE: Loaded 0 scripts for scanning.
Initiating Window Scan at 10:10
Scanning localhost (127.0.0.1) [1000 ports]
Discovered open port 22/tcp on 127.0.0.1
Discovered open port 80/tcp on 127.0.0.1
Completed Window Scan at 10:10, 0.12s elapsed (1000 total ports)
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000039s latency).
Other addresses for localhost (alias(es)): localhost

PORT   STATE  SERVICE
22/tcp open   ssh
80/tcp open   http

Read data files from: /usr/bin/../share/nmap
Nmap done: 1 IP address (1 host up) scanned in 0.19 seconds

Die Ausgabe enthält jetzt mehr Informationen über den Abfrageprozess, wie die Start- und Endzeiten, die Anzahl der abgefragten Ports und alle geladenen Skripte. Die spezifischen Details variieren je nach Zielsystem und der Nmap-Konfiguration.

Speichere die Fensterabfrage mit nmap -sW -oN window.txt 127.0.0.1

In diesem Schritt werden wir die Ergebnisse der Fensterabfrage in eine Datei speichern. Dies ist nützlich für eine spätere Analyse oder zum Teilen der Ergebnisse mit anderen.

Nmap bietet mehrere Optionen zum Speichern von Abfrageergebnissen in verschiedenen Formaten. Die Option -oN speichert die Ergebnisse im "normalen", menschenlesbaren Format. Dieses Format ist leicht zu lesen und zu verstehen, eignet sich jedoch möglicherweise nicht für die automatisierte Analyse. Andere Optionen umfassen -oX für das XML-Format und -oS für das Skript-Kiddie-Format.

Lassen Sie uns jetzt die Fensterabfrage ausführen und die Ergebnisse in eine Datei namens window.txt im Verzeichnis ~/project speichern. Wir verwenden den folgenden Befehl:

nmap -sW -oN window.txt 127.0.0.1

Dieser Befehl 告诉 Nmap, eine Fensterabfrage (-sW) auf die Loopback-Adresse (127.0.0.1) durchzuführen und die Ergebnisse im normalen Format (-oN) in die Datei window.txt zu speichern.

Öffnen Sie Ihren Xfce-Terminal.

Geben Sie im Terminal folgenden Befehl ein und drücken Sie die Eingabetaste:

nmap -sW -oN window.txt 127.0.0.1

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:15 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE  SERVICE
22/tcp  closed ssh
25/tcp  closed smtp
80/tcp  closed http

Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

Die Abfrageergebnisse werden jetzt in der Datei window.txt im Verzeichnis ~/project gespeichert.

Um zu überprüfen, dass die Datei erstellt wurde und die Abfrageergebnisse enthält, können Sie den Befehl cat verwenden, um den Inhalt der Datei anzuzeigen:

cat window.txt

Sie sollten im Output den Nmap-Abfragebericht sehen.

## Nmap 7.80 scan initiated Fri Oct 27 10:15:00 2023
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE  SERVICE
22/tcp  closed ssh
25/tcp  closed smtp
80/tcp  closed http
## Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

Analysiere die Fensterabfrage im Xfce-Terminal

In diesem Schritt werden wir die Ergebnisse der Fensterabfrage analysieren, die wir im vorherigen Schritt in die Datei window.txt gespeichert haben. Das Verständnis der Ausgabe von Nmap-Abfragen ist entscheidend für die Identifizierung von potenziellen Schwachstellen und Sicherheitsrisiken.

Die Datei window.txt enthält einen menschenlesbaren Bericht über die Abfrageergebnisse. Der Bericht umfasst Informationen über den Zielhost, die abgefragten Ports und den Status jedes Ports.

Öffnen Sie Ihren Xfce-Terminal.

Zunächst lassen Sie uns den Inhalt der Datei window.txt mit dem Befehl cat anzeigen:

cat window.txt

Sie sollten eine Ausgabe ähnlich der folgenden sehen (die genaue Ausgabe hängt vom Zielsystem und den verwendeten Abfrageoptionen ab):

## Nmap 7.80 scan initiated Fri Oct 27 10:15:00 2023
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE  SERVICE
22/tcp  closed ssh
25/tcp  closed smtp
80/tcp  closed http
## Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

Zerlegen wir die wichtigsten Teile dieser Ausgabe:

  • Nmap scan report for localhost (127.0.0.1): Diese Zeile zeigt an, dass die Abfrage auf die Loopback-Adresse 127.0.0.1 durchgeführt wurde.
  • Host is up: Diese Zeile bestätigt, dass der Zielhost erreichbar ist.
  • PORT STATE SERVICE: Dieser Abschnitt listet die abgefragten Ports und ihre entsprechenden Zustände und Dienste auf.
  • 22/tcp closed ssh: Diese Zeile zeigt an, dass Port 22 (SSH) geschlossen ist.
  • 25/tcp closed smtp: Diese Zeile zeigt an, dass Port 25 (SMTP) geschlossen ist.
  • 80/tcp closed http: Diese Zeile zeigt an, dass Port 80 (HTTP) geschlossen ist.

Die Spalte STATE ist besonders wichtig. Bei einer Fensterabfrage sind die möglichen Zustände typischerweise open, closed oder filtered.

  • open: Zeigt an, dass der Port auf Verbindungen wartet.
  • closed: Zeigt an, dass der Port keine Verbindungen empfängt, aber der Host erreichbar ist.
  • filtered: Zeigt an, dass Nmap nicht bestimmen kann, ob der Port geöffnet oder geschlossen ist, da Netzwerkfilter Nmap daran hindern, den Port zu erreichen.

In diesem Beispiel werden alle abgefragten Ports als closed gemeldet. Dies bedeutet, dass der Zielhost erreichbar ist, aber keine Verbindungen auf diesen Ports akzeptiert.

Sie können diese Informationen verwenden, um potenzielle Schwachstellen oder Sicherheitsrisiken zu identifizieren. Beispielsweise kann ein unerwarteter open-Status eines Ports darauf hindeuten, dass ein gefährdetes Dienst auf diesem Port läuft.

Lassen Sie uns jetzt den Befehl grep verwenden, um die geöffneten Ports in der Datei window.txt zu finden.

grep "open" window.txt

Wenn es keine geöffneten Ports gibt, wird der Befehl keine Ausgabe zurückgeben. In unserem Beispiel ist die Ausgabe leer.

Vergleiche mit einer ACK-Abfrage im Xfce-Terminal

In diesem Schritt werden wir eine ACK-Abfrage durchführen und deren Ergebnisse mit der zuvor durchgeführten Fensterabfrage vergleichen. Dieser Vergleich wird uns helfen, die Unterschiede zwischen diesen beiden Abfragetypen zu verstehen und wie sie verwendet werden können, um verschiedene Arten von Informationen über ein Zielsystem zu sammeln.

Eine ACK-Abfrage (-sA) sendet TCP-ACK-Pakete an den Zielhost. Im Gegensatz zu einer SYN-Abfrage versucht eine ACK-Abfrage keine Verbindung herzustellen. Stattdessen wird sie verwendet, um zu bestimmen, ob ein Firewall vorhanden ist und wie dieser unbeabsichtigte ACK-Pakete behandelt.

Wenn eine Firewall vorhanden ist und so konfiguriert ist, unbeabsichtigte ACK-Pakete zu blockieren, wird die ACK-Abfrage alle Ports als filtered melden. Wenn keine Firewall vorhanden ist oder so konfiguriert ist, unbeabsichtigte ACK-Pakete zuzulassen, wird die ACK-Abfrage Ports als entweder unfiltered oder closed melden.

Lassen Sie uns jetzt eine ACK-Abfrage auf die Loopback-Adresse (127.0.0.1) durchführen und die Ergebnisse in eine Datei namens ack.txt speichern.

Öffnen Sie Ihren Xfce-Terminal.

Geben Sie im Terminal folgenden Befehl ein und drücken Sie die Eingabetaste:

nmap -sA -oN ack.txt 127.0.0.1

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:20 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE      SERVICE
22/tcp  unfiltered ssh
25/tcp  unfiltered smtp
80/tcp  unfiltered http

Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

Lassen Sie uns jetzt die Ergebnisse der ACK-Abfrage mit der Fensterabfrage vergleichen.

Denken Sie sich die Ausgabe der Fensterabfrage (aus window.txt) zurück:

## Nmap 7.80 scan initiated Fri Oct 27 10:15:00 2023
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE  SERVICE
22/tcp  closed ssh
25/tcp  closed smtp
80/tcp  closed http
## Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

Bei der Fensterabfrage wurden die Ports als closed gemeldet. Bei der ACK-Abfrage werden die Ports als unfiltered gemeldet. Dieser Unterschied liegt daran, wie diese beiden Abfragetypen funktionieren. Die Fensterabfrage versucht eine Verbindung herzustellen, während die ACK-Abfrage nur ACK-Pakete sendet.

Der Status unfiltered bei der ACK-Abfrage bedeutet, dass Nmap nicht bestimmen kann, ob der Port geöffnet oder geschlossen ist, weil die ACK-Pakete nicht gefiltert werden. Dies könnte darauf hindeuten, dass keine Firewall vorhanden ist oder dass die Firewall so konfiguriert ist, unbeabsichtigte ACK-Pakete zuzulassen.

Sie können auch den Befehl cat verwenden, um den Inhalt der Datei ack.txt anzuzeigen:

cat ack.txt

Sie sollten im Output den Nmap-Abfragebericht sehen.

## Nmap 7.80 scan initiated Fri Oct 27 10:20:00 2023
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE      SERVICE
22/tcp  unfiltered ssh
25/tcp  unfiltered smtp
80/tcp  unfiltered http

## Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

Zusammenfassung

In diesem Lab lernen die Teilnehmer, wie sie in Nmap eine Fensterabfrage durchführen. Sie beginnen mit einem einfachen Fenster-Scan, indem sie den Befehl nmap -sW gefolgt von einer IP-Adresse ausführen und verstehen, wie diese TCP-Implementierungs-Anomalien ausnutzt, um die Portzustände zu erkennen. Anschließend scannen sie einen bestimmten Portbereich mit nmap -sW -p 1-100, fügen der Abfrage eine detaillierte Ausgabe hinzu, indem sie -v verwenden, und speichern die Abfrageergebnisse in einer Datei mit -oN. Schließlich analysieren sie die Fensterabfrage und vergleichen sie mit einer ACK-Abfrage im Xfce-Terminal.