Netzwerk/L4/Port/tmp

Aus Foxwiki

TCP- und UDP-Ports

TCP- und UDP-Ports sind eine Software-Abstraktion, um parallele Kommunikationsverbindungen einer oder mehreren Anwendungen voneinander unterscheiden zu können

  • Ähnlich wie IP-Adressen zur Adressierung von Rechnern in Netzwerken dienen, adressieren Ports spezifische Anwendungen und ihre Verbindungen, die auf einem Rechner laufen

Datenpakete, die über IP ihr Ziel erreichen, werden von TCP zusammengesetzt und an eine Anwendung übergeben

  • Da mehrere Anwendungen zugleich TCP-Verbindungen aufbauen können, muss eine Zuordnung zwischen Datenpaket und Anwendung erfolgen
  • Zu diesem Zweck wird eine Kennung zwischen Daten und Anwendung definiert, die als Port bezeichnet wird
  • Es handelt sich dabei um eine fortlaufende Nummer zwischen 0 bis 65.535
  • TCP-Pakete sind mit diesen Port-Nummern, jeweils eine für Sender und Empfänger, versehen
  • Mit den Ports ist es möglich, dass die Datenpakete mehrerer Verbindungen dem richtigen Datenstrom zugeordnet werden können

Ports

Die Port-Nummern, die für TCP und UDP gleichzeitig gelten, werden von der IANA (Internet Assigned Numbers Authority) bzw. ICANN (Internet Corporation for Assigned Names and Numbers) verwaltet und vergeben

Name Bereich Beschreibung
Well Known Ports 0 - 1023
  • Einem Dienst oder Anwendungsprotokoll fest zugeordnet
  • Bekannte Dienste hören standardmäßig diese Ports ab
  • Standard-, Default-, Destination-Ports
Registered Ports 1024 - 49151
  • Zur Registrierung freigegeben
  • Können bei der IANA/ICANN registriert werden
  • Dies Ports können mehrfach belegt sein
Dynamically Allocated Ports 49152 - 65535
  • Können frei verwendet werden
  • Können dynamisch zugewiesen werden
  • Typischerweise nutzen Client diese Ports für ausgehende Verbindungen (Source-Port)

Wenn Anwendungen zu einem Server Kontakt aufnehmen wollen, dann vergibt TCP bzw. UDP den Standard-Port für den Empfänger-Port und vergibt einen freien Port ab 49.152 für den Sender-Port

  • Wenn der Server die Daten erhalten hat und eine Antwort zurückschickt, dann werden die Port-Nummern vertauscht
  • Damit wird sichergestellt, dass die Daten nicht an eine falsche Anwendung übergeben werden
Beispiele für Standard-Ports (TCP)
Port-Nummer Protokoll Anwendung
21 FTP Dateitransfer (FTP-Server)
23 Telnet Konsole (Server)
25 SMTP Postausgang (SMTP-Server)
80 HTTP World Wide Web (Webserver)
110 POP Posteingang (POP-Server)
119 NNTP Usenet (News-Server)
Beispiele für Standard-Ports (UDP)
Port-Nummer Protokoll Anwendung
53 DNS Domain Name Server
69 TFTP Trivial File Transfer Protocol
137 NetBIOS-ns NetBIOS Nameserver
138 NetBIOS-DGM NetBIOS-Datagramm-Dienst
161 SNMP Simple Network Management Protocol

Port-Zustände

Der Zustand eines Ports bestimmt, ob eine Kommunikation über diesen Port zu einer dahinterliegenden Anwendung möglich ist

Vereinfacht gesehen gibt es drei Zustände
  • Open / Offen
  • Closed / Geschlossen
  • Filtered / Gefiltert (Blocked / Geblockt)

In der Regel reicht es aus, wenn man alle Ports pauschal in diese zwei (offen, geschlossen) oder auch drei Zustände einteilt (offen, geschlossen, gefiltert)

  • Es gibt allerdings eine Betrachtungsweise auf Ports, die mehr Zustände zulässt
  • So kennt der Port-Scanner NMAP insgesamt sechs Port-Zustände, die wir hier aber nicht weiter betrachten
  • NMAP - Network Mapper
  • Port-Scanning (Grundlagen)
  • Port-Scanning mit NMAP

Open / Offen

