13.07.2015 Views

SEGURIDAD EN UNIX Y REDES

SEGURIDAD EN UNIX Y REDES

SEGURIDAD EN UNIX Y REDES

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4.4. LOS BITS SUID, SGID Y STICKY 53chmod [ugoa]{+,-}{rwxst} ficheroPodemos ver que el valor simbólico comienza por cero o más letras que indican sobre que ternade los permisos se van a realizar los cambios (u para propietario del fichero, g para grupo, o pararesto de usuarios y a para las tres ternas; si no se especifica ninguna letra, se asume a). A ellas lessigue un signo ‘+’ o ‘-’ en función de si deseamos activar o resetar el bit sobre el que trabajamos,parámetro indicado por el último conjunto formado por una o más letras, r para el permiso delectura, w para escritura, x para ejecución, s para suid o sgid y t para bit de permanencia (elsignificado de estos dos últimos se explicará en el punto siguiente). Entre los tres campos del valorsimbólico no se insertan espacios:anita:~# ls -l /tmp/fichero-r-------- 1 root other 902 Feb 9 05:05 /tmp/ficheroanita:~# chmod +x /tmp/ficheroanita:~# ls -l /tmp/fichero-r-x--x--x 1 root other 902 Feb 9 05:05 /tmp/ficheroanita:~# chmod og-x /tmp/ficheroanita:~# ls -l /tmp/fichero-r-x------ 1 root other 902 Feb 9 05:05 /tmp/ficheroanita:~# chmod ug+rwx /tmp/ficheroanita:~# ls -l /tmp/fichero-rwxrwx--- 1 root other 902 Feb 9 05:05 /tmp/ficheroanita:~#Esta forma de trabajo simbólica es menos utilizada en la práctica que la forma octal, pero en ciertassituaciones es muy útil, por ejemplo si deseamos activar todos los permisos de ejecución de unarchivo o si queremos setuidarlo: un simple chmod +x o chmod u+s es suficiente en estos casos, yevitamos preocuparnos por si modificamos el resto de permisos.Quizás después de ver el procedimiento de modificación de los permisos de un fichero, este puede parecerdemasiado complicado y arcaico para un sistema operativo moderno; a fin de cuentas, muchagente prefiere gestores gráficos de permisos – igual que prefiere gestores gráficos para otras tareasde administración –, programas que dan todo hecho y no obligan al administrador a ‘complicarse’,llenos de menús desplegables y diálogos que una y otra vez preguntan si realmente deseamos modificarcierto permiso (¿Está usted seguro? ¿Realmente seguro? ¿Es mayor de edad? ¿Me lo jura?).Incluso esas personas aseguran que el procedimiento gráfico es mucho más claro y más potente queel que Unix ofrece en modo texto. Nada más lejos de la realidad; por un lado, aunque todo el mundoreconoce que la explicación detallada de cómo funcionan los permisos de ficheros es algo farragosa,en la práctica el convertir una terna de bits rwx a octal o viceversa es una tarea trivial, algo queningún administrador con unas cuantas horas de práctica ni siquiera necesita pensar. Por otro,algo más importante que la facilidad o dificultad de modificar los permisos: su robustez; hemos depensar que este modelo de protección está vigente desde hace casi treinta años y no ha cambiadoabsolutamente nada. Si en todo este tiempo no se ha modificado el mecanismo, obviamente esporque siempre ha funcionado – y lo sigue haciendo – bien.4.4 Los bits suid, sgid y stickyHabitualmente, los permisos de los archivos en Unix se corresponden con un número en octal quevaría entre 000 y 777; sin embargo, existen unos permisos especiales que hacen variar ese númeroentre 0000 y 7777: se trata de los bits de permanencia (1000), sgid (2000) y suid (4000).El bit de suid o setuid se activa sobre un fichero añadiéndole 4000 a la representación octal delos permisos del archivo y otorgándole además permiso de ejecución al propietario del mismo; alhacer esto, en lugar de la x en la primera terna de los permisos, aparecerá una s o una S si nohemos otorgado el permiso de ejecución correspondiente (en este caso el bit no tiene efecto):

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!