Ports spielen eine ent­schei­den­de Rolle dabei, dass Da­ten­pa­ke­te präzise an ihr Ziel gelangen. Sie fungieren als Schnitt­stel­le zwischen Rechnern und Sys­tem­diens­ten oder An­wen­dun­gen und werden von den Netz­werk­pro­to­kol­len TCP und UDP genutzt. Zusammen mit der IP-Adresse erkennt das Be­triebs­sys­tem durch den Port nicht nur den Ziel­rech­ner, sondern weiß auch genau, welcher Anwendung die Pakete übergeben werden müssen.

Was versteht man unter Port-Scanning?

Be­triebs­sys­te­me verwenden Ports, um ein- und aus­ge­hen­de Daten an die passenden Programme zu leiten. Damit fungieren Ports als vom System ge­steu­er­te Schnitt­stel­le zwischen Software und dem Internet. Um eine Kom­mu­ni­ka­ti­on zu er­mög­li­chen, muss ein Port erst geöffnet bzw. frei­ge­schal­tet werden. Hier liegt jedoch ein Risiko: Jeder offene Port stellt einen po­ten­zi­el­len Ein­stiegs­punkt für Angriffe dar, falls die da­hin­ter­lie­gen­de Anwendung Si­cher­heits­lü­cken aufweist. Um dieses Risiko zu mi­ni­mie­ren, solltest du stets prüfen, welche Ports auf deinem System offen sind und welche Dienste sie nutzen.

Port-Scanning be­zeich­net den gezielten Prozess, offene Ports eines Systems mit spe­zia­li­sier­ten Tools zu iden­ti­fi­zie­ren. Für einen solchen Scan musst du nicht am Ziel­sys­tem an­ge­mel­det, sondern lediglich mit ihm verbunden sein – etwa über das lokale Netzwerk oder das Internet. Mit einem Port-Scanner sendest du Test-Da­ten­pa­ke­te an ver­schie­de­ne Ports und erhältst Antworten oder Feh­ler­mel­dun­gen, die das Tool auswertet. Je nach Funk­ti­ons­um­fang erfährst du so nicht nur, welche Ports offen oder ge­schlos­sen sind, sondern auch, welche Dienste dort aktiv sind.

Für die Sys­tem­ad­mi­nis­tra­ti­on ist Port-Scanning ein ef­fi­zi­en­tes Werkzeug, um den Netz­werk­ver­kehr zu prüfen. Schwach­stel­len lassen sich so früh­zei­tig erkennen und die An­griffs­flä­che ver­rin­gern. Oft helfen diese Scans auch dabei, Netz­werk­pro­ble­me zu lösen. Da die Tools die Sys­tem­leis­tung kaum be­ein­flus­sen, können sie pro­blem­los für Si­cher­heits­checks ein­ge­setzt werden.

Auch am privaten PC ist Port-Scanning sinnvoll: Sobald Programme In­ter­net­zu­griff benötigen, werden meist au­to­ma­tisch Ports geöffnet – sofern deine Firewall dies zulässt. Ein Scan hilft dir, die Übersicht zu behalten und un­ge­nutz­te Ports auf­zu­spü­ren, die du zur Erhöhung der Si­cher­heit schließen kannst.

Wie funk­tio­niert ein Port-Scan im Detail?

Die meisten Scanner bieten ver­schie­de­ne Methoden an, wobei der Fokus meist auf dem TCP-Protokoll liegt. Um die Abläufe zu verstehen, ist ein Blick auf den klas­si­schen TCP-Ver­bin­dungs­auf­bau hilfreich:

  • Beim so­ge­nann­ten Drei-Wege-Handshake sendet der Client zuerst ein SYN-Paket (syn­chro­ni­ze) an den Ziel-Port.
  • Antwortet dort eine Anwendung, erhält der Client ein SYN/ACK-Paket (syn­chro­ni­ze ack­now­ledge), welches die Be­reit­schaft si­gna­li­siert.
  • Im letzten Schritt schickt der Client ein ACK-Paket (ack­now­ledge) zurück. Die Ver­bin­dung steht, und Daten können fließen.

Ist ein Port hingegen zu, antwortet das System mit einem RST-Paket (reset), woraufhin der Vorgang ab­ge­bro­chen wird.

Da ein echter Da­ten­aus­tausch mit jeder Anwendung zu komplex wäre, be­schränkt sich Port-Scanning meist auf einfache Ver­bin­dungs­ver­su­che. Hier sind die gän­gigs­ten Methoden:

TCP-SYN-Scan

Dieser wird oft als halb­of­fe­ner Portscan be­zeich­net, da keine voll­stän­di­ge Ver­bin­dung aufgebaut wird. Der Scanner sendet SYN-Pakete und wartet auf die Reaktion: Ein SYN/ACK bedeutet „offen“, ein RST bedeutet „ge­schlos­sen“. Kommt gar keine Antwort, blockiert ver­mut­lich ein Pa­ket­fil­ter oder eine Firewall den Zugriff.

Da diese Scans für die An­wen­dun­gen oft un­sicht­bar bleiben und keine Log-Einträge erzeugen, nennt man sie auch Stealth-Scans.

TCP-Connect-Scan

Hier nutzt der Scanner den Standard-Sys­tem­auf­ruf connect des Be­triebs­sys­tems. Eine er­folg­rei­che Ver­bin­dung bestätigt den offenen Port. Diese Methode hin­ter­lässt jedoch Spuren in den Log-Dateien der An­wen­dun­gen. Sie ist eine gute Al­ter­na­ti­ve, wenn man keine Be­rech­ti­gung hat, eigene „rohe“ Da­ten­pa­ke­te zu versenden.

TCP-FIN-, Xmas- und Null-Scans

