Netzwerk/L4/Port/Ändern
Standard-Ports ändern
- Standard-Ports aus Sicherheitsgründen ändern?
Standard-Ports, zwischen 0 und 1.023 haben den Nachteil, dass die Zuordnung zwischen Port-Nummer und Anwendung bekannt ist
- Was Absicht und auch gut ist
- Ein Webbrowser weiß, dass ein Webserver auf Port 80 zu erreichen ist
- Somit muss sich der Anwender auf dieser Ebene um nichts kümmern
- Es gibt aber auch Anwendungen, die den Nutzer Authentifizieren müssen
- Zum Beispiel bei SSH zur Remote-Steuerung oder Fernwartung von Computern
- Ein Angreifer macht sich mit dem Wissen, dass der SSH-Server auf Port 22 hört, zu Nutze, um seine Angriffe auf diesen Port gegen die Authentifizierung laufen zu lassen
- Sein Ziel wäre, die Kontrolle über den Server per SSH zu übernehmen
- Wenn ein Angreifer einen Server unter seine Kontrolle bringen will, dann wird er also versuchen, den SSH-Server anzugreifen
- Um das zu verhindern, gehen manche Systemadministratoren dazu über, Dienste, wie zum Beispiel SSH, auf andere, als den Standard-Port hören zu lassen
- Damit erschweren Sie es Angreifern eventuelle Schwachstellen allzu leicht zu finden
- Denn wenn ein Angreifer einen SSH-Server nur auf Port 22 vermutet, der richtige Port aber woanders liegt, dann lässt sich auf diese Weise ein Angriff vielleicht verhindern
- Das ist allerdings nur bedingt richtig
- Korrekt ist, dass man mit dem Verschleiern von Ports nur automatisierte Port-Scans und unerfahrende Script-Kiddies davon abhalten kann, angreifbare Dienste zu finden
- Den erfahrenen Angreifer, der wirklich in ein System eindringen will, wird man so nicht davon abhalten, sondern seine Bemühungen höchstens etwas verzögern
- Dazu muss der Angreifer alle 65.536 Ports eines Systems scannen und die tatsächlich dahinter lauschenden Anwendungen prüfen
- Das ist natürlich aufwendig, aber nicht unvorstellbar
- Mit den richtigen Tools und etwas Zeit bekommt man schnell heraus, wenn ein SSH-Server auf einem anderen Port hört, als den Standard-Port
- Standard-Ports zu ändern hat für normale Nutzer Nachteile
- Die müssen wissen, auf welchem Port welcher Dienst läuft
- Da typische Clients von Standard-Ports ausgehen, muss bei der Adressierung immer der geänderte Port bekannt gegeben werden
- Das ist einerseits unbequem
- Andererseits wird es schnell kompliziert, wenn verschiedene Systeme für den gleichen Dienst unterschiedliche Port-Nummern aufweisen
- Aus diesem Grund definiert man dann die Port-Vergabe wieder zentral, was dann allerdings den Nachteil hat, dass man es einem Angreifer dann wieder leichter macht
- Eine grundsätzliche Empfehlung kann man nicht so einfach geben
- Das Anwendungen auf Standard-Ports leichter anzugreifen sind, ist klar
- Allerdings muss man die Port-Änderung gut überlegen
- Wo es sinnvoll ist, ist bei Systemen, die über das Internet erreichbar sind
- Um die Last auf die Systeme zu begrenzen, macht es Sinn Standard-Ports für SSH und andere Remote-Zugängen zu ändern
- Das verhindert, dass systematische Port-Scans auf einen offenen SSH-Port treffen
- Andererseits muss man die aufgestellte Sicherheits-Policy anzweifeln, wenn Standard-Ports geändert werden müssen, weil ein Sicherheitsrisiko vorliegt
- Wenn das so sein sollte, dann ist der eigentlich richtige Weg, Verbindungen von entfernten Rechnern auf diesen Port gar nicht zu erlauben
- Zum Beispiel sollte der SSH-Server nur lokal, aber nicht aus dem öffentlichen Netz erreichbar sein
- Wenn es sich nicht vermeiden lässt, dann muss man sich darüber im Klaren sein, dass auf so einem Server keine kritischen Daten liegen und Anwendungen laufen dürfen
- Denn ein solches System ist grundsätzlich angreifbar
- In so einem Fall sind dann zusätzliche Sicherheitsmaßnahmen notwendig
- Das Ändern des Standard-Ports ist dann nur eine Option