
Python-Skript zur Erkennung der CVE-2026-24061 telnetd-Schwachstelle mittels NEW-ENVIRON-Injection, mit Risikobewertung und Anleitung zur Schadensbegrenzung.
Ein Python-Sicherheitstesttool zur Erkennung von Schwachstellen bei der Umgebungsvariablen-Injektion in telnetd-Servern über die NEW-ENVIRON-Telnet-Option.
Dieses Skript testet telnetd-Server auf CVE-2026-24061, eine Schwachstelle, die es Angreifern ermöglicht, Umgebungsvariablen über die NEW-ENVIRON-Telnet-Option einzuschleusen. Wenn ein Server diese Umgebungsvariablen unsachgemäß verarbeitet, kann er anfällig für Befehlsinjektion oder Authentifizierungsumgehung sein.
Das Skript bietet eine detaillierte, farbcodierte Ausgabe mit schrittweisem Fortschritt, umfassender Fehlerbehandlung und einer abschließenden Zusammenfassung, die das Testergebnis, die Risikobewertung und die Auswirkungsanalyse enthält.
CVE-2026-24061 ist eine Sicherheitsschwachstelle in telnetd-Servern, die über die NEW-ENVIRON-Telnet-Option (RFC 1572) gesendete Umgebungsvariablen unsachgemäß verarbeiten.
Die Schwachstelle tritt auf, wenn telnetd-Server:
Die NEW-ENVIRON-Option (RFC 1572) ermöglicht es Telnet-Clients, Umgebungsvariablen an den Server zu senden. Ein anfälliger Server kann diese Variablen ohne Bereinigung akzeptieren und verarbeiten, wodurch ein Angreifer möglicherweise bösartige Werte einschleusen kann, die zu Befehlsausführung oder Authentifizierungsumgehung führen könnten.
Keine Installation erforderlich. Das Skript ist eigenständig und verwendet nur Module aus der Python-Standardbibliothek.
Linux (Ubuntu/Debian):
sudo apt-get update
sudo apt-get install python3
macOS (mit Homebrew):
# Homebrew installieren, falls noch nicht geschehen
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Python 3 installieren
brew install python3
# Installation überprüfen
python3 --version
Windows:
python --version
python --version
Linux/macOS:
./telnetd_CVE‑2026‑24061_test.py <host> [port]
Windows (Eingabeaufforderung):
python telnetd_CVE‑2026‑24061_test.py <host> [port]
Windows (PowerShell):
python telnetd_CVE‑2026‑24061_test.py <host> [port]
Linux/macOS:
# Standard-Telnet-Port testen (23)
./telnetd_CVE‑2026‑24061_test.py 10.0.2.134
# Benutzerdefinierten Port testen
./telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
# Skript ausführbar machen (falls erforderlich)
chmod +x telnetd_CVE‑2026‑24061_test.py
# Oder direkt mit python3 ausführen
python3 telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
Windows (Eingabeaufforderung):
REM Standard-Telnet-Port testen (23)
python telnetd_CVE‑2026‑24061_test.py 10.0.2.134
REM Benutzerdefinierten Port testen
python telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
Windows (PowerShell):
# Standard-Telnet-Port testen (23)
python telnetd_CVE‑2026‑24061_test.py 10.0.2.134
# Benutzerdefinierten Port testen
python telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
macOS (Homebrew Python):
# Bei Homebrew-installiertem Python python3 explizit verwenden
python3 telnetd_CVE‑2026‑24061_test.py 10.0.2.134
# Oder ausführbar machen und direkt ausführen
chmod +x telnetd_CVE‑2026‑24061_test.py
./telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
NO_COLOR gesetzt istDas Skript liefert vier mögliche Ergebnisse:
[-] NEW-ENVIRON nicht akzeptiert
[ERGEBNIS] NICHT BETROFFEN
Bedeutung: Der Server unterstützt oder akzeptiert die NEW-ENVIRON-Option nicht. Der Server ist nicht anfällig für diesen spezifischen Angriffsvektor.
Zusammenfassungsinformationen:
Erforderliche Maßnahmen:
[!] ENV vom Server akzeptiert
[ERGEBNIS] WAHRSCHEINLICH BETROFFEN (CVE-2026-24061)
Bedeutung: Der Server hat die NEW-ENVIRON-Option akzeptiert und scheint die injizierte Umgebungsvariable verarbeitet zu haben. Der Server ist wahrscheinlich anfällig für CVE-2026-24061.
Zusammenfassungsinformationen:
Erforderliche Maßnahmen:
[+] Keine Antwort auf ENV-Injektion
[ERGEBNIS] NICHT SCHLÜSSIG
Bedeutung: Der Server hat NEW-ENVIRON akzeptiert, aber keine klare Antwort geliefert. Eine manuelle Überprüfung wird empfohlen.
Zusammenfassungsinformationen:
Erforderliche Maßnahmen:
[ERGEBNIS] TEST FEHLGESCHLAGEN - Kommunikationsfehler
Bedeutung: Der Test konnte aufgrund eines Kommunikationsfehlers nicht abgeschlossen werden.
Zusammenfassungsinformationen:
Erforderliche Maßnahmen:
IAC DO NEW_ENVIRON, um die NEW-ENVIRON-Option anzufordernIAC WILL NEW_ENVIRON)USER=-f root über NEW-ENVIRON-f ist eine gängige Technik zur Login-UmgehungDas Skript verwendet standardmäßige Telnet-Protokollbytewerte:
IAC (255): Interpret As CommandDO (253): Option aktivieren anfordernWILL (251): Zustimmen, Option zu aktivierenSB (250): SubverhandlungsbeginnSE (240): SubverhandlungsendeNEW_ENVIRON (39): NEW-ENVIRON-Optionsnummer (RFC 1572)Die Injektions-Payload folgt dem RFC-1572-Format:
IAC SB NEW_ENVIRON IS VAR USER <0x01>-f root IAC SE
Wobei:
IAC SB: Subverhandlung startenNEW_ENVIRON: OptionskennungIS: Informations-SubverhandlungVAR: Variablentyp-IndikatorUSER: Name der Umgebungsvariable0x01: VALUE-Byte-f root: Injizierter WertIAC SE: Subverhandlung beendenDas Skript enthält eine umfassende Fehlerbehandlung für:
Alle Fehler werden mit klaren, farbcodierten, benutzerfreundlichen Meldungen gemeldet, die Folgendes enthalten:
⚠️ Wichtig: Dieses Skript ist nur für autorisierte Sicherheitstests bestimmt.
Wenn ein Server als anfällig befunden wird:
Sofortmaßnahmen:
Konfigurationsänderungen:
Langfristige Lösungen:
Das Skript erkennt automatisch die Terminal-Farbunterstützung und verwendet ANSI-Farben für bessere Lesbarkeit:
NO_COLOR=1 setzenFORCE_COLOR=1 setzenBeispiel:
# Farben deaktivieren
NO_COLOR=1 ./telnetd_CVE‑2026‑24061_test.py 10.0.2.134
# Farben erzwingen (nützlich für einige Terminals)
FORCE_COLOR=1 ./telnetd_CVE‑2026‑24061_test.py 10.0.2.134
Dieses Skript wird wie besehen für Sicherheitstestzwecke bereitgestellt. Verwendung auf eigene Gefahr.
KEINE GARANTIE
DIESE SOFTWARE WIRD "WIE BESEHEN" BEREITGESTELLT, OHNE JEGLICHE GARANTIE, AUSDRÜCKLICH ODER STILLSCHWEIGEND, EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF DIE GARANTIEN DER MARKTGÄNGIGKEIT, DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND DER NICHTVERLETZUNG VON RECHTEN DRITTER. IN KEINEM FALL SIND DIE AUTOREN ODER URHEBERRECHTSINHABER HAFTBAR FÜR JEGLICHE ANSPRÜCHE, SCHÄDEN ODER SONSTIGE HAFTUNG, OB AUS VERTRAG, UNERLAUBTER HANDLUNG ODER ANDERWEITIG, DIE SICH AUS ODER IN VERBINDUNG MIT DER SOFTWARE ODER DER NUTZUNG ODER ANDEREN GESCHÄFTEN MIT DER SOFTWARE ERGEBEN.
HAFTUNGSBESCHRÄNKUNG
DIE AUTOREN, MITWIRKENDEN UND VERTREIBER DIESER SOFTWARE SIND NICHT HAFTBAR FÜR DIREKTE, INDIREKTE, ZUFÄLLIGE, BESONDERE, BEISPIELHAFTE ODER FOLGESCHÄDEN (EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF BESCHAFFUNG VON ERSATZGÜTERN ODER -DIENSTLEISTUNGEN; NUTZUNGSAUSFALL, DATENVERLUST ODER GEWINNVERLUST; ODER GESCHÄFTSUNTERBRECHUNG), UNABHÄNGIG VON DER URSACHE UND AUF JEDER HAFTUNGSTHEORIE, OB AUS VERTRAG, STREITER HAFTUNG ODER UNERLAUBTER HANDLUNG (EINSCHLIESSLICH FAHRLÄSSIGKEIT ODER ANDERWEITIG), DIE IN IRGENDEINER WEISE AUS DER NUTZUNG DIESER SOFTWARE ENTSTEHEN, SELBST WENN AUF DIE MÖGLICHKEIT SOLCHER SCHÄDEN HINGEWIESEN WURDE.
VERWENDUNG AUF EIGENE GEFAHR
Verbesserungen und Fehlerberichte sind willkommen. Bitte stellen Sie sicher, dass alle Änderungen den Zweck des Skripts für Sicherheitstests und die Richtlinien zur ethischen Nutzung wahren.