Otkrivena je ranjivost u telnetd poslužitelju iz GNU InetUtils paketa. Ova ranjivost omogućuje povezivanje kao bilo koji korisnik, uključujući root, bez provjere lozinke. CVE identifikator još nije dodijeljen. Ranjivost je prisutna od verzije InetUtils 1.9.3 (2015) i ostaje neispravljena u trenutnom izdanju 2.7.0. Ispravak je dostupan u zakrpama (1, 2).
Problem je uzrokovan činjenicom da, kako bi provjerio lozinku, telnetd proces poziva uslužni program "/usr/bin/login", prosljeđujući kao argument korisničko ime koje je klijent naveo prilikom povezivanja na poslužiteljaUslužni program "login" podržava opciju "-f" koja omogućuje prijavu bez autentifikacije (ova opcija je namijenjena za korištenje kada je korisnik već autentificiran). Stoga, zamjenom opcije "-f" u korisničko ime, možete se povezati bez provjere lozinke.
S normalnom vezom ne možete koristiti korisničko ime poput "-f root", ali Telnet ima automatski način povezivanja koji se aktivira opcijom "-a". U ovom načinu rada, korisničko ime se ne uzima iz naredbenog retka, već se prosljeđuje kroz varijablu okruženja USER. Kada je pozvan uslužni program za prijavu, vrijednost ove varijable okruženja je zamijenjena bez dodatne provjere i bez izbjegavanja posebnih znakova. Stoga, da biste se povezali kao root korisnik, jednostavno postavite varijablu okruženja USER na "-f root" i povežite se s Telnet poslužiteljem pomoću opcije "-a": $ USER='-f root' telnet -a naziv_poslužitelja
Promjena koja je uvela ranjivost dodana je u telnetd kod u ožujku 2015. i riješila je problem koji je sprječavao određivanje korisničkog imena u načinu automatske prijave bez Kerberos autentifikacije. Kao rješenje dodana je podrška za prosljeđivanje korisničkog imena za način automatske prijave putem varijable okruženja, ali je zaboravljena provjera validacije korisničkog imena iz varijable okruženja.
Izvor: opennet.ru
