¿Por qué el ID de usuario y el ID de grupo de cada archivo deben coincidir con un usuario existente?

3

He estado leyendo en la mayoría de las guías de fortalecimiento para Linux, que deberías buscar archivos y directorios sin un usuario o grupo válido. Lo que no puedo encontrar es cómo esto podría usarse para un ataque, o cómo podría ser una debilidad, además de ser "impropio".

    
pregunta user857990 20.08.2012 - 09:27
fuente

3 respuestas

3

Cada archivo debe pertenecer a un usuario o grupo, por la razón principal de hacer cumplir los permisos de archivos.

Un concepto básico pero muy importante de proteger un sistema es el principio de privilegio mínimo : permitir a los usuarios el acceso mínimo necesario para realizar el trabajo.

Por ejemplo, su equipo de desarrollo web puede necesitar acceso a su directorio / www, pero no debería tener acceso a los archivos de su sistema. Configurar la propiedad y el control de acceso adecuados para sus archivos facilita el cumplimiento del principio de privilegios mínimos al limitar la cantidad de acceso que se permite a cada usuario.

    
respondido por el Ayrx 20.08.2012 - 09:32
fuente
8

Los archivos siempre tienen un ID de propietario y un ID de grupo. Pero si los archivos se copian de otro sistema (por ejemplo, se extraen de un archivo tar), es posible que no haya un nombre asignado a esos identificadores.

Más tarde, se puede crear un nuevo usuario o grupo que obtenga el siguiente ID disponible. Sin embargo, esta identificación puede ser la misma que se usó de forma incorrecta anteriormente.

Como resultado, el nuevo usuario / grupo obtiene acceso a esos archivos.

    
respondido por el Hendrik Brummermann 20.08.2012 - 09:56
fuente
0

La redacción de esta pregunta es un poco extraña: cada archivo pertenece exactamente a un usuario y exactamente a un grupo. Cada archivo tiene conjuntos separados de permisos (rwx) para el usuario propietario, el grupo propietario (menos el usuario propietario si está en el grupo) y otros. Es imposible que un archivo no tenga ese usuario y grupo.

Si el sistema de archivos tiene ACLs , puede haber más usuarios y grupos con permisos específicos en cada archivo.

Los usuarios y grupos están codificados como enteros en el sistema de archivos. Estos enteros se denominan ID de usuario (uid) e ID de grupo (gid). La asociación entre estos números enteros y los nombres de usuario y grupo se encuentra en un nivel superior, los proporciona la biblioteca estándar. Las asociaciones se registran en bases de datos locales como /etc/passwd y /etc/group , y en bases de datos de red como NIS y < a href="http://en.wikipedia.org/wiki/LDAP"> LDAP . Estas bases de datos definen el ámbito en el que un usuario o grupo es válido. En general, ese ámbito es la máquina local para una base de datos local y una red de máquinas que utilizan la misma base de datos para una base de datos de red, pero existe un gran potencial para situaciones más complejas; por ejemplo, es común tener usuarios del sistema con un alcance por máquina y usuarios reales proporcionados por una base de datos de red y compartidos en muchas máquinas.

En ocasiones, puede ver un archivo que pertenece a un usuario o grupo que no tiene un nombre. Puede haber muchas razones para esto, pero la mayoría es una indicación de que algo está mal.

  • El usuario o grupo lo proporciona una base de datos de red a la que actualmente no se puede acceder.
  • Se eliminó un usuario o grupo, pero todavía hay archivos que pertenecen a él.
  • El archivo se ve en el ámbito incorrecto:

    • a través de un protocolo de sistema de archivos remoto como NFS , el servidor y el cliente tienen diferentes bases de datos de usuarios o grupos, y el sistema de archivos remoto no realiza la reasignación que sería necesaria;
    • en un disco extraíble que se movió entre sistemas que usan diferentes bases de datos;
    • extraído de un archivo creado en un ámbito diferente;
    • en un entorno virtual (que podría ser cualquier cosa desde chroot ) que utiliza diferentes bases de datos.

Tenga en cuenta que en todos estos casos, a excepción de la base de datos de la red que no está disponible temporalmente, el hecho de que vea un número en lugar de ver el nombre equivocado es una suerte. Si se ha eliminado y reasignado un ID de usuario, el nuevo usuario con este ID tendrá control sobre los archivos que le quedaron al usuario anterior con este ID; en lo que respecta al sistema operativo, este es el mismo usuario. Si un archivo se ve en el ámbito de usuario incorrecto, y la ID se asigna a nombres de usuario diferentes en los dos ámbitos, no recibirá ninguna advertencia. Por lo tanto, aunque ver a un usuario o grupo sin nombre es un síntoma de que algo está mal, no puede confiar en que aparezca el síntoma. Los usuarios y grupos sin nombre deben formar parte de una auditoría del sistema de archivos, pero no son el foco principal.

    
respondido por el Gilles 20.08.2012 - 20:07
fuente

Lea otras preguntas en las etiquetas