Host-Entdeckung mit Nmap durchführen

NmapBeginner
Jetzt üben

Einführung

In diesem Lab soll gelernt werden, wie Host-Entdeckung mit Nmap durchgeführt wird. Das Lab behandelt verschiedene Nmap-Befehle zur Host-Entdeckung, einschließlich eines Ping-Scans im Netzwerk 192.168.1.0/24 mit der Option -sn, um das Portscanning zu deaktivieren, die Verwendung von TCP SYN-Ping und ACK-Ping sowie die Kombination verschiedener Pings. Es zeigt auch, wie Live-Hosts im Xfce-Terminal angezeigt werden. Darüber hinaus wird demonstriert, wie ein Ping-Scan auf der lokalen Adresse ausgeführt wird, während das Portscanning deaktiviert ist.

Ping-Scan mit Nmap durchführen

In diesem Schritt führen Sie einen grundlegenden Ping-Scan mit Nmap durch, um aktive Hosts in einem Netzwerk zu identifizieren. Ein Ping-Scan, auch Host-Entdeckung genannt, ist eine grundlegende Technik, um festzustellen, welche Hosts online sind. Nmap sendet verschiedene Sondierungen an jede IP-Adresse im angegebenen Bereich und analysiert die Antworten, um aktive Hosts zu identifizieren. Die Option -sn in Nmap deaktiviert das Portscanning, wodurch der Scan schneller und weniger aufdringlich als ein vollständiger Portscan ist.

192.168.1.0/24 ist eine CIDR-Notation, die ein Netzwerk darstellt. Die /24 gibt an, dass die ersten 24 Bits der IP-Adresse fest sind und das Netzwerk definieren, während die restlichen 8 Bits für Hostadressen innerhalb dieses Netzwerks verwendet werden. Dies entspricht einem Bereich von IP-Adressen von 192.168.1.1 bis 192.168.1.254.

Um einen Ping-Scan im Netzwerk 192.168.1.0/24 durchzuführen, öffnen Sie Ihr Terminal (falls noch nicht geöffnet) und führen Sie den folgenden Befehl aus:

sudo nmap -sn 192.168.1.0/24

Dieser Befehl weist Nmap an, einen Ping-Scan auf alle IP-Adressen innerhalb des Netzwerks 192.168.1.0/24 durchzuführen. Der Befehl sudo wird verwendet, da Nmap oft erhöhte Berechtigungen benötigt, um bestimmte Arten von Netzwerkpaketen zu senden.

In dieser Laboumgebung enthält das Netzwerk 192.168.1.0/24 keine aktiven Hosts, daher sehen Sie eine Ausgabe ähnlich dieser:

