Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-24061 — GNU InetUtils telnetd - Root remoto não autenticado via injeção de variável NEW-ENVIRON. | Kitploit
Ferramentas/GitHubGitHub/franckferman/cve-2026-24061
Scanners de VulnerabilidadesExploraçãoSegurança de RedeTestes de PenetraçãoInteligência de AmeaçasAutenticaçãoAprendizado e EducaçãoRed Teaming
GitHubfranckferman/cve-2026-24061

CVE-2026-24061

GNU InetUtils telnetd - Root remoto não autenticado via injeção de variável NEW-ENVIRON.

Ver Repositório
525há 6 mesesAinda não revisado
Site

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE Score License Python No deps

GNU InetUtils telnetd - Root Remoto Não Autenticado via Injeção de Variável NEW-ENVIRON

Visão Geral - Análise Técnica - Versões Afetadas - Uso - Remediação - Referências


Visão Geral da Vulnerabilidade

CVE-2026-24061 é uma vulnerabilidade crítica de bypass de autenticação no daemon telnetd distribuído como parte do GNU InetUtils. A falha reside no tratamento da opção Telnet NEW-ENVIRON (RFC 1572) durante o handshake inicial do protocolo.

A causa raiz é a falha em sanitizar variáveis de ambiente fornecidas pelo cliente antes de passá-las ao programa login(1). Quando o daemon Telnet recebe um pacote de sub-negociação NEW-ENVIRON IS contendo a variável USER com o valor -f root, ele passa esse valor não sanitizado diretamente para o binário login do sistema.

Em sistemas onde login aceita a flag -f (forçar login sem verificação de senha), isso resulta em uma sessão root não autenticada sendo concedida ao atacante remoto.

Esta classe de vulnerabilidade tem precedente histórico: CVE-2001-0797 no SysV telnetd e o conhecido bypass -f do telnetd Linux de 1994 exploraram a mesma falha fundamental de não sanitizar argumentos originados de variáveis de ambiente passados para binários privilegiados.

Nenhuma credencial necessária. Nenhum acesso prévio necessário. Uma única sequência de pacotes de rede alcança root.

Análise Técnica

Causa Raiz

O telnetd do GNU InetUtils processa a sub-negociação NEW-ENVIRON (código de opção 0x27, conforme RFC 1572) para coletar variáveis de ambiente fornecidas pelo cliente. Essas variáveis são montadas em um vetor de argumentos e passadas para execve(2) ao iniciar o login(1).

A vulnerabilidade é acionada da seguinte forma:

  1. O servidor envia IAC DO NEW-ENVIRON, solicitando variáveis de ambiente do cliente.
  2. O cliente malicioso responde com IAC WILL NEW-ENVIRON.
  3. O servidor segue com IAC SB NEW-ENVIRON SEND IAC SE.
  4. O cliente envia o payload injetado:
IAC SB NEW-ENVIRON IS
  VAR "USER" VALUE "-f root"
IAC SE
  1. O telnetd constrói a invocação do login como login -f root.
  2. O login(1) interpreta -f como "forçar login, pular autenticação" e autentica o usuário especificado (root) sem exigir senha.

Detalhamento em Nível de Protocolo

EtapaDireçãoBytes Telnet (hex)Significado
1S -> CFF FD 27IAC DO NEW-ENVIRON
2C -> SFF FB 27IAC WILL NEW-ENVIRON
3S -> CFF FA 27 01 FF F0IAC SB NEW-ENVIRON SEND IAC SE
4C -> SFF FA 27 00 00 55 53 45 52 01 2D 66 20 72 6F 6F 74 FF F0IAC SB NEW-ENVIRON IS VAR "USER" VALUE "-f root" IAC SE

Por Que -f root Funciona

O binário login(1) em muitos sistemas Linux aceita a flag -f <usuário> para logins "pré-autenticados", historicamente usada por multiplexadores de terminal e rlogin. Quando o telnetd constrói sua chamada exec e falha em remover hífens iniciais ou validar strings semelhantes a opções nos valores de variáveis de ambiente, ele inadvertidamente passa flags controladas pelo atacante diretamente para o login.

A chamada efetiva se torna:

execve("/bin/login", ["login", "-f", "root"], envp);

Cenário de Ataque

Atacante                                    telnetd vulnerável (porta 23)
   |                                                   |
   |------- TCP SYN (porta 23) ----------------------->|
   |<------ TCP SYN-ACK -------------------------------|
   |------- TCP ACK ---------------------------------->|
   |                                                   |
   |<------ Banner Telnet + IAC DO NEW-ENVIRON --------|
   |------- IAC WILL NEW-ENVIRON --------------------->|
   |<------ IAC SB NEW-ENVIRON SEND IAC SE ------------|
   |                                                   |
   |------- IAC SB NEW-ENVIRON IS                      |
   |        VAR "USER" VALUE "-f root" IAC SE -------->|
   |                                                   |
   |        [telnetd chama: login -f root]             |
   |                                                   |
   |<------ Prompt de shell root (#) ------------------|
   |                                                   |
   |------- id; whoami; cat /etc/shadow -------------->|
   |<------ uid=0(root) root /etc/shadow conteúdo -----|

Pré-requisitos:

  • Sistema alvo executando telnetd do GNU InetUtils (TCP/23 aberto)
  • Versão não corrigida do inetutils
  • Binário login(1) suporta a flag -f (padrão na maioria das distribuições Linux)
  • Nenhum firewall bloqueando TCP/23

Versões Afetadas

SoftwareVersões AfetadasStatus
GNU InetUtils telnetd<= 2.x (versão corrigida específica a definir)Vulnerável
Distribuições que distribuem GNU inetutils não corrigidoVáriasVerificar aviso do fornecedor

Verifique se sua distribuição distribui uma versão corrigida. Muitos sistemas modernos têm Telnet desabilitado por padrão; a exposição requer um telnetd explicitamente em execução.

Pontuação CVSS

MétricaValor
Pontuação Base CVSS v3.19.8 (Crítico)
Vetor de AtaqueRede
Complexidade do AtaqueBaixa
Privilégios NecessáriosNenhum
Interação do UsuárioNenhuma
EscopoInalterado
Impacto na ConfidencialidadeAlto
Impacto na IntegridadeAlto
Impacto na DisponibilidadeAlto
String do VetorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Mapeamento MITRE ATT&CK

ID ATT&CKTáticaTécnicaRelevância
T1190Acesso InicialExplorar Aplicação Exposta ao PúblicoExploração direta do telnetd pela rede
T1059ExecuçãoInterpretador de Comandos e ScriptsExecução de shell pós-exploração
T1078.004Escalação de Privilégio / Evasão de DefesaContas Válidas: Contas LocaisBypass de autenticação gera uma sessão root válida
T1548Escalação de PrivilégioAbusar Mecanismo de Controle de ElevaçãoFlag login -f abusada para contornar PAM/autenticação
T1046DescobertaDescoberta de Serviços de RedeComponente de varredura em massa do PoC

Instalação

Requisitos: Python 3 (apenas biblioteca padrão, zero dependências externas).

git clone https://github.com/franckferman/CVE_2026_24061.git
cd CVE_2026_24061

Nenhum pip install necessário. Ambos os scripts usam apenas a biblioteca padrão do Python.

Estrutura do Projeto

Baixar ferramenta