21 - Telnet

Telnet ist ein einfaches, unverschlüsseltes Protokoll, das standardmäßig auf Port 23 arbeitet. Aufgrund seiner Sicherheitsmängel wird es selten verwendet, bleibt aber in älteren oder schlecht gesicherten Systemen relevant. Hier sind Techniken, wie Telnet in einem Penetrationstest analysiert und getestet werden kann.


1. Banner Grabbing

Banner Grabbing ist eine Methode, um Informationen über den Telnet-Dienst zu sammeln, wie Versionen und möglicherweise spezifische Hinweise auf Konfigurationen.

1.1 Durchführung

$ telnet <Server-IP> 23   # Verbindet sich zu einem Telnet-Server auf Port 23.
  • Sobald die Verbindung hergestellt ist, sendet der Server ein Banner (z. B. Service-Name, Version).

  • Beispiel:

    Trying 192.168.1.10...
    Connected to 192.168.1.10.
    Escape character is '^]'.
    Welcome to MyServer Telnet 1.0

1.2 Alternative mit Netcat

Falls Telnet nicht verfügbar ist, kann Netcat verwendet werden:

$ nc -vn <Server-IP> 23   # Testet Port 23 und zeigt den Banner an.

2. Bruteforce

Telnet-Server mit schwachen Passwörtern können leicht durch Bruteforce kompromittiert werden. Tools wie Hydra eignen sich dafür.

2.1 Benutzername-Passwort-Bruteforce

$ hydra -l <Benutzername> -P <Passwortliste> <Server-IP> telnet
  • -l: Einzelner Benutzername.

  • -P: Passwortliste mit möglichen Kombinationen.

2.2 Passwort-Spraying

Wenn eine Liste von Benutzern vorhanden ist, kann ein Passwort gegen alle getestet werden:

$ hydra -L <Benutzerliste> -p <Passwort> <Server-IP> telnet
  • -L: Liste mit Benutzernamen.

  • -p: Ein bestimmtes Passwort.


3. Lokale Enumeration nach Telnet-Zugriff

Nach erfolgreicher Anmeldung können Informationen über das System gesammelt werden, um mögliche weitere Schwachstellen zu finden.

3.1 Benutzer- und Rechteinformationen

  • Aktueller Benutzer:

    $ whoami
  • Benutzerrechte und Gruppen:

    $ id

3.2 Systeminformationen

  • Kernel- und Systemversion:

    $ uname -a

3.3 Netzwerküberblick

  • Offene Ports und Verbindungen:

    $ netstat -tuln
  • Netzwerkinterfaces:

    $ ifconfig

3.4 Verzeichnisse durchsuchen

  • Auf kritische Dateien prüfen:

    $ ls -la /etc
  • Nach Passwörtern suchen:

    $ grep -i "password" /etc/* 2>/dev/null

4. Schwachstellenanalyse

Telnet-Dienste sind anfällig für mehrere Arten von Angriffen, da sie keine Verschlüsselung verwenden und oft veraltete Konfigurationen haben.

4.1 Anonymer Zugriff

Einige Telnet-Server erlauben den Zugriff ohne Authentifizierung. Dies kann mit Telnet oder Nmap geprüft werden:

  • Manuelle Prüfung:

    $ telnet <Server-IP> 23
    • Wird kein Benutzername oder Passwort benötigt, handelt es sich um anonymen Zugriff.

  • Automatisierte Prüfung:

    $ nmap --script telnet-brute -p23 <Server-IP>

4.2 Veraltete Versionen

  • Überprüfen Sie die Bannerinformationen auf bekannte Schwachstellen (z. B. CVEs) der eingesetzten Telnet-Server-Version.

  • Tools wie searchsploit können verwendet werden:

    $ searchsploit telnet <Version>

4.3 Klartextübertragung

  • Netzwerkverkehr kann mit Tools wie Wireshark analysiert werden, um Benutzerdaten im Klartext abzufangen:

    Wireshark-Filter: tcp.port == 23

5. Grundlegende Telnet-Befehle

Telnet selbst bietet einfache Befehle zur Verwaltung von Sitzungen:

  • Verbindung herstellen:

    $ telnet <Server-IP> 23
  • Verbindung trennen:

    Ctrl + ]   # Wechselt zur lokalen Telnet-Befehlszeile.
    quit        # Trennt die Verbindung.
  • Wechsel zu einem anderen Host:

    open <Neue-IP> [Port]
  • Status anzeigen:

    status      # Zeigt den aktuellen Verbindungsstatus.

Zusammenfassung

  • Banner Grabbing: Nützlich zur Identifikation von Telnet-Servern und potenziellen Schwachstellen.

  • Bruteforce: Effektiv gegen schwache Authentifizierungen.

  • Lokale Enumeration: Liefert Informationen für die weitere Kompromittierung des Systems.

  • Schwachstellen: Telnet ist unverschlüsselt, oft schlecht konfiguriert und anfällig für verschiedene Angriffe.

Last updated