Wie funktionieren Ports?

Hallo

Ich habe mal ein par allgemeine Fragen zum Thema Ports:

Als ich letztens meinen Router einrichtete stellten sich bei mir die Fragezeichen nur so auf.
Ich wollte die Ports für einen HTTP Server einrichten, welcher auf meinem Rechner läuft, also gab ich den Port 80 TCP und UDP frei.
trotz richtigen Pfad bestehend aus ("http://84.xxx.xxx.xxx/") kam ich zu keinem Ergebnis.
Also richtete ich einen DYNDNS Account ein, stellte den Router entsprechend ein und es funktionierte.

Meine Frage:
Unterscheidet man zwischen Eingangsports und Ausgangsports in einem Router?
Blockt ein Router nur Ports, die von außen angesteuert werden?
Über welche Ports geht zum Beispiel der Internetexplorer? 80? 8080?
Wenn diese Ports immer frei sind, ist man da nicht angreifbar? Nach Trojanerinfektion etc.?
Trotz nicht extra freigegebener Ports hat der IE immer Zugriff auf das Netz! (Router SMC-Barricade)
Wie funktioniert das mit der Anfrage, der Elaubnis, dem Zugriff auf Ports beim Datenaustausch eigentlich?

Bin absolut ratlos, ich freue mich, wenn Ihr mir weiterhelfen könntet.

Mit freundlichem Gruß
Andy

Hallo,

Unterscheidet man zwischen Eingangsports und Ausgangsports in
einem Router?

Ja. Standardeinstellung ist: ausgehende Verbindungen werden nicht geblockt, eingehende werden geblockt = nicht geroutet.

Blockt ein Router nur Ports, die von außen angesteuert werden?

Ja. Plus eventuell ein paar „gefährliche“. Hängt vom Router ab.

Über welche Ports geht zum Beispiel der Internetexplorer?

bei http ohne weitere Angabe Port 80. Aber man kann den Port auch in dieser Form angeben: http://domain.tld:12345/
Für https 443.

Wenn diese Ports immer frei sind, ist man da nicht angreifbar?

Wenn du einen Server betreibst, gehts du ein gewisses Risiko ein. Ebenso wenn du mit dem Internet Explorer surfst. Bei den meisten Browsern ist das Risiko kleiner, aber sobald man im Internet ist, ist man potentiell gefährdet. Wie im Strassenverkehr :wink:

Nach Trojanerinfektion etc.?

Dann ist es eh zu spät :wink:

Trotz nicht extra freigegebener Ports hat der IE immer Zugriff
auf das Netz! (Router SMC-Barricade)
Wie funktioniert das mit der Anfrage, der Elaubnis, dem
Zugriff auf Ports beim Datenaustausch eigentlich?

Da lass ich jetzt mal jemand anderen ran :wink:

Grüße,
Moritz

Ich wollte die Ports für einen HTTP Server einrichten, welcher
auf meinem Rechner läuft, also gab ich den Port 80 TCP und UDP
frei.

Port 80 TCP sollte ausreichen.

trotz richtigen Pfad bestehend aus ("http://84.xxx.xxx.xxx/")
kam ich zu keinem Ergebnis.

Doch, zu irgendeinem Ergebnis kamst du. Vielleicht gab es eine Fehlermeldung, vielleicht passierte gar nicht, vielleicht brach irgendetwas nach einem Timeout ab, aber das alles ist ein Ergebnis.

Also richtete ich einen DYNDNS Account ein, stellte den Router
entsprechend ein und es funktionierte.

Der Webserver muss ja nicht auf 84.x.y.z antworten, wenn er so konfiguriert ist, dass er auf http://www.knacknwuppdich.de reagieren soll. Hängt vom Webserver ab und von dessen Konfiguration.

Meine Frage:
Unterscheidet man zwischen Eingangsports und Ausgangsports in
einem Router?

Ja. Ein Webserver, der auf Port 80 angesprochen wird, benötigt einen anderen Port zum antworten, beispielsweise Port 21788 oder 31276 oder was auch immer. Der Router muss eine derartige Antwort zulassen.

Blockt ein Router nur Ports, die von außen angesteuert werden?

Was die Soho-Router angeht: ja.

Über welche Ports geht zum Beispiel der Internetexplorer?
80? 8080?

