Einführung
Willkommen zum Lab über TCP- und UDP-Port-Scanning. Port-Scanning ist eine grundlegende Technik, die von Netzwerkadministratoren und Sicherheitsexperten genutzt wird, um aktive Dienste in einem Computernetzwerk zu entdecken. Durch das Senden spezifischer Netzwerkpakete an ein Ziel und die Analyse der Antworten können wir feststellen, welche Ports offen, geschlossen oder durch eine Firewall gefiltert sind.
Ein offener Port bedeutet nicht automatisch „anfällig“, aber er bedeutet „erreichbare Dienstschnittstelle“. Deshalb ist Port-Scanning ein zentraler Bestandteil der Aufklärung (Reconnaissance). Es identifiziert die Tore, die ein System dem Netzwerk gegenüber öffnet.
In diesem Lab erforschen Sie die technischen Grundlagen des Port-Scannings mit Nmap (Network Mapper), dem Industriestandard für die Netzwerkerkundung. Sie lernen drei verschiedene Scan-Typen kennen: den zuverlässigen TCP-Connect-Scan, den unauffälligen TCP-SYN-Scan und den verbindungslosen UDP-Port-Scan. Durch praktische Übungen werden Sie verstehen, wie verschiedene Netzwerkprotokolle auf Scan-Anfragen reagieren.
TCP-Connect-Scan (-sT) ausführen
In diesem Schritt beginnen wir mit der Durchführung eines TCP-Connect-Scans. Sie befinden sich derzeit in Ihrem Standard-Arbeitsverzeichnis ~/project.
Ein TCP-Connect-Scan ist die direkteste Art des Port-Scannings. Er verlässt sich auf die integrierten Netzwerkfunktionen des Betriebssystems, um eine vollständige Verbindung mit dem Zielport aufzubauen. Das bedeutet, er schließt den gesamten TCP-Drei-Wege-Handshake ab: Er sendet ein SYN-Paket, empfängt ein SYN-ACK-Paket vom Ziel und sendet schließlich ein ACK-Paket zurück, um die Verbindung zu etablieren.
Da dieser Scan den normalen Netzwerk-Stack verwendet, ist er konzeptionell einfach und zuverlässig. Er erinnert uns zudem daran, dass Scannen im Grunde nur eine kontrollierte Interaktion mit dem festgelegten Verhalten von Protokollen ist.
Da die Verbindung vollständig aufgebaut wird, ist dieser Scan sehr zuverlässig. Er ist jedoch auch sehr „auffällig“. Da eine vollständige Verbindung hergestellt wird, werden die Anwendungsprotokolle des Zielsystems den Verbindungsversuch mit hoher Wahrscheinlichkeit aufzeichnen, was es Administratoren leicht macht, den Scan zu erkennen.
Lassen Sie uns Nmap verwenden, um einen TCP-Connect-Scan gegen unsere lokale Maschine (localhost) auf Port 8080 durchzuführen, wo derzeit ein Webdienst im Hintergrund läuft. Das Flag -sT weist Nmap an, die TCP-Connect-Methode zu verwenden, und das Flag -p gibt die Portnummer an.
Führen Sie den folgenden Befehl in Ihrem Terminal aus:
nmap -sT -p 8080 localhost
Nach Ausführung des Befehls sollten Sie eine Ausgabe ähnlich dieser sehen:
Starting Nmap 7.80 ( https://nmap.org ) at 2026-03-07 15:56 CST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000086s latency).
Other addresses for localhost (not scanned): ::1
PORT STATE SERVICE
8080/tcp open http-proxy
Nmap done: 1 IP address (1 host up) scanned in 0.02 seconds
Die Ausgabe zeigt deutlich, dass Port 8080 open (offen) ist und das TCP-Protokoll verwendet. Der Dienst wird als http-proxy identifiziert (oder ähnlich, je nach Nmap-Version), was dem Python-HTTP-Server entspricht, den wir im Hintergrund ausführen.
Unauffälligen SYN-Scan (-sS) ausführen
In diesem Schritt untersuchen wir eine fortgeschrittenere und häufig verwendete Technik: den TCP-SYN-Scan, auch bekannt als „Half-Open“-Scan.
Im Gegensatz zum TCP-Connect-Scan schließt der SYN-Scan den Drei-Wege-Handshake nicht ab. Er sendet ein SYN-Paket (Anfrage einer Verbindung) und wartet auf eine Antwort. Wenn der Zielport offen ist, antwortet er mit einem SYN-ACK-Paket. Anstatt nun ein ACK zu senden, um die Verbindung zu vervollständigen, sendet Nmap sofort ein RST-Paket (Reset), um die Verbindung abzubrechen, bevor sie vollständig etabliert ist.
Deshalb wird das SYN-Scanning oft als „halboffen“ bezeichnet. Es verlässt sich weiterhin auf das TCP-Verhalten des Ziels, minimiert aber den Umfang der abgeschlossenen Verbindung.
Diese Methode gilt als „unauffällig“ (stealthy), da viele Anwendungen nur vollständig aufgebaute Verbindungen protokollieren. Durch den vorzeitigen Abbruch der Verbindung umgeht der SYN-Scan oft die Protokollierung auf Anwendungsebene. Da dieser Scan jedoch das Erstellen von rohen Netzwerkpaketen erfordert, anstatt Standardfunktionen des Betriebssystems zu nutzen, sind hierfür Root-Rechte (sudo) erforderlich.
Lassen Sie uns einen SYN-Scan gegen denselben Port 8080 auf unserer lokalen Maschine durchführen. Wir verwenden das Flag -sS, um die SYN-Scan-Methode anzugeben.
Führen Sie den folgenden Befehl in Ihrem Terminal aus:
sudo nmap -sS -p 8080 localhost
Sie werden eine Ausgabe ähnlich wie im vorherigen Schritt sehen:
Starting Nmap 7.80 ( https://nmap.org ) at 2026-03-07 15:56 CST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000042s latency).
Other addresses for localhost (not scanned): ::1
PORT STATE SERVICE
8080/tcp open http-proxy
Nmap done: 1 IP address (1 host up) scanned in 0.09 seconds
Beachten Sie, dass das Ergebnis identisch ist – der Port wird weiterhin als open identifiziert. Der Unterschied liegt vollständig darin, wie die Netzwerkpakete im Hintergrund ausgetauscht wurden. Der SYN-Scan ist der Standard-Scan-Typ in Nmap, wenn Sie ihn mit sudo-Rechten ausführen, aufgrund seiner Geschwindigkeit und Unauffälligkeit.
UDP-Port-Scan (-sU) ausführen
In diesem letzten Schritt verlagern wir unseren Fokus von TCP auf UDP (User Datagram Protocol).
UDP ist ein verbindungsloses Protokoll. Im Gegensatz zu TCP gibt es keinen Handshake-Prozess, um eine Verbindung vor dem Senden von Daten aufzubauen. Wenn Sie ein UDP-Paket an einen Port senden, sendet das Ziel normalerweise keine Bestätigung zurück, wenn der Port offen ist. Es antwortet nur mit einem „ICMP Port Unreachable“-Fehler, wenn der Port geschlossen ist.
Diese Asymmetrie macht UDP-Scans schwieriger zu interpretieren. Stille kann Erfolg, Filterung oder gar nichts bedeuten. Analysten müssen UDP-Ergebnisse daher sorgfältiger lesen als TCP-Ergebnisse.
Dies macht UDP-Scanning bekanntermaßen schwierig und langsam. Wenn Nmap ein UDP-Paket sendet und keine Antwort erhält, kann es nicht sicher sein, ob der Port offen ist und stillschweigend Daten akzeptiert, oder ob eine Firewall das Paket einfach verworfen hat. Daher meldet Nmap diese Ports oft als open|filtered.
Lassen Sie uns einen UDP-Scan gegen einen beliebigen Port (wie 5353) durchführen, von dem wir wissen, dass er derzeit keinen Dienst auf unserer lokalen Maschine hostet. Dies zeigt, wie das Betriebssystem reagiert, wenn ein Port explizit geschlossen ist. Wie beim SYN-Scan erfordert UDP-Scanning Root-Rechte, um rohe Pakete zu erstellen.
Führen Sie den folgenden Befehl in Ihrem Terminal aus:
sudo nmap -sU -p 5353 localhost
Der Scan könnte etwas länger dauern als die TCP-Scans. Sobald er abgeschlossen ist, sollten Sie eine Ausgabe ähnlich dieser sehen:
Starting Nmap 7.80 ( https://nmap.org ) at 2026-03-07 15:56 CST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000038s latency).
Other addresses for localhost (not scanned): ::1
PORT STATE SERVICE
5353/udp closed zeroconf
Nmap done: 1 IP address (1 host up) scanned in 1.09 seconds
Beachten Sie, dass der Status als closed (geschlossen) gemeldet wird. Wenn Nmap ein UDP-Paket an einen geschlossenen Port sendet, antwortet das Betriebssystem des Ziels normalerweise mit einer „ICMP Port Unreachable“-Fehlermeldung. Da Nmap diesen expliziten Fehler erhalten hat, kann es den Port sicher als closed markieren. Wenn ein Dienst auf diesem Port laufen würde und einfach nicht antworten würde (was bei UDP-Anwendungen häufig vorkommt), würde Nmap diesen ICMP-Fehler nicht erhalten und den Port-Status wahrscheinlich mehrdeutig als open|filtered melden. Diese Abhängigkeit von ICMP-Fehlermeldungen ist ein Kennzeichen des UDP-Port-Scannings.
Zusammenfassung
Herzlichen Glückwunsch! Sie haben das Lab zum TCP- und UDP-Port-Scanning erfolgreich abgeschlossen.
In diesem Lab haben Sie gelernt, wie man Nmap verwendet, um verschiedene Arten von Netzwerk-Scans durchzuführen. Sie begannen mit dem zuverlässigen, aber auffälligen TCP-Connect-Scan (-sT), der den vollständigen Drei-Wege-Handshake abschließt. Danach gingen Sie zum unauffälligen TCP-SYN-Scan (-sS) über, der offene Ports identifiziert, indem er Verbindungen halboffen lässt, um grundlegende Protokollierungen zu umgehen. Schließlich erforschten Sie die Komplexität des verbindungslosen UDP-Scans (-sU) und verstanden, warum UDP-Ports oft als open|filtered erscheinen.
Diese grundlegenden Scan-Techniken sind wesentliche Fähigkeiten, um die Netzwerktopologie zu verstehen und Systeme gegen unbefugten Zugriff abzusichern.



