Escalar privilegios a root (Error SUID) 3/3

  1. Introducción los permisos de Linux
  2. Problemas con los permisos /etc/passwd (este POST)
  3. Escalada mediante error en el SUID

En el primer articulo hablamos de un permiso especial, que se salia de la lectura, escritura y ejecución, que era el SUID que nos permitía ejecutar un archivo con los permisos del creador (muchas veces root) por lo que nos ponía en un grave problema de seguridad y es el tema que vamos a tratar en este POST.

Primero daremos un pequeño truco para localizar los ficheros que tienen los permisos SUID, y analizar si deben o no tenerlo y que los otros no ayuden al compromiso.

find / -perm -u=s -type f 2>/dev/null

ALERTA “cp” con permisos de SUID

Si tenemos el comando cp con SUID nos permitirá copiar y sobrescribir (pensar en el peligro) sobre otros ficheros aunque no sean nuestro. Desde el momento que tenemos ese poder nos podemos ir al POST2 y crear un fichero passwd con nuestro usuario trampa que tendrá la clave que decidamos como se vio en el.

ALERTA “find” con permisos de SUID

Y que daño puede realizar el comando find nos podríamos preguntar, pues mucho más que el comando anterior ya que find también permite ejecutar un comando cuando encuentra “find <buscado> -exec “<comando ejecuta> y lo curiosos es que el comando que ejecuta lo ejecutaría con el permiso SUID que seguro es root.

Así que en este caso podríamos realizar muchas cosas:

  • Una copia sobre el fichero que deseáramos, modificandolo a nuestro antojo, como comentamos con “cp”.
  • Y si no solo copiamos sino que cogemos nuestro editor preferido (en mi caso el vi) y modifico el fichero a mi antojo o leo el fichero shadow que se supone no podría leer.
  • Y si preparo mi ejecutable, que claro sera un troyano, y le concedo los permiso que yo desee.
  • Así todo lo que nuestra imaginación se le ocurra ya que ejecutamos comandos como root.

Un Script con SUID y permiso de escritura para otros o mi grupo

Si tenemos un script que se ejecuta como SUID, en principio sin problema pero si puedo editarlo (problema del POST2) lo modifico a lo que considero y por lo tanto puede realizar otras acciones que no estaban previstas.

 

ESPERO que os haya servido para controlar los permisos de los ficheros.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.