Sicherheitsanfälligkeit in telnetd, die eine Verbindung mit root-Rechten ohne Authentifizierung ermöglicht

Im telnetd-Server von GNU InetUtils wurde eine Schwachstelle festgestellt, die es ermöglicht, sich als beliebiger Benutzer, einschließlich root, ohne Passwortüberprüfung anzumelden. Die CVE-ID wurde bisher nicht vergeben. Die Schwachstelle tritt seit der Version InetUtils 1.9.3 (2015) auf und bleibt im aktuellen Release 2.7.0 ungepatcht. Ein Fix ist in Form von Patches (1, 2) verfügbar.

Das Problem entsteht dadurch, dass der telnetd-Prozess zur Passwortüberprüfung das Utility „/usr/bin/login“ aufruft und dabei den Benutzernamen übergibt, den der Client beim Verbindungsaufbau angibt. серверуDas Utility „login“ unterstützt die Option „-f“, die es erlaubt, sich ohne Authentifizierung anzumelden (es wird angenommen, dass diese Option verwendet wird, sobald der Benutzer bereits authentifiziert wurde). Wenn es also gelingt, die Option „-f“ im Benutzernamen zu substituieren, kann man sich ohne Passwortüberprüfung anmelden.

Bei einer normalen Verbindung kann der Benutzername im Format „-f root“ nicht verwendet werden, aber Telnet bietet einen automatischen Verbindungsmodus, der durch die Option „-a“ aktiviert wird. In diesem Modus wird der Benutzername nicht aus der Befehlszeile übernommen, sondern über die Umgebungsvariable USER übergeben. Bei der Aufruf der Login-Utility wurde der Wert dieser Umgebungsvariable ohne zusätzliche Überprüfung und ohne Escape von Sonderzeichen eingesetzt. Somit reicht es aus, den Wert „-f root“ in die Umgebungsvariable USER zu setzen und sich mit Telnet-Server unter Angabe der Option „-a“ zu verbinden: $ USER=’-f root’ telnet -a servername

Die Änderung, die zur Sicherheitsanfälligkeit führte, wurde im Code von telnetd im März 2015 hinzugefügt und hing mit der Behebung eines Problems zusammen, das es verhinderte, den Benutzernamen im Autologin-Modus ohne Kerberos-Authentifizierung zu bestimmen. Als Lösung wurde die Unterstützung für die Übertragung des Benutzernamens im Autologin-Modus über die Umgebungsvariable hinzugefügt, jedoch wurde die Überprüfung der Gültigkeit des Benutzernamens aus dieser Umgebungsvariable vergessen.

Quelle: opennet.ru

Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы 🔥 Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы | ProHoster