Port-Scanner

Zwanzig bekannte Ports, je eine TCP-Verbindung, vom Server von sysosx — und drei ehrliche Antworten, nicht zwei. Ein Port kann offen sein (etwas antwortet), geschlossen (der Host lehnt aktiv ab) oder gefiltert (Stille — meist eine Firewall, die Pakete fallen lässt, kein Beweis, dass dort nichts ist). Das Standardziel ist scanme.nmap.org, der öffentliche Host, den das nmap-Projekt genau dafür betreibt, dass Menschen das Scannen lernen können; für jeden anderen Host scannen Sie Ihre eigenen Server oder solche, die Sie testen dürfen.

Soll das laufend überwacht werden? Kostenlos mit myeventwatch überwachen — Ablauf- und Ausfallwarnungen, keine Karte nötig.

Was der Scan misst

Ein Port-Scan wird oft als „prüfen, welche Türen offen sind“ beschrieben, und die Metapher ist genau genug, um nützlich zu sein — mit einer Korrektur. Eine Tür kann offen, abgeschlossen oder schlicht ohne Antwort sein: Klopfen und nichts hören ist nicht dasselbe wie die Tür abgeschlossen vorzufinden, und ein Scanner, der nur offen und geschlossen meldet, versteckt den dritten Fall. Dieser Scanner meldet daher offen, geschlossen und gefiltert als drei getrennte Zustände. Offen bedeutet, die Verbindung gelang, also lauscht ein Dienst und nimmt Verbindungen an. Geschlossen bedeutet, der Host schickte ein Reset — er ist lebendig und hat auf diesem Port nichts. Gefiltert bedeutet, die volle Sekunde Wartezeit verging in Stille, so sieht eine Firewall, die Pakete fallen lässt, von außen aus; der Port kann einen Dienst hinter dieser Firewall haben, und der Scan kann nichts Gegenteiliges sagen. Gefiltert getrennt zu halten ist der Unterschied zwischen einem Ergebnis, mit dem Sie handeln können, und einem, das Sie still in die Irre führt.

Der Scan ist bewusst schmal. Er prüft eine feste Liste von etwa zwanzig Ports — Web (80, 8080, 8443, 443), Mail (25, 110, 143, 993, 995), DNS (53), Fernzugriff (22, 23, 3389, 5900), Dateifreigabe (445), Datenbanken (3306, 5432, 27017) und ein paar weitere — mit schlichten TCP-Verbindungen und sonst nichts. Kein Banner-Lesen, also erfährt (oder verrät) der Scan nie eine Dienstversion; kein UDP, dessen „gefilterte“ Antworten weit verrauschter sind; und keine Möglichkeit, eigene Ports anzugeben, weil eine Eingabe beliebiger Ports ein Ersteindruck-Werkzeug in einen allgemeinen Kartierungsdienst verwandelt. Das Ziel selbst wird einmal aufgelöst, und jede Verbindung geht an diese eine festgelegte Adresse, sodass ein Name, der sich mitten im Scan ändert, die Prüfungen nicht anderswohin umleiten kann. Unter der Haube ruft die Seite GET /api/check/port-scan auf dem Server von sysosx auf, der die zwanzig Verbindungen parallel ausführt und das Ergebnis zehn Minuten zwischenspeichert.

Ein Ergebnis lesen

Beginnen Sie mit den offenen Ports — sie sind die tatsächliche Angriffsfläche, die Dienste, die das Internet erreichen kann. Ein offenes 22 oder 3389 bedeutet, Fernzugriff ist von überall erreichbar, was beabsichtigt sein kann (ein Server, den Sie verwalten) oder das Erste sein kann, was Sie auf Ihre eigenen Adressen beschränken sollten. Ein offener Datenbank-Port (3306, 5432, 27017), der dem Internet zugewandt ist, ist fast nie beabsichtigt und verdient sofortige Aufmerksamkeit: Datenbanken sind dafür gedacht, von Anwendungen erreicht zu werden, nicht vom ganzen Internet. Offene 80 und 443 sind für einen Webserver normal; offene Mail-Ports sind für einen Mailserver normal; alles andere Offene sollte sich selbst erklären können. Geschlossene Ports brauchen nichts: Der Host ist lebendig und lehnt ab, was für den größten Teil der Liste auf den meisten Servern der erwartete Zustand ist. Gefilterte Ports verdienen nur dann einen zweiten Blick, wenn Sie dort etwas erwartet haben — ein Dienst, den Sie betreiben und den der Scan nicht sehen kann, ist meist eine Firewall-Regel, die ihre Arbeit tut, oder ein Dienst, der an die falsche Schnittstelle gebunden ist, und der Scan allein kann die beiden nicht auseinanderhalten. Ein Ergebnis ganz ohne offene Ports ist ein normales Ergebnis, kein Fehler: Es bedeutet, dass keiner der zwanzig üblichen Dienste vom Standpunkt dieses Servers aus erreichbar ist, und genau so sieht ein gehärteter Host aus.

