vulnerabilitat de l'arrel sudo que afecta Linux Mint i el sistema operatiu elemental

A la utilitat suo, utilitzat per organitzar l'execució d'ordres en nom d'altres usuaris, identificat vulnerabilitat (CVE-2019-18634), que us permet augmentar els vostres privilegis al sistema a l'usuari root. El problema només apareix des del llançament de sudo 1.7.1 quan s'utilitza l'opció "pwfeedback" al fitxer /etc/sudoers, que està desactivada per defecte però activada en algunes distribucions com Linux Mint i Elementary OS. S'ha solucionat el problema al llançament suo 1.8.31, publicat fa unes hores. La vulnerabilitat no s'ha solucionat als kits de distribució.

L'opció "pwfeedback" permet mostrar el caràcter "*" després de cada caràcter introduït quan s'introdueix una contrasenya. Per culpa de errors En la implementació de la funció getln(), definida al fitxer tgetpass.c, una cadena de contrasenya massa gran passat a través del flux d'entrada estàndard (stdin) en determinades condicions pot no cabre a la memòria intermèdia assignada i sobreescriure altres dades a la pila. El desbordament es produeix quan s'executa el codi sudo com a root.

L'essència del problema és que quan s'utilitza el caràcter especial ^U (esborrada de línia) durant l'entrada i si l'operació d'escriptura falla, el codi responsable d'esborrar els caràcters "*" de sortida restableix les dades a la mida del buffer disponible, però no ho fa. retorna el punter a la posició actual del valor inicial a la memòria intermèdia. Un altre factor que contribueix a l'explotació és la manca de desactivació automàtica del mode “pwfeedback” quan les dades no arriben des del terminal, sinó a través del flux d'entrada (aquest defecte permet crear condicions perquè es produeixi un error de gravació, per exemple, en sistemes amb unidireccional canals sense nom es produeix un error quan s'intenta escriure al final d'un canal de lectura).

Atès que un atacant té un control complet sobre la sobreescritura de dades a la pila, no és difícil crear un exploit que li permeti augmentar els seus privilegis per fer root. Qualsevol usuari pot explotar el problema, independentment dels permisos de sudo o de la configuració específica de l'usuari a sudoers. Per bloquejar el problema, hauríeu d'assegurar-vos que no hi hagi cap configuració de "pwfeedback" a /etc/sudoers i, si cal, desactivar-lo ("Valors per defecte !pwfeedback"). Per comprovar si hi ha cap problema, podeu executar el codi:

$ perl -e 'print(("A" x 100 . "\x{00}") x 50)' | sudo -S id
Contrasenya: error de segmentació

Font: opennet.ru

Afegeix comentari