Error en Sudo permitió a usuarios no autorizados de Linux ejecutar comandos root

Una nueva vulnerabilidad ha sido descubierta, y parcheada, en Sudo -una de las utilidades más importantes y de uso común en UNIX y Linux.

La vulnerabilidad en cuestión es un problema de elusión de la política de seguridad de sudo que permitiría a un usuario no autorizado o a un programa ejecutar comandos como root en un sistema Linux atacado, incluso cuando la “configuración de sudoers” explícitamente inhabilita el acceso de root.

Según Wikipedia, el programa sudo (del inglés “super user do”​) es una utilidad de los sistemas operativos tipo Unix, como Linux, BSD, o Mac OS X, que permite a los usuarios ejecutar programas con los privilegios de seguridad de otro usuario (normalmente el usuario root) de manera segura, convirtiéndose así temporalmente en superusuario.

Dado que la separación de privilegios es uno de los paradigmas de seguridad fundamentales en Linux, los administradores pueden configurar un archivo de sudoers para definir qué usuarios pueden ejecutar qué comandos y a qué usuarios.

Por lo tanto, en un escenario específico en el que se le ha permitido ejecutar un comando específico, o cualquiera, como cualquier otro usuario excepto el root, la vulnerabilidad podría permitirle pasar por alto esta política de seguridad y tomar el control total del sistema como root. “Esto puede ser usado por un usuario con suficientes privilegios sudo para ejecutar comandos como root incluso si la especificación de Runas (ejecutar como) explícitamente no permite el acceso de root siempre y cuando la palabra clave ALL esté listada primero en la especificación de Runas,” dijeron los desarrolladores de Sudo a Hacker News.

La vulnerabilidad, registrada como CVE-2019-14287 y descubierta por Joe Vennix de Apple Information Security, es más preocupante porque la utilidad sudo ha sido diseñada para permitir a los usuarios usar su propia contraseña de inicio de sesión para ejecutar comandos como un usuario diferente sin requerir su contraseña.

Lo que es más interesante es que este fallo de seguridad puede ser explotado por un atacante para ejecutar comandos como root simplemente especificando el ID de usuario “-1” o “4294967295”. Esto se debe a que la función que convierte el ID de usuario en su nombre de usuario trata incorrectamente a -1, o su equivalente no firmado 4294967295, como 0, que es siempre el ID de usuario del usuario root.

“Además, como el ID de usuario especificado mediante la opción -u no existe en la base de datos de contraseñas, no se ejecutará ningún módulo de sesión PAM”, agrega Hacker News.

La vulnerabilidad afecta a todas las versiones de Sudo anteriores a la última versión 1.8.28, que ha sido lanzada el 14 de octubre, y que ya está siendo incorporada en varias distribuciones de Linux a sus usuarios.

Ilustración (c) Spectral Design vía Shutterstock


Únase a la conversación

Contacto | Diario TI es una publicación de MPA Publishing International Ltd., Reino Unido. © Copyright 1997-2022