Diese Methoden nutzen spe­zi­fi­sche Ver­hal­tens­re­geln des TCP-Standards (RFC 793) aus:

  1. Ge­schlos­se­ne Ports müssen auf fast alle Pakete (außer RST) mit einem RST antworten.
  2. Offene Ports sollen Pakete ohne SYN-, RST- oder ACK-Mar­kie­rung einfach igno­rie­ren.

Daraus ergeben sich drei Scan-Typen:

  • Der Null-Scan ver­zich­tet auf jegliche Mar­kie­run­gen.
  • Der FIN-Scan sendet Pakete zum Beenden (finish).
  • Der Xmas-Scan kom­bi­niert mehrere Mar­kie­run­gen (FIN, PSH, URG), wodurch das Paket bildlich ge­spro­chen „wie ein Christ­baum leuchtet“.

Alle drei führen dazu, dass ge­schlos­se­ne Ports antworten und offene stumm bleiben. Sie sind noch diskreter als SYN-Scans, funk­tio­nie­ren aber nicht auf Systemen, die den Standard nicht exakt umsetzen (wie etwa Windows).

UDP-Scan

Hier werden leere UDP-Header gesendet. Antwortet ein Dienst mit UDP, ist der Port offen. Erhält der Scanner die Meldung „Port un­re­acha­ble“, ist er zu. UDP-Tests sind jedoch sehr zeit­auf­wen­dig, da Systeme Feh­ler­mel­dun­gen oft nur verzögert ausgeben. Unter Linux kann ein kom­plet­ter Scan aller Ports so über 18 Stunden dauern.

Welche Port-Scanner stehen zur Auswahl?

Es gibt eine Vielzahl an Scannern, meist als Freeware oder Open Source. Viele sind Kom­man­do­zei­len-Tools, bieten aber oft grafische Ober­flä­chen. Auch web­ba­sier­te Lösungen exis­tie­ren, mit denen du Ports direkt im Browser prüfen kannst. Diese sind jedoch oft ein­ge­schränkt, wie etwa der Port-Scanner von DNStools, und eignen sich eher für einen schnellen Check zwi­schen­durch.

Netcat – das bewährte Allzweck-Tool

Netcat (nc) ist ein Klassiker aus dem Jahr 1996. Es gibt heute zahl­rei­che Versionen für Windows und Linux (z. B. GNU Netcat oder Cryptcat), die oft bereits vor­in­stal­liert sind. Ei­gent­lich zum Lesen und Senden von Netz­werk­da­ten gedacht, lässt es sich leicht für einfache Scans nutzen. Mit dem Befehl

nc -zv localhost 20-30
bash

prüfst du bei­spiels­wei­se den Status der Ports 20 bis 30. Auch externe IP-Adressen lassen sich so un­kom­pli­ziert un­ter­su­chen.

Pro­fes­sio­nel­le Analyse mit Nmap

Der Network Mapper (Nmap) ist das Stan­dard­werk­zeug für Profis. Das GPL-li­zen­zier­te Tool bietet einen enormen Funk­ti­ons­um­fang und ist auch für Windows verfügbar. Während Nmap meist über die Konsole gesteuert wird, bietet Zenmap eine kom­for­ta­ble grafische Ober­flä­che.

Dank Features wie OS-Fin­ger­prin­ting (Erkennung des Be­triebs­sys­tems) ist Nmap extrem viel­sei­tig. Hier eine Übersicht der wich­tigs­ten Scan-Methoden:

Scan-Methode Nmap-Befehl Be­schrei­bung
TCP-Connect-Scan nmap -sT Host Standard-Check ohne Admin-Rechte
TCP-Syn-Scan nmap -sS Host Schnell und un­auf­fäl­lig für Admins
TCP-FIN-/XMAS-/Null-Scan nmap -sF/X/N Host Umgeht teilweise Firewalls
TCP-Ping-Scan nmap -sP Host Prüft lediglich die Er­reich­bar­keit
TCP-ACK-Scan nmap -sA Host Iden­ti­fi­ziert ge­fil­ter­te Ports
TCP-Window-Scan nmap -sW Host Ve­ri­fi­ziert Port-Zustände
TCP-Maimon-Scan nmap -sM Host Spe­zi­al­form (FIN/ACK-Mix)
TCP-Idle-Scan nmap -sI Zombie Host Maximale An­ony­mi­tät über Dritt­rech­ner
UDP-Scan nmap -sU Host Prüft ver­bin­dungs­lo­se UDP-Ports
SCTP-Init-Scan nmap -sY Host Scan für das SCTP-Protokoll
IP-Protokoll-Scan nmap -sO Host Prüft un­ter­stütz­te IP-Pro­to­kol­le

Nmap und Zenmap findest du zum Download auf der of­fi­zi­el­len Website.

Recht­li­cher Rahmen beim Port-Scanning

Ein Port-Scan ist rechtlich nicht immer un­be­denk­lich. Spä­tes­tens wenn darauf ein Exploit-Versuch folgt (das Ausnutzen einer Lücke), handelst du rechts­wid­rig.

Kritisch wird es auch, wenn ein System durch zu intensive Scans abstürzt. Die hohe Anzahl an Anfragen kann eine starke Last erzeugen. Solche Ak­ti­vi­tä­ten können zudem als Vor­be­rei­tung für einen Angriff gewertet werden und recht­li­che Kon­se­quen­zen nach sich ziehen. Mut­wil­li­ge Über­las­tun­gen werden als DoS- oder DDoS-Attacken ein­ge­stuft und straf­recht­lich verfolgt.

Stelle daher immer sicher, dass du zum Scan be­rech­tigt bist. Nutze die Technik ver­ant­wor­tungs­be­wusst für deine eigene Si­cher­heit, um deine Systeme und Dienste optimal zu schützen.

Zum Hauptmenü