Tener acceso como root a un sistema es uno de los objetivos que buscan los piratas informáticos. Es así como podrían obtener el control total. En este artículo nos hacemos eco de una vulnerabilidad que afecta a Sudo y que permitiría a cualquier usuario obtener privilegios de administrador. Un fallo que sin duda puede comprometer un sistema si termina en malas manos. Vamos a explicar en qué consiste.
Un error en Sudo permite tener acceso como administrador a un usuario
Cuando hablamos de Sudo nos referimos a un programa de Unix, de Linux, que permite a un administrador de sistemas con privilegios poder llevar a cabo determinados cambios y acciones que están limitados para los usuarios normales.
Este fallo que afecta a Sudo permite que cualquier usuario normal, sin permisos de administrador, pudiera obtener permisos de root y llevar a cabo cualquier cambio o acción que quisiera. Todo esto sin requerir ningún tipo de autenticación.
Root es el súper usuario del sistema. Una cuenta especial que sirve para administrar cambios importantes, instalar aplicaciones que puedan provocar algún tipo de problema en el equipo, etc. Básicamente es necesario para todos esos cambios relevantes que puedan tener lugar en un equipo Linux.
Un usuario normal, sin privilegios, puede utilizar el comando Sudo para actuar como root. Para ello debe tener permisos o conocer la contraseña del administrador. Esta vulnerabilidad, registrada como CVE-2021-3156, supone una escalada de privilegios. Fue descubierta el pasado 13 de enero por parte de un grupo de investigadores de seguridad de Qualys y han esperado a que hubiera parches disponibles para hacerla pública.
Por tanto podemos decir que este fallo ya ha sido corregido. Es muy importante que los usuarios cuenten con las últimas actualizaciones para corregirlo.
Los investigadores de Qualys indican que el problema se debe a un desbordamiento de búfer explotable por cualquier usuario local (usuarios normales y usuarios del sistema, enumerados en el archivo sudoers o no), y no se requiere que los atacantes conozcan la contraseña del usuario para explotar con éxito esta vulnerabilidad.
El desbordamiento de búfer que permite a cualquier usuario local obtener privilegios de root se activa cuando Sudo elimina incorrectamente las barras diagonales inversas en los argumentos.
Tres exploits
Qualys creó tres exploits para CVE-2021-3156 para mostrar cómo los atacantes potenciales pueden abusar con éxito de esta vulnerabilidad. Usando estos exploits, los investigadores pudieron obtener privilegios de administrador completos en múltiples distribuciones de Linux, incluyendo Debian 10 (Sudo 1.8.27), Ubuntu 20.04 (Sudo 1.8.31) y Fedora 33 (Sudo 1.9.2). Son algunas de las distribuciones más populares.
Desde Qualys aseguran que otras distribuciones y sistemas operativos compatibles con Sudo probablemente también podrían ser explotados utilizando exploits de CVE-2021-3156.
Los colaboradores de Sudo han solucionado la vulnerabilidad en la versión de sudo 1.9.5p2 que ya ha sido lanzada, al mismo tiempo que Qualys reveló públicamente sus hallazgos. Por tanto, todos los usuarios deberían contar con esta versión actualizada y estar protegidos correctamente.
Para probar si el sistema es vulnerable, podemos iniciar sesión como usuario no root y ejecutar el comando «sudoedit -s /». Los sistemas vulnerables enviarán un error comenzando con «sudoedit:» mientras que los parcheados mostrarán un error comenzando con «usage:».
Os dejamos una lista con algunas distribuciones de Linux para hacking ético.