
Un exploit PoC per CVE-2026-24061 - GNU InetUtils telnetd Argument Injection Authentication Bypass
Le versioni di GNU InetUtils dalla 1.9.3 alla 2.7 sono vulnerabili a una vulnerabilità di bypass dell'autenticazione remota nel server telnetd. Il demone telnetd non riesce a sanitizzare correttamente la variabile d'ambiente USER prima di passarla come argomento da riga di comando al programma login(1). Quando un client telnet invia una variabile d'ambiente USER contenente flag da riga di comando (come -f root), telnetd passa direttamente questo valore non sanitizzato al programma login. L'utility login interpreta il flag -f come un'istruzione per bypassare l'autenticazione, consentendo a un utente malintenzionato di ottenere accesso root non autorizzato senza fornire alcuna credenziale.
Implementazione completa del protocollo Telnet
DO, DONT, WILL e WONT.Iniezione automatica del payload
ENVIRON predisposto con l'iniezione USER=-f root.Shell interattiva
Gestione della connessione
Debug verbose
python3 exploit.py <target> -p <porta> [opzioni]
| Argomento | Descrizione |
|---|---|
target | Indirizzo IP o nome host di destinazione |
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
Stabilimento della connessione
Negoziazione del protocollo
SGA, ECHO e ENVIRON).Consegna del payload
WILL ENVIRON seguito dal payload di subnegoziazione predisposto.Bypass dell'autenticazione
-f root viene iniettato in login(1) per bypassare i controlli delle credenziali.Sessione interattiva
Lo sfruttamento sfrutta l'opzione Telnet ENVIRON (RFC 1572) per iniettare argomenti da riga di comando nella variabile d'ambiente USER.
Quando telnetd passa questo valore non sanitizzato a login -f root, il programma di login interpreta -f come un flag che forza il bypass dell'autenticazione, concedendo accesso root senza verifica della password.
Lo script di sfruttamento implementa:
WILL, WONT, DO, DONT)NOP per mantenere la stabilità della sessione$ 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
#
Gli amministratori di sistema possono rilevare tentativi di sfruttamento monitorando:
ENVIRON.USER contenenti -f o altri flag da riga di comando.Aggiornare a GNU InetUtils versione 2.8 o applicare la patch di sicurezza ufficiale che sanitizza le variabili d'ambiente prima di passararle a login(1).
Questa prova di concetto è destinata esclusivamente a scopi di ricerca sulla sicurezza, validazione di vulnerabilità e ambienti di test autorizzati. Utilizzarla solo su sistemi per i quali si dispone dell'autorizzazione esplicita per eseguire valutazioni di sicurezza.
| Opzione | Descrizione |
|---|
-p, --port | Porta di destinazione (predefinita: 23) |
-v, --verbose | Abilita output di debug verbose |
-t, --timeout | Timeout di connessione in secondi (predefinito: 5) |
-k, --keepalive | Intervallo keepalive in secondi (predefinito: 30) |
-h, --help | Mostra il messaggio di aiuto |