Starting Nmap 7.80 ( https://nmap.org ) at 2025-06-03 09:49 CST

Der Scan wird abgeschlossen, ohne Hostberichte anzuzeigen, was darauf hinweist, dass in diesem Netzwerkbereich keine Hosts auf die Ping-Sondierungen reagiert haben. In einem realen Szenario mit aktiven Hosts würden Sie eine Ausgabe wie diese sehen:

Starting Nmap 7.XX ( https://nmap.org ) at YYYY-MM-DD HH:MM ZZZ
Nmap-Scanbericht für 192.168.1.1
Host ist aktiv (0.000XXs Latenz).
Nmap-Scanbericht für 192.168.1.10
Host ist aktiv (0.002XXs Latenz).
Nmap abgeschlossen: 256 IP-Adressen (2 Hosts aktiv) in 2.XX Sekunden gescannt

Als Nächstes führen Sie einen Ping-Scan auf der lokalen Adresse (127.0.0.1) durch, während das Portscanning deaktiviert ist. Dies demonstriert die Verwendung der Option -sn speziell für die Host-Entdeckung, ohne einen vollständigen Portscan zu starten. Dies ist nützlich, wenn Sie nur überprüfen möchten, ob ein Host aktiv ist, und potenziell störende oder zeitaufwendige Portscans vermeiden möchten.

127.0.0.1 ist die Schleifenrückgabe-Adresse, auch bekannt als localhost. Sie verweist immer auf den aktuellen Computer. Das Pingen von localhost ist eine schnelle Möglichkeit, zu überprüfen, ob die Netzwerkschnittstelle korrekt funktioniert.

Um einen Ping-Scan auf localhost ohne Portscanning durchzuführen, führen Sie den folgenden Befehl in Ihrem Terminal aus:

sudo nmap -sn 127.0.0.1

Dieser Befehl weist Nmap an, einen Ping-Scan auf die Adresse 127.0.0.1 durchzuführen. Die Option -sn stellt sicher, dass Nmap nur die Host-Entdeckung durchführt und keine Portscans vornimmt.

Die Ausgabe zeigt an, ob der Host aktiv ist. Sie sollte ähnlich dieser aussehen:

Starting Nmap 7.80 ( https://nmap.org ) at 2025-06-03 09:49 CST
Nmap-Scanbericht für localhost (127.0.0.1)
Host ist aktiv.
Nmap abgeschlossen: 1 IP-Adresse (1 Host aktiv) in 0.00 Sekunden gescannt

Diese Ausgabe bestätigt, dass der localhost (127.0.0.1) aktiv ist. Nmap hat nur einen Ping-Scan durchgeführt, wie durch die Option -sn angegeben, und keine Portscans ausgeführt.

TCP SYN- und ACK-Ping-Scans durchführen

In diesem Schritt verwenden Sie Nmap, um TCP SYN- und ACK-Ping-Scans durchzuführen. Diese Techniken sind oft zuverlässiger als ICMP-Pings, da viele Firewalls ICMP-Verkehr blockieren, TCP-Verkehr jedoch zulassen.

Zunächst versuchen wir einen TCP SYN-Ping-Scan auf 192.168.1.1, um zu demonstrieren, was passiert, wenn ein Host nicht erreichbar ist. Ein TCP SYN-Ping sendet ein TCP SYN-Paket an den Zielhost. Wenn der Host aktiv ist und auf dem angegebenen Port (oder standardmäßig auf einem beliebigen Port) lauscht, antwortet er mit einem SYN/ACK-Paket. Nmap setzt die Verbindung dann durch Senden eines RST-Pakets zurück.

Die Option -PS in Nmap gibt an, dass ein TCP SYN-Ping verwendet werden soll. Standardmäßig sendet Nmap das SYN-Paket an Port 80.

Um einen TCP SYN-Ping-Scan auf 192.168.1.1 durchzuführen, führen Sie den folgenden Befehl in Ihrem Terminal aus:

sudo nmap -PS 192.168.1.1

Dieser Befehl weist Nmap an, ein TCP SYN-Paket an Port 80 des Hosts 192.168.1.1 zu senden. sudo ist erforderlich, da Nmap erhöhte Berechtigungen benötigt, um Roh-TCP-Pakete zu erstellen und zu senden.

Da 192.168.1.1 in dieser Laboumgebung nicht erreichbar ist, sehen Sie eine Ausgabe wie diese:

Starting Nmap 7.80 ( https://nmap.org ) at 2025-06-03 09:49 CST
Hinweis: Der Host scheint nicht erreichbar zu sein. Wenn er tatsächlich aktiv ist, aber unsere Ping-Sonden blockiert, versuchen Sie -Pn
Nmap abgeschlossen: 1 IP-Adresse (0 Hosts aktiv) in 2,10 Sekunden gescannt

Diese Ausgabe zeigt, dass Nmap 192.168.1.1 nicht erreichen konnte. Die Meldung schlägt vor, -Pn zu verwenden, wenn der Host aktiv ist, aber Ping-Sonden blockiert.

Führen wir nun einen TCP SYN-Ping-Scan auf localhost (127.0.0.1) durch, um zu sehen, wie es funktioniert, wenn der Host erreichbar ist:

sudo nmap -PS 127.0.0.1

Dies zeigt eine Ausgabe ähnlich dieser:

Starting Nmap 7.80 ( https://nmap.org ) at 2025-06-03 09:50 CST
Nmap-Scanbericht für localhost (127.0.0.1)
Host ist aktiv (0.0000070s Latenz).
Nicht angezeigt: 995 geschlossene Ports
PORT     STATE SERVICE
22/tcp   open  ssh
2121/tcp open  ccproxy-ftp
2222/tcp open  EtherNetIP-1
3001/tcp open  nessus
8080/tcp open  http-proxy

Nmap abgeschlossen: 1 IP-Adresse (1 Host aktiv) in 0,12 Sekunden gescannt

Diese Ausgabe zeigt, dass Nmap localhost erfolgreich als aktiv erkannt hat und auch einen Portscan durchgeführt hat, wobei die offenen Ports des Systems angezeigt werden.

Als Nächstes führen Sie einen ACK-Ping-Scan durch. Ein ACK-Ping sendet ein TCP ACK-Paket an den Zielhost. Im Gegensatz zum SYN-Ping, der versucht, eine Verbindung herzustellen, sendet der ACK-Ping ein Paket, das Teil einer bereits bestehenden Verbindung zu sein scheint. Firewalls haben oft Regeln, um eingehende ACK-Pakete anders zu behandeln als SYN-Pakete, was den ACK-Ping nützlich macht, um einige Firewall-Konfigurationen zu umgehen.

Die Option -PA in Nmap gibt an, dass ein TCP ACK-Ping verwendet werden soll. Standardmäßig sendet Nmap das ACK-Paket an Port 80.

Versuchen wir zunächst den ACK-Ping auf 192.168.1.1:

sudo nmap -PA 192.168.1.1

Wie erwartet zeigt dies, dass der Host nicht erreichbar ist:

Starting Nmap 7.80 ( https://nmap.org ) at 2025-06-03 09:50 CST
Hinweis: Der Host scheint nicht erreichbar zu sein. Wenn er tatsächlich aktiv ist, aber unsere Ping-Sonden blockiert, versuchen Sie -Pn
Nmap abgeschlossen: 1 IP-Adresse (0 Hosts aktiv) in 2,11 Sekunden gescannt

Führen wir nun einen TCP ACK-Ping-Scan auf localhost durch, um den erfolgreichen Fall zu sehen:

sudo nmap -PA 127.0.0.1

Dies erzeugt eine Ausgabe ähnlich dieser:

Starting Nmap 7.80 ( https://nmap.org ) at 2025-06-03 09:50 CST
Nmap-Scanbericht für localhost (127.0.0.1)
Host ist aktiv (0.0000040s Latenz).
Nicht angezeigt: 995 geschlossene Ports
PORT     STATE SERVICE
22/tcp   open  ssh
2121/tcp open  ccproxy-ftp
2222/tcp open  EtherNetIP-1
3001/tcp open  nessus
8080/tcp open  http-proxy

Nmap abgeschlossen: 1 IP-Adresse (1 Host aktiv) in 0,11 Sekunden gescannt

Diese Ausgabe zeigt, dass Nmap ein TCP ACK-Paket an localhost gesendet und eine Antwort erhalten hat, was darauf hinweist, dass der Host aktiv ist. Der Scan zeigt auch die offenen Ports des Systems an.

Kombinierte Ping-Scan-Techniken anwenden

In diesem Schritt lernen Sie, wie Sie TCP SYN- und ACK-Ping-Scans mit Nmap kombinieren, um aktive Hosts in einem Netzwerk zu entdecken. Die Kombination verschiedener Ping-Typen kann die Zuverlässigkeit der Host-Entdeckung erhöhen, da einige Hosts möglicherweise auf den einen Ping-Typ, aber nicht auf einen anderen reagieren, aufgrund von Firewall-Regeln oder Netzwerkkonfigurationen.

Durch die Verwendung der Optionen -PS und -PA sendet Nmap sowohl TCP SYN- als auch TCP ACK-Pakete an jeden Host im angegebenen Netzwerk. Dies erhöht die Wahrscheinlichkeit, aktive Hosts zu erkennen, insbesondere in Umgebungen mit restriktiven Firewalls.

Zuerst versuchen wir den kombinierten Scan im Netzwerk 192.168.1.0/24, um zu demonstrieren, was passiert, wenn keine Hosts vorhanden sind:

sudo nmap -PS -PA 192.168.1.0/24

Dieser Befehl weist Nmap an, sowohl TCP SYN- als auch TCP ACK-Pakete an Port 80 jedes Hosts im Netzwerk 192.168.1.0/24 zu senden. sudo ist erforderlich, da Nmap erhöhte Berechtigungen benötigt, um Roh-TCP-Pakete zu erstellen und zu senden.

Da in unserer Laboumgebung in diesem Netzwerkbereich keine aktiven Hosts vorhanden sind, sehen Sie eine Ausgabe wie diese:

Starting Nmap 7.80 ( https://nmap.org ) at 2025-06-03 09:51 CST

Der Scan wird abgeschlossen, ohne Hostberichte anzuzeigen, was darauf hinweist, dass in diesem Netzwerkbereich keine Hosts auf die SYN- oder ACK-Ping-Sonden reagiert haben.

In einem realen Szenario mit aktiven Hosts würde die Ausgabe ähnlich dieser aussehen:

Starting Nmap 7.XX ( https://nmap.org ) at YYYY-MM-DD HH:MM ZZZ
Nmap-Scanbericht für 192.168.1.1
Host ist aktiv (0.0010s Latenz).
Nmap-Scanbericht für 192.168.1.2
Host ist aktiv (0.0015s Latenz).
Nmap-Scanbericht für 192.168.1.10
Host ist aktiv (0.0012s Latenz).
Nmap abgeschlossen: 256 IP-Adressen (3 Hosts aktiv) in 2.XX Sekunden gescannt

Dies würde zeigen, dass Nmap das Netzwerk 192.168.1.0/24 gescannt und drei aktive Hosts gefunden hat, die auf die kombinierten Ping-Techniken reagiert haben.

Um die kombinierte Ping-Technik mit einem funktionierenden Beispiel zu demonstrieren, verwenden wir sie auf localhost:

sudo nmap -PS -PA 127.0.0.1

Dies erzeugt eine Ausgabe, die zeigt, dass localhost auf beide Ping-Typen antwortet:

Starting Nmap 7.80 ( https://nmap.org ) at 2025-06-03 09:51 CST
Nmap-Scanbericht für localhost (127.0.0.1)
Host ist aktiv (0.0000040s Latenz).
Nicht angezeigt: 995 geschlossene Ports
PORT     STATE SERVICE
22/tcp   open  ssh
2121/tcp open  ccproxy-ftp
2222/tcp open  EtherNetIP-1
3001/tcp open  nessus
8080/tcp open  http-proxy

Nmap abgeschlossen: 1 IP-Adresse (1 Host aktiv) in 0,11 Sekunden gescannt

Schließlich können Sie die ausgeführten Befehle im Terminal überprüfen, um die gelernten Techniken mit Nmap zu identifizieren. Das Terminal speichert eine Verlaufsliste der ausgeführten Befehle, was hilfreich sein kann, um Ihre Arbeit zu überprüfen und die Ergebnisse Ihrer Scans zu verifizieren.

Um den Befehlsverlauf im Terminal anzuzeigen, können Sie den Befehl history verwenden. Dieser Befehl zeigt eine nummerierte Liste der zuvor ausgeführten Befehle an.

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

history

Dies zeigt eine Liste Ihrer letzten Befehle an. Scrollen Sie durch die Liste, um die Nmap-Befehle zu finden, die Sie in den vorherigen Schritten verwendet haben, insbesondere die Befehle mit -sn, -PS und -PA zum Ausführen von Ping-Scans.

Beispielsweise sollten Sie Befehle wie diese sehen:

  1  sudo nmap -sn 192.168.1.0/24
  2  sudo nmap -sn 127.0.0.1
  3  sudo nmap -PS 192.168.1.1
  4  sudo nmap -PS 127.0.0.1
  5  sudo nmap -PA 192.168.1.1
  6  sudo nmap -PA 127.0.0.1
  7  sudo nmap -PS -PA 192.168.1.0/24
  8  sudo nmap -PS -PA 127.0.0.1
  9  history

Durch die Überprüfung dieser Befehle und ihrer Ausgabe (die Sie in den vorherigen Schritten notiert haben), können Sie die verschiedenen Ping-Techniken und ihr Verhalten bei erreichbaren und nicht erreichbaren Hosts bestätigen. Der Befehl history ist ein nützliches Werkzeug zur Überprüfung Ihrer Arbeit und zur Sicherstellung, dass Sie die Schritte in diesem Labor korrekt ausgeführt haben.

Hinweis: Die genaue Ausgabe des Befehls history hängt von den Befehlen ab, die Sie in Ihrer Terminalsitzung ausgeführt haben.

Zusammenfassung

In diesem Labor haben Sie gelernt, wie Sie Host-Entdeckungen mit Nmap durchführen. Sie begannen mit einem Ping-Scan im Netzwerk 192.168.1.0/24 mithilfe der Option -sn, um den Portscan zu deaktivieren. Dies ist schneller und weniger aufdringlich. Sie führten auch einen Ping-Scan auf der lokalen Adresse 127.0.0.1 durch, wobei der Portscan ebenfalls deaktiviert war. Darüber hinaus haben Sie verschiedene Ping-Typen wie TCP SYN-Ping mit -PS, ACK-Ping mit -PA und einen kombinierten Ping mit -PS -PA untersucht, um aktive Hosts in verschiedenen Netzwerkszenarien effektiv zu identifizieren. Schließlich haben Sie gelernt, wie Sie Ihren Befehlsverlauf im Terminal überprüfen, um Ihre Aktionen und entdeckte Hosts zu verifizieren.