Verwandte Werkzeuge: der SSL-Bewerter für die TLS-Einrichtung auf Port 443, sobald Sie wissen, dass er offen ist, der Website-Gesundheitscheck für Erreichbarkeit und Einträge zusammen, und der DNS-Propagations-Prüfer, wenn die Frage ist, wohin ein Name zeigt, statt was auf ihm antwortet.

Weiterlesen: was offene Ports über einen Server sagen — wie man einen Scan wie ein Betreiber liest, welche offenen Ports normal sind und welche ein Alarm um 3 Uhr nachts sind, der nur darauf wartet zu passieren.

Häufige Fragen

Worin unterscheidet sich das vom Ausführen von nmap?

Nmap scannt alles, auf jede Weise: volle Portbereiche, UDP, Versionserkennung, Betriebssystem-Fingerprinting. Dieses Werkzeug tut vom Server von sysosx aus eine einzige schmale Sache — TCP-Verbindungen zu einer festen Liste von etwa zwanzig bekannten Ports, und sonst nichts. Kein Banner-Lesen, keine Versionserkennung, kein UDP, keine eigenen Ports. Diese Schmalheit ist der Punkt: Es beantwortet „was lauscht auf den üblichen Ports?“, ohne ein Allzweck-Scanner zu werden, den jeder auf irgendetwas richten kann.

Was bedeuten offen, geschlossen und gefiltert wirklich?

Offen bedeutet, eine TCP-Verbindung gelang — etwas lauscht auf diesem Port und nimmt Verbindungen an. Geschlossen bedeutet, der Host lehnte die Verbindung aktiv ab (ein Reset-Paket), so antwortet ein lebendiger Host, der auf diesem Port nichts hat. Gefiltert bedeutet, der Port gab innerhalb einer Sekunde überhaupt keine Antwort — typischerweise eine Firewall, die Pakete still fallen lässt. Gefiltert ist nicht geschlossen: Ein gefilterter Port kann einen Dienst hinter einer Firewall haben, und die einzige ehrliche Aussage ist „keine Antwort“. Die Ergebnistabelle hält alle drei Zustände genau aus diesem Grund getrennt.

Warum nur zwanzig Ports, und warum kann ich keine eigenen hinzufügen?

Weil ein Port-Scanner mit einer Eingabe beliebiger Ports ein Werkzeug ist, um jeden Host im Internet zu kartieren, und diese Site wird das nicht sein. Die Liste deckt die Ports ab, die für einen ersten Blick zählen — Web, Mail, DNS, Datenbanken, Fernzugriff, Dateifreigabe — und der Server lehnt alles außerhalb davon ab. Wenn Sie einen vollständigen Scan eines Hosts brauchen, der Ihnen gehört, führen Sie nmap von Ihrer eigenen Maschine aus, wo Sie den Umfang und die Folgen kontrollieren.

Warum ist scanme.nmap.org der Standard?

Weil es genau für diesen Zweck existiert: Das nmap-Projekt betreibt es als öffentliches Ziel, das jeder scannen darf, um zu lernen, wie Scannen funktioniert. Es ist der eine Host im Internet, bei dem Scannen keine Erlaubnisdiskussion braucht. Für jeden anderen Host ist die Regel einfach: Scannen Sie Ihre eigenen Server, Server, die Sie testen dürfen, oder öffentliche Testziele — niemals die Infrastruktur eines Fremden.

Warum wird das Ergebnis zehn Minuten zwischengespeichert, und warum fünf frische Scans pro Stunde?

Ein Scan sind zwanzig parallele TCP-Verbindungen, nicht ein Handshake, also kostet er mehr als die anderen Prüfungen und lässt sich leichter für Massensondierungen missbrauchen. Zehn Minuten Zwischenspeicherung bedeutet, eine Wiederholungsprüfung desselben Hosts kostet nichts, und die strengere Frist für frische Scans (fünf pro Stunde pro Besucher, höchstens zwei pro Minute) hält das Werkzeug für einen Menschen, der seine eigenen Server prüft, nutzbar, ohne ein Sondierungsdienst zu werden. Ein zwischengespeichertes Ergebnis ist als solches gekennzeichnet; die offenen Ports eines Hosts ändern sich selten von Minute zu Minute.