En sÄrbarhet har upptÀckts i telnetd-servern frÄn GNU InetUtils-sviten. Denna sÄrbarhet möjliggör anslutning som vilken anvÀndare som helst, inklusive root, utan lösenordsverifiering. En CVE-identifierare har Ànnu inte tilldelats. SÄrbarheten har funnits sedan InetUtils version 1.9.3 (2015) och Àr fortfarande opatchad i den nuvarande versionen 2.7.0. En fix finns tillgÀnglig i patchar (1, 2).
Problemet orsakas av att telnetd-processen anropar verktyget "/usr/bin/login" för att kontrollera lösenordet och skickar som argument det anvÀndarnamn som klienten angav nÀr den anslöt till serverVerktyget "login" stöder alternativet "-f", vilket tillÄter inloggning utan autentisering (detta alternativ Àr avsett att anvÀndas nÀr anvÀndaren redan har autentiserats). Genom att ersÀtta alternativet "-f" i anvÀndarnamnet kan du dÀrför ansluta utan lösenordsverifiering.
Med en normal anslutning kan du inte anvÀnda ett anvÀndarnamn som "-f root", men Telnet har ett automatiskt anslutningslÀge som aktiveras av alternativet "-a". I det hÀr lÀget hÀmtas inte anvÀndarnamnet frÄn kommandoraden, utan skickas via miljövariabeln USER. NÀr inloggningsverktyget anropades ersattes vÀrdet pÄ denna miljövariabel utan ytterligare kontroll och utan escape-tecken. För att ansluta som root-anvÀndare stÀller du dÀrför helt enkelt in miljövariabeln USER till "-f root" och ansluter till Telnet-servern med alternativet "-a": $ USER='-f root' telnet -a servernamn
Ăndringen som introducerade sĂ„rbarheten lades till i telnetd-koden i mars 2015 och Ă„tgĂ€rdade ett problem som förhindrade att anvĂ€ndarnamnet kunde faststĂ€llas i autologin-lĂ€ge utan Kerberos-autentisering. Som en lösning lades stöd för att skicka anvĂ€ndarnamnet för autologin-lĂ€ge via en miljövariabel, men en valideringskontroll för anvĂ€ndarnamnet frĂ„n miljövariabeln glömdes bort.
KĂ€lla: opennet.ru
