Ein Port-Scan ist ein bisschen so, als würde man an einer Reihe von Türklinken wackeln, um zu sehen, welche Türen verschlossen sind. Der Scanner lernt, welche Ports an einem Router oder einer Firewall geöffnet sind, und kann diese Informationen verwenden, um potenzielle Schwachstellen eines Computersystems zu finden.
Was ist ein Hafen?
Wenn ein Gerät über ein Netzwerk eine Verbindung zu einem anderen Gerät herstellt, gibt es eine TCP- oder UDP-Portnummer von 0 bis 65535 an. Einige Ports werden jedoch häufiger verwendet. TCP-Ports 0 bis 1023 sind „bekannte Ports“, die Systemdienste bereitstellen. Port 20 steht beispielsweise für FTP-Dateiübertragungen, Port 22 für Secure Shell (SSH)-Terminalverbindungen, Port 80 für Standard-HTTP-Webdatenverkehr und Port 443 für verschlüsseltes HTTPS. Wenn Sie sich also mit einer sicheren Website verbinden, kommuniziert Ihr Webbrowser mit dem Webserver, der auf Port 443 dieses Servers lauscht.
Dienste müssen nicht immer auf diesen spezifischen Ports ausgeführt werden. Sie können beispielsweise einen HTTPS-Webserver auf Port 32342 oder einen Secure Shell-Server auf Port 65001 ausführen, wenn Sie möchten. Dies sind nur die Standardeinstellungen.
Was ist ein Port-Scan?
Ein Port-Scan ist ein Prozess, bei dem alle Ports einer IP-Adresse überprüft werden, um festzustellen, ob sie geöffnet oder geschlossen sind. Die Port-Scanning-Software würde Port 0, Port 1, Port 2 bis hin zu Port 65535 überprüfen. Dazu wird einfach eine Anfrage an jeden Port gesendet und um eine Antwort gebeten. In seiner einfachsten Form fragt die Port-Scanning-Software nach jedem Port nacheinander ab. Das entfernte System antwortet und sagt, ob ein Port offen oder geschlossen ist. Die Person, die den Portscan durchführt, würde dann wissen, welche Ports geöffnet sind.
Alle Netzwerk-Firewalls, die im Weg stehen, können den Datenverkehr blockieren oder auf andere Weise unterbrechen. Daher ist ein Port-Scan auch eine Methode, um herauszufinden, welche Ports auf diesem Remote-System erreichbar oder dem Netzwerk ausgesetzt sind.
Die nmap-Tool ist ein gängiges Netzwerkdienstprogramm, das zum Port-Scanning verwendet wird, aber es gibt viele andere Port-Scanning-Tools.
Warum führen Benutzer Port-Scans durch?

Port-Scans sind nützlich, um die Schwachstellen eines Systems zu ermitteln. Ein Port-Scan würde einem Angreifer sagen, welche Ports auf dem System geöffnet sind, und das würde ihm helfen, einen Angriffsplan zu formulieren. Wenn beispielsweise ein Secure Shell (SSH)-Server erkannt wurde, der Port 22 überwacht, könnte der Angreifer versuchen, eine Verbindung herzustellen und nach schwachen Passwörtern zu suchen. Wenn ein anderer Servertyp auf einem anderen Port lauscht, könnte der Angreifer darin herumstochern und sehen, ob es einen Fehler gibt, der ausgenutzt werden kann. Vielleicht läuft eine alte Version der Software und es gibt eine bekannte Sicherheitslücke.
Diese Arten von Scans können auch dabei helfen, Dienste zu erkennen, die auf nicht standardmäßigen Ports ausgeführt werden. Wenn Sie also einen SSH-Server auf Port 65001 statt auf Port 22 betreiben, würde der Port-Scan dies aufdecken, und der Angreifer könnte versuchen, sich über diesen Port mit Ihrem SSH-Server zu verbinden. Sie können einen Server nicht einfach auf einem nicht standardmäßigen Port verstecken, um Ihr System zu schützen, obwohl dies das Auffinden des Servers erschwert.
Port-Scans werden nicht nur von Angreifern verwendet. Port-Scans sind nützlich für defensive Penetrationstests. Ein Unternehmen kann seine eigenen Systeme scannen, um festzustellen, welche Dienste dem Netzwerk ausgesetzt sind, und um sicherzustellen, dass sie sicher konfiguriert sind.
Wie gefährlich sind Port-Scans?
Ein Port-Scan kann einem Angreifer helfen, eine Schwachstelle für einen Angriff zu finden und in ein Computersystem einzudringen. Es ist jedoch nur der erste Schritt. Nur weil Sie einen offenen Port gefunden haben, heißt das nicht, dass Sie ihn angreifen können. Sobald Sie jedoch einen offenen Port gefunden haben, auf dem ein Abhördienst ausgeführt wird, können Sie ihn auf Schwachstellen scannen. Das ist die wahre Gefahr.
In Ihrem Heimnetzwerk befindet sich mit ziemlicher Sicherheit ein Router zwischen Ihnen und dem Internet. Jemand im Internet wäre nur in der Lage, Ihren Router zu scannen, und er würde nichts außer möglichen Diensten auf dem Router selbst finden. Dieser Router fungiert als Firewall – es sei denn, Sie haben einzelne Ports von Ihrem Router an ein Gerät weitergeleitet. In diesem Fall sind diese spezifischen Ports dem Internet ausgesetzt.
Für Computerserver und Unternehmensnetzwerke können Firewalls so konfiguriert werden, dass sie Portscans erkennen und den Datenverkehr von der scannenden Adresse blockieren. Wenn alle dem Internet ausgesetzten Dienste sicher konfiguriert sind und keine bekannten Sicherheitslücken aufweisen, sollten Port-Scans nicht einmal allzu beängstigend sein.
Arten von Port-Scans

