
Um PoC de exploração para CVE-2026-24061 - Bypass de Autenticação por Injeção de Argumentos no telnetd do GNU InetUtils
As versões 1.9.3 a 2.7 do GNU InetUtils são vulneráveis a uma falha remota de bypass de autenticação no servidor telnetd. O daemon telnetd não sanitiza adequadamente a variável de ambiente USER antes de passá-la como argumento de linha de comando para o programa login(1). Quando um cliente telnet envia uma variável de ambiente USER contendo flags de linha de comando (como -f root), o telnetd passa diretamente esse valor não sanitizado para o programa login. O utilitário login interpreta a flag -f como uma instrução para ignorar a autenticação, permitindo que um atacante obtenha acesso root não autorizado sem fornecer nenhuma credencial.
Implementação Completa do Protocolo Telnet
DO, DONT, WILL e .WONTInjeção Automática de Payload
ENVIRON com a injeção USER=-f root.Shell Interativo
Gerenciamento de Conexão
Depuração Detalhada
python3 exploit.py <alvo> -p <porta> [opções]
| Argumento | Descrição |
|---|---|
target | Endereço IP ou nome de host do alvo |
| Opção | Descrição |
|---|---|
-p, --port | Porta do alvo (padrão: 23) |
-v, --verbose | Ativa saída de depuração detalhada |
-t, --timeout | Timeout de conexão em segundos (padrão: 5) |
-k, --keepalive | Intervalo de keepalive em segundos (padrão: 30) |
-h, --help | Exibe a mensagem de ajuda |
python3 exploit.py 192.168.1.100
python3 exploit.py 192.168.1.100 -p 2323 -v
python3 exploit.py 10.0.0.5 -p 2323 -k 60 -t 10
Estabelecimento da Conexão
Negociação do Protocolo
SGA, ECHO e ENVIRON).Entrega do Payload
WILL ENVIRON seguido do payload de subnegociação elaborado.Bypass de Autenticação
-f root é injetado em login(1) para ignorar as verificações de credenciais.Sessão Interativa
O exploit aproveita a opção Telnet ENVIRON (RFC 1572) para injetar argumentos de linha de comando na variável de ambiente USER.
Quando o telnetd passa esse valor não sanitizado para login -f root, o programa login interpreta -f como uma flag que força o bypass de autenticação, concedendo acesso root sem verificação de senha.
O script do exploit implementa:
WILL, WONT, DO, DONT)NOP de keepalive para manter a estabilidade da sessão$ python3 exploit.py 127.0.0.1 -p 2323
[!] Coded By: K3ysTr0K3R
[*] Telnet Authentication Bypass
[*] Connecting to 127.0.0.1:2323
[+] Connection established
[+] Exploit payload sent (19 bytes)
# id
uid=0(root) gid=0(root) groups=0(root)
# whoami
root
#
Administradores de sistemas podem detectar tentativas de exploração monitorando:
ENVIRON.USER contendo -f ou outras flags de linha de comando.Atualize para a versão 2.8 do GNU InetUtils ou aplique o patch de segurança oficial que sanitiza as variáveis de ambiente antes de passá-las para login(1).
Esta prova de conceito destina-se exclusivamente a pesquisa de segurança, validação de vulnerabilidades e ambientes de teste autorizados. Use apenas contra sistemas para os quais você tenha permissão explícita para realizar avaliações de segurança.