internetlab.es

Los problemas de seguridad de setuid

Un atacante puede aprovecharse de los binarios setuid utilizando scripts en la terminal o aportando información falsa. Los usuarios, normalmente no deberían tener programas setuid instalados, especialmente si los van a usar terceros. Veamos un ejemplo de lo peligrosos que pueden llegar a ser este tipo de permisos si se utilizan mal.

En este ejemplo, un usuario corre un comando desde la consola y ejecuta el archivo /usr/bin/vi /shared/financialdata.txt. A partir de este momento, los permisos del programa Vi y del archivo .txt serán los siguientes:

-rwxr-xr-x 1 root root 1871960 2009-09-21 16:57 /usr/bin/vi
-rw——- 1 root root 3960 2009-09-21 16:57 /shared/financialdata.txt


Como vemos, el usuario de este ejemplo tiene permisos para ejecutar Vi pero no para leer el archivo compartido financialdata.txt. Por tanto, cuando Vi intenta arrancar el documento, aparecerá por pantalla el mensaje “permission denied”. Sin embargo, si activamos setuid en el programa Vi las cosas cambian. Escribimos:

chmod u+s /usr/bin/vi
ls -l /usr/bin/vi

A partir de ahora cuado el usuario del ejemplo emplee Vi tendrá acceso a cualquier documento. ¿Cómo puede ser? El sistema UNIX percibirá al susuario que ejecute Vi como “root” o administrador, así que le dará acceso y permisos absolutos en cualquier lugar de nuestro sistema. Escalofriante, así que tened cuidado con utilizar setuid sin reparar en estos detalles, especialmente si estáis administrando un servidor.

internetlab.es

Funciona gracias a WordPress

Volver arriba