Bei einem „TCP Full Connection“-Port-Scan sendet der Scanner eine SYN-Nachricht (Connection Request) an einen Port. Wenn der Port offen ist, antwortet das entfernte System mit einer SYN-ACK-Nachricht (Bestätigung). Der Scanner antwortet dann mit seiner eigenen ACK-Nachricht (Acknowledgement). Dies ist ein voller TCP-Verbindungshandshake, und der Scanner weiß, dass das System Verbindungen an einem Port akzeptiert, wenn dieser Vorgang stattfindet.
Wenn der Port geschlossen ist, antwortet das Remote-System mit einer RST-Nachricht (Reset). Wenn das Remote-System einfach nicht im Netzwerk vorhanden ist, erfolgt keine Antwort.
Einige Scanner führen einen „TCP-Halboffen“-Scan durch. Anstatt einen vollständigen SYN-, SYN-ACK- und dann einen ACK-Zyklus zu durchlaufen, senden sie einfach ein SYN und warten auf eine SYN-ACK- oder RST-Nachricht als Antwort. Es ist nicht erforderlich, ein abschließendes ACK zu senden, um die Verbindung herzustellen, da das SYN-ACK dem Scanner alles mitteilen würde, was er wissen muss. Es ist schneller, weil weniger Pakete gesendet werden müssen.
Andere Arten von Scans beinhalten das Senden fremder, falsch formatierter Pakettypen und das Warten, um zu sehen, ob das entfernte System ein RST-Paket zurücksendet, das die Verbindung schließt. Wenn dies der Fall ist, weiß der Scanner, dass sich an diesem Standort ein Remote-System befindet und dass ein bestimmter Port daran geschlossen ist. Wenn kein Paket empfangen wird, weiß der Scanner, dass der Port geöffnet sein muss.
Ein einfacher Port-Scan, bei dem die Software nacheinander Informationen zu jedem Port anfordert, ist leicht zu erkennen. Netzwerk-Firewalls können einfach so konfiguriert werden, dass sie dieses Verhalten erkennen und stoppen.
Aus diesem Grund funktionieren einige Port-Scanning-Techniken anders. Beispielsweise könnte ein Portscan einen kleineren Portbereich scannen oder den gesamten Portbereich über einen viel längeren Zeitraum scannen, sodass er schwieriger zu erkennen wäre.
Port-Scans sind ein grundlegendes Sicherheitstool, wenn es darum geht, in Computersysteme einzudringen (und zu sichern). Aber sie sind nur ein Werkzeug, mit dem Angreifer Ports finden können, die anfällig für Angriffe sein könnten. Sie gewähren einem Angreifer keinen Zugriff auf ein System, und ein sicher konfiguriertes System kann einen vollständigen Port-Scan ohne Schaden überstehen.
Bildnachweis: xfilephotos/Shutterstock.com, Casezy-Idee/Shutterstock.com.