
Script Python pour détecter la vulnérabilité CVE-2026-24061 de telnetd via l'injection NEW-ENVIRON, fournissant une évaluation des risques et des recommandations d'atténuation.
Un outil de test de sécurité en Python pour détecter la vulnérabilité à l'injection de variables d'environnement dans les serveurs telnetd via l'option telnet NEW-ENVIRON.
Ce script teste les serveurs telnetd pour CVE-2026-24061, une vulnérabilité qui permet aux attaquants d'injecter des variables d'environnement via l'option telnet NEW-ENVIRON. Si un serveur gère incorrectement ces variables d'environnement, il peut être vulnérable à l'injection de commandes ou à des attaques de contournement d'authentification.
Le script fournit une sortie détaillée et colorée avec une progression étape par étape, une gestion complète des erreurs, et un résumé final qui inclut le résultat du test, l'évaluation des risques et l'analyse d'impact.
CVE-2026-24061 est une vulnérabilité de sécurité dans les serveurs telnetd qui gèrent incorrectement les variables d'environnement envoyées via l'option telnet NEW-ENVIRON (RFC 1572).
La vulnérabilité se produit lorsque les serveurs telnetd :
L'option NEW-ENVIRON (RFC 1572) permet aux clients telnet d'envoyer des variables d'environnement au serveur. Un serveur vulnérable peut accepter et traiter ces variables sans assainissement, permettant potentiellement à un attaquant d'injecter des valeurs malveillantes qui pourraient conduire à l'exécution de commandes ou au contournement de l'authentification.
Aucune installation requise. Le script est autonome et n'utilise que des modules de la bibliothèque standard Python.
Linux (Ubuntu/Debian) :
sudo apt-get update
sudo apt-get install python3
macOS (avec Homebrew) :
# Installer Homebrew s'il n'est pas déjà installé
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Installer Python 3
brew install python3
# Vérifier l'installation
python3 --version
Windows :
python --version
Ou avec PowerShell :
python --version
Linux/macOS :
./telnetd_CVE‑2026‑24061_test.py <hôte> [port]
Windows (Invite de commandes) :
python telnetd_CVE‑2026‑24061_test.py <hôte> [port]
Windows (PowerShell) :
python telnetd_CVE‑2026‑24061_test.py <hôte> [port]
Linux/macOS :
# Tester le port telnet par défaut (23)
./telnetd_CVE‑2026‑24061_test.py 10.0.2.134
# Tester un port personnalisé
./telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
# Rendre le script exécutable (si nécessaire)
chmod +x telnetd_CVE‑2026‑24061_test.py
# Ou exécuter directement avec python3
python3 telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
Windows (Invite de commandes) :
REM Tester le port telnet par défaut (23)
python telnetd_CVE‑2026‑24061_test.py 10.0.2.134
REM Tester un port personnalisé
python telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
Windows (PowerShell) :
# Tester le port telnet par défaut (23)
python telnetd_CVE‑2026‑24061_test.py 10.0.2.134
# Tester un port personnalisé
python telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
macOS (Python Homebrew) :
# Si vous utilisez Python installé via Homebrew, utilisez python3 explicitement
python3 telnetd_CVE‑2026‑24061_test.py 10.0.2.134
# Ou rendez le script exécutable et exécutez-le directement
chmod +x telnetd_CVE‑2026‑24061_test.py
./telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
NO_COLOR est définieLe script fournit quatre résultats possibles :
[-] NEW-ENVIRON non accepté
[RÉSULTAT] NON IMPACTÉ
Signification : Le serveur ne prend pas en charge ou n'accepte pas l'option NEW-ENVIRON. Le serveur n'est pas vulnérable à ce vecteur d'attaque spécifique.
Informations du résumé :
Action requise :
[!] ENV accepté par le serveur
[RÉSULTAT] PROBABLEMENT IMPACTÉ (CVE-2026-24061)
Signification : Le serveur a accepté l'option NEW-ENVIRON et semble avoir traité la variable d'environnement injectée. Le serveur est probablement vulnérable à CVE-2026-24061.
Informations du résumé :
Action requise :
[+] Aucune réponse à l'injection ENV
[RÉSULTAT] NON CONCLUANT
Signification : Le serveur a accepté NEW-ENVIRON mais n'a pas fourni de réponse claire. Une vérification manuelle est recommandée.
Informations du résumé :
Action requise :
[RÉSULTAT] ÉCHEC DU TEST - Erreur de communication
Signification : Le test n'a pas pu être terminé en raison d'une erreur de communication.