Der IE geht über die gleichen Ports wie jeder andere Browser. Die Verbindung zu einem Webserver findet über im Allgemeinen über Port 80 des Webservers statt. Es kann aber auch jeder andere Port sein (beispielsweise http://www.knacknwuppdich.de:12345).

Wenn diese Ports immer frei sind, ist man da nicht angreifbar?

Ports sind nur offen, wenn sie durch ein Programm bedient werden. Dein Webserver ist so ein Programm, das Port 80 offen hält. Ist der Webserver Scheiße und kann erfolgreich angegriffen werden, dann hast du halt ein Problem auf Port 80.

Natürlich kannst du deinen Webserver auch so konfigurieren, dass er auf Port 12345 lauscht. Ist der Webserver Scheiße und kann erfolgreich angegriffen werden, dann hast du halt ein Problem auf Port 12345, während Port 80 gar nicht existiert.

Trotz nicht extra freigegebener Ports hat der IE immer Zugriff
auf das Netz! (Router SMC-Barricade)

Auf welches Netz?

Wie funktioniert das mit der Anfrage, der Elaubnis, dem
Zugriff auf Ports beim Datenaustausch eigentlich?

Dazu möchte ich nicht auch noch 48 Seiten schreiben, siehe die Dienste Google und Wikipedia.

Stefan

Hallo Andy,

Wenn diese Ports immer frei sind, ist man da nicht angreifbar?
Nach Trojanerinfektion etc.?

Nur mit der IP-Adresse alleine kann man keine Kommunikation aufbauen. Es muss da noch irgendwie eine Information dabei sein, welchen Dienst (Programm) die Daten erhalten soll.

Bei TCP/IP ist das mit den Ports gelöst. Die Port-Adresse ist 16Bit lang und somit sind etwas über 65’000 Ports möglich.

Im Prinzip sind die Ports so eine Art Postfächer in welchen die Daten abgelegt werden. Standardmässig sitz hinter jedem Postfach ein kleines Programm, welches die Daten wegschmeisst und dem Sender eine Fehlermeldung zukommen lässt. Beim Stealth-Mode werden die Daten nur weggeschmissen.
Ist nun irgendein Dienst installiert, so ersetzt er das Standardprogramm, setzt sich selbst hinter das Postfach und wartet, dass da mal Daten kommen mit denen er etwas anstellen kann.

Bei verschiedenen Diensten hat man sich darauf geeinigt hinter welchen Ports die „lauern“ sollen, z.B. wartet HTTP hinter dem Postfach Nr. 80 und jeder Browser spricht automatisch auch dieses Port an.

Durch umkonfigurieren kannst du aber auch HTTP hinter jedes der über 65’000 anderen Postfächer stellen, allerdings muss man dann dem Browser mitteilen welches du gerade verwendest, da er ja standardmässig Port 80 verwendet. In der Hackerszene wird das of gemacht, damit nicht jeder auf den Server kommt…

Das Problem ist nun, dass z.B. Windows jede Menge Dinge hinter den Ports installiert um z.B. über das Netzwerk auf die Festplatten anderer Rechner zugreiffen zu können…

Manche Trojaner installieren sich hinter einem Port und warten darauf, dass ihr Meister mit ihnen Kontakt aufnimmt. Das Problem sind also nicht die offenen Ports, sondern die Funktionen die dahinter bereitgestellt werden.
Das Problem ist nun, dass wenn sich eine Malware hinter einem Port installiert, diese ja auch die PFW überlisten kann, da beide Programme auf dem selben Rechner abgearbeitet werden.

MfG Peter(TOO)

Im Prinzip sind die Ports so eine Art Postfächer in welchen
die Daten abgelegt werden. Standardmässig sitz hinter jedem
Postfach ein kleines Programm, welches die Daten wegschmeisst
und dem Sender eine Fehlermeldung zukommen lässt.

Es mag vielleicht kleinlich erscheinen, aber standardmäßig sitzt
kein Programm dahinter. In Fall einer Verbindungsaufnahme kann
der TCP/IP-Stack die Daten an kein Programm weiterleiten und sendet
eine Meldung an den Client-Computer zurück, die dort als Meldung
connection refused oder ähnlich angezeigt wird.

Beim Stealth-Mode werden die Daten nur weggeschmissen.

Ein stealth mode gibt es im TCP/IP-Stack gar nicht. Der wird
durch eine Firewall erzeugt.

Ist nun irgendein Dienst installiert, so ersetzt er das
Standardprogramm,

Da es kein Standardprogramm gibt, kann es auch nicht ersetzt werden.
Richtig ist, dass der Port nun aktiviert ist (open state).

Durch umkonfigurieren kannst du aber auch HTTP hinter jedes
der über 65’000 anderen Postfächer stellen, allerdings muss
man dann dem Browser mitteilen welches du gerade verwendest,
da er ja standardmässig Port 80 verwendet. In der Hackerszene
wird das of gemacht, damit nicht jeder auf den Server
kommt…

Dort würde ich es am wenigsten vermuten. Meistens werden die Ports
von denen verändert, die plötzlich festellen: „Hey! Ich kann ja den
Port verändern!“. Dann gibt es noch die, die zwei gleichartige Server
auf einer Maschine laufen lassen wollen und für den zweiten Server
einen anderen Port nehmen müssen, weil nicht zwei Programme auf dem
gleichen Port lauschen können.

Ein Portscanner findet immer alle offenen Ports, und es macht wenig
Sinn, mit einer anderen Portzuweisung etwas verstecken zu wollen.

Das Problem ist nun, dass z.B. Windows jede Menge Dinge hinter
den Ports installiert um z.B. über das Netzwerk auf die
Festplatten anderer Rechner zugreiffen zu können…

Richtig ist, dass Windows standardmäßig eine Menge Programme startet,
die dann auf verschiedenen Ports auf die Verbindung durch andere
Rechner warten. Das wäre nicht wirklich schlimm, wenn man sich darauf
verlassen könnte, dass diese Programme tatsächlich nur autorisiserte
Personen oder Rechner zulassen, oder man wenigstens wüsste, wer
autorisiert ist und wer nicht…

Im Zweifel gilt: jedes Programm, dass einen Socket öffnet und auf
Verbindungsaufnahme aus dem Netz wartet (also ein Server), ist mit
Misstrauen zu beobachten und sollte beendet werden, wenn man es nicht
braucht.

Manche Trojaner installieren sich hinter einem Port und warten
darauf, dass ihr Meister mit ihnen Kontakt aufnimmt. Das
Problem sind also nicht die offenen Ports, sondern die
Funktionen die dahinter bereitgestellt werden.

Genau so ist es.

Stefan

Hallo Stefan,

Im Prinzip sind die Ports so eine Art Postfächer in welchen
die Daten abgelegt werden. Standardmässig sitz hinter jedem
Postfach ein kleines Programm, welches die Daten wegschmeisst
und dem Sender eine Fehlermeldung zukommen lässt.

Es mag vielleicht kleinlich erscheinen, aber standardmäßig
sitzt
kein Programm dahinter. In Fall einer
Verbindungsaufnahme kann
der TCP/IP-Stack die Daten an kein Programm weiterleiten und
sendet
eine Meldung an den Client-Computer zurück, die dort als
Meldung
connection refused oder ähnlich angezeigt wird.

Hmm, wenn ich jetzt kleinlich bin, frage ich dich was ein Programm ist und wie eine CPU überhaupt irgendetwas OHNE ein Programm tun kann ???

Im Prinzip besteht der TCP/IP-Stack aus einer Tabelle mit 216 Zeigern auf Funktionen. Praktisch wird das ganze etwas anders implementiert um Speicher zu sparen.

Ist nun irgendein Dienst installiert, so ersetzt er das
Standardprogramm,

Da es kein Standardprogramm gibt, kann es auch nicht ersetzt
werden.

Nenn es wie du willst. Normalerweise nennt man so etwas „Default Handler“ und das ist nun mal ein Stück Software !

In der Hackerszene
wird das of gemacht, damit nicht jeder auf den Server
kommt…

Dort würde ich es am wenigsten vermuten.

Eine zeitlang war Port 8080 in der Szene ganz beliebt, dann hatte man nur ohne Proxy Zugriff. Aber viele Hackerserver haben unter Port 80 eine ganz harmlose Seite und hinter irgendeinem anderen Port sind dann die rechlich nicht ganz einwandfreien Dine versteckt.

MfG Peter(TOO)

Ich danke allen, die mir bei dieser Frage weitergeholfen haben.
Jetzt bin ich um einiges schlauer geworden und verstehe die ganze Sache schon besser.
Man sieht sich.

Mit freundlichem Gruß
blueeyedmen