Der Zustand "Open" oder "Offen" ist dann gegeben, wenn auf einem spezifischen Port eine Anwendung lauscht

  • Mit "Offen" ist gemeint, dass man zu einer Anwendung über diesen Port eine Verbindung aufbauen kann

Closed / Geschlossen

Der Zustand "Closed" oder "Geschlossen" ist der Standardzustand eines Ports

  • Er ist dann gegeben, wenn auf einem spezifischen Port keine Anwendung lauscht
  • Der Host wird eine Verbindung zu diesem Port aktiv ablehnen
  • Mit "Geschlossen" ist gemeint, dass es keine Anwendung gibt zu der man eine Verbindung über diesen Port aufbauen kann

Zumindest gibt es auf TCP/UDP-Ebene keine Verbindungsmöglichkeit

  • Denn der Zustand "Geschlossen" kann auch dann gelten, wenn das kontaktierte System durch eine Firewall geschützt ist und die Verbindungsversuche auf einem bestimmten Port aktiv ablehnt
  • Das bedeutet aber auch, dass zu der dahinterliegenden Anwendung keine Verbindung aufgebaut werden kann

Filtered / Gefiltert (Blocked / Geblockt)

Der Zustand "Filtered" oder "Gefiltert" ist dann gegeben, wenn der kontaktierte Port durch eine Firewall geschützt ist und auf Verbindungsversuche nicht antwortet

  • Das heißt, die Verbindung wird weder bestätigt (Offen), noch abgelehnt (Geschlossen)
  • Man muss also annehmen, dass der Verbindungsversuch aktiv blockiert wird
  • Das gilt aber nur dann, wenn der Host generell online ist, also auf mindestens einem anderen Port eine Verbindung zulässt

Der Zustand "Gefiltert" drückt aus, dass der Port nicht erreicht werden kann, weil er zum Beispiel durch eine Firewall-Regel blockiert wird

  • Dieser Zustand kann aber auch dadurch entstehen, dass der kontaktierte Host gar nicht erreichbar ist

Was ist ein offener oder geschlossener Port?

Was bedeutet es, wenn von einem "offenen Port" die Rede ist?

  • Ein Port gilt dann als offen, wenn eine Anwendung an einem Port Datenpakete entgegennimmt, die an diesen Port geschickt werden, ohne dass die Anwendung dieses Datenpaket angefordert hat
Zustand Beschreibung
Offen Eine Anwendung ist gestartet und "lauscht" an diesem Port
Geschlossen Keine Anwendung "lauscht" an diesem Port
Ports schließen
  • Anwendung, die auf einem Port "lauscht" beenden
  • Datenpakete an diesen Port werden zurückgewiesen

Sicherheit

Schutz vor "offenen Ports"

Offene Ports sind kein Problem

  • Sie sind Bestandteil einer verbindungsorientierten Kommunikation in einem Netzwerk. "Offene Ports" sind erst dann ein Problem, wenn der Anwender von dem offenen Port, also vom Starten einer Anwendung, die auf einen bestimmten Port hört, nichts mitbekommt
  • Zum Beispiel, wenn die Anwendung im Hintergrund läuft
  • Das können reguläre Systemdienste, aber auch Schadsoftware sein
  • Ein unerwünschter offener Port wäre dann eine Sicherheitslücke
Firewall

Um zu verhindern, dass ein Port unberechtigterweise geöffnet wird, wird oft eine Firewall oder ein Portfilter vorgeschaltet, der Verbindungen von außen auf von innen unberechtigt geöffnete Ports verhindert

Desktop-Firewall

Als Anwender kann man sich vor dem Öffnen eines Ports durch eine unberechtigte Anwendung dadurch schützen, dass man eine Desktop-Firewall installiert, die vor Verbindungsversuchen von innen nach außen warnt und explizit um Erlaubnis fragt

  • Auf diese Weise kann man verhindern, dass Anwendungsprogramme nicht zum Einfallstor werden

Weitere verwandte Themen

  • Netzwerk-Adressen
  • TCP - Transmission Control Protocol
  • UDP - User Datagram Protocol
  • TCP/IP
  • Firewall
  • ICMP - Internet Control Message Protocol


https://www.elektronik-kompendium.de/sites/net/1812041.htm


Portknocking Standard-Ports ändern