4 feb 2012

ElevaciĆ³n de privilegios en sudo


Se ha descubierto un problema de seguridad en sudo que permite a cualquier atacante local elevar privilegios y convertirse en root. El fallo afecta a casi todas las distribuciones basadas en el kernel Linux y ademƔs de BSD, Mac OS X, etc.

Sudo es una herramienta de administraciĆ³n, utilizada en muchas de las distribuciones basadas en el kernel Linux, que permite delegar privilegios (normalmente de root) a determinados usuarios y para ciertos comandos en concreto. Ello posibilita, por ejemplo, que determinado grupo de usuarios tenga acceso a ciertas herramientas, con privilegios de administrador, pero de forma controlada y segura.
El fallo, descubierto por joernchen del Phenoelit Groupoernchen, se encuentra en un error de formato de cadena en la funciĆ³n "sudo_debug de sudo.c", a la hora de procesar el nombre del programa que se le pasa por parĆ”metro.
Para aprovechar la vulnerabilidad (con  CVE 2012-0809), el atacante debe, por ejemplo, realizar un enlace a nivel de sistema de fichero (ln) del binario sudo hacia un fichero con un nombre manipulado con caracteres especiales de cadena (por ejemplo "%n"). Al ejecutar ese nuevo enlace creado, se podrĆ” ejecutar cĆ³digo con privilegios de root.
El fallo se ha confirmado en las versiones 1.8.x, y para solucionarlo, es necesario actualizar a 1.8.3.p2.
Este fallo es heredado por multitud de distribuciones y sistemas operativos que utilizan sudo. Fue notificado el dĆ­a 24 de enero, y el dĆ­a 30 ya se publicĆ³ un parche. Corren especial peligro las mĆ”quinas compartidas entre usuarios. TambiĆ©n es posible que sea usado en un futuro para la elevaciĆ³n y "liberaciĆ³n" de dispositivos Android, por ejemplo.
MĆ”s informaciĆ³n: