Descubren una vulnerabilidad en Sudo que permite a usuarios no autorizados actuar como root
Recientemente se ha descubierto una vulnerabilidad en Sudo, que permite poder evitar la política de seguridad en las distribuciones basadas en Linux con lo cual podría permitir que un usuario ejecute comandos como usuario root, incluso si ese acceso a root no se permitiera específicamente. Este defecto crítico fue descubierto por Joe Vennix de Apple Information Security.
Esta vulnerabilidad ya fue solucionada y el parche previene posibles consecuencias graves dentro de los sistemas Linux. Sin embargo, la vulnerabilidad de Sudo representaba una amenaza solo para un segmento estrecho de usuarios de Linux, según Todd Miller, desarrollador de software e ingeniero senior de Quest Software y mantenedor del proyecto de código abierto “Sudo”.
“La mayoría de las configuraciones de Sudo no se ven afectadas por el error. Es poco probable que los usuarios domésticos no empresariales se vean afectados en absoluto”
De forma predeterminada en la mayoría de las distribuciones de Linux, la palabra clave ALL en la especificación RunAs en el archivo /etc/sudoers permite a los usuarios de los grupos admin o sudo ejecutar cualquier comando en el sistema.
Sin embargo, debido a que la separación de privilegios es uno de los paradigmas fundamentales de seguridad en Linux, los administradores pueden configurar un archivo sudoers para definir exactamente quién tiene permitido hacer qué (ejecutar un comando en particular).
La nueva vulnerabilidad CVE-2019-14287. Otorga a un usuario o programa malicioso con privilegios suficientes la capacidad de realizar acciones o ejecutar código arbitrario como root (o superusuario) en un sistema de destino, cuando la “configuración de sudoers” no permite este acceso.
Un atacante puede explotar esta vulnerabilidad especificando el ID “-1” o “429496967295” porque la función responsable de convertir el ID al nombre de usuario trata estos dos valores precisamente como “0”, que corresponde al ID del “superusuario”.
Supongan que ha configurado a un “X” usuario como sudoer en el servidor mybox para ejecutar un comando como cualquier otro usuario, excepto root:”X mybox = (ALL ,! Root)/usr/bin/command”.
Puede confiar en X para monitorear los archivos y actividades de otros usuarios, pero no tienen acceso a ser superusuario.
Esto debería permitir al usuario “X” ejecutar un comando como cualquier otra persona que no sea root. Sin embargo, si X ejecuta “sudo -u # -1 id -u” o “-u # 429496967295 id -u” , puede omitir la restricción y ejecutar el comando de su elección como root para X.
Además, dado que el ID especificado a través de la opción -u no existe en la base de datos de contraseñas, no se ejecutará ningún módulo de sesión X.
Esta vulnerabilidad solo afecta a las configuraciones de sudo que tienen una lista de usuarios de “Runas”, incluida la exclusión de root. Root también se puede identificar por otros medios: por su ID de nombre con “user ALL=(ALL ,! # 0) /usr/bin/command” , o por referencia a un alias Runas.
Por lo tanto, en un escenario específico en el que se le ha permitido ejecutar un comando, como cualquier otro usuario, excepto root, la vulnerabilidad aún puede permitirle pasar por alto esta política de seguridad y tomar el control total del sistema como root.
La vulnerabilidad afecta a todas las versiones de Sudo anteriores a la última versión 1.8.28 que se lanzó recientemente y pronto se implementará como una actualización por las diversas distribuciones de Linux.
Dado que el ataque funciona en un caso de uso específico del archivo de configuración de sudoers, no debería afectar a un gran número de usuarios.
Sin embargo, para todos los usuarios de Linux, se da la recomendación de que actualicen el paquete sudo a la última versión tan pronto como sea posible.
Ya que los desarrolladores lanzaron el parche para Sudo hace varios días. Sin embargo, debido a que debe de empaquetarse para cada distribución de Linux y distribuirse a través de los cientos de comunidades de Linux que mantienen sistemas operativos Linux, puede que este paquete tarde algunos días mas para algunas distribuciones.
Si quieres conocer mas al respecto puedes consultar el siguiente enlace.