Seguridad de cambio de contraseña de Linux / etc / shadow

15

Me pregunto qué sucede qué pasa cuando cambio mi contraseña en un sistema Linux. Básicamente, todas las contraseñas se almacenan en un archivo llamado /etc/shadow o /etc/master.passwd en sistemas similares a BSD, como recuerdo. Ambos son propiedad de root / wheel con 600 permisos.

Entonces, cuando cambio mi contraseña con el comando passwd en el terminal, de alguna manera debería acceder a este archivo con permisos de root. Luego lee y escribe en él.

Estoy interesado en cómo obtiene los permisos de root y qué proceso (o procesos) son responsables del cambio de contraseña.

    
pregunta PaulOverflow 07.12.2014 - 15:57
fuente

1 respuesta

21

Básicamente está usando el bit suid. Si marca el comando passwd en su máquina:

-rwsr-xr-x  1 root   root         43K Feb 15  2011 passwd

SUID (Establecer ID de usuario propietario en ejecución) es un tipo especial de permisos de archivo otorgados a un archivo. Normalmente en Linux / Unix cuando se ejecuta un programa, este hereda los permisos de acceso del usuario que inició sesión. SUID se define como otorgar permisos temporales a un usuario para ejecutar un programa / archivo con los permisos del propietario del archivo en lugar del usuario que lo ejecuta. En palabras sencillas, los usuarios obtendrán los permisos del propietario del archivo, así como el UID del propietario y el GID al ejecutar un binario. Así que el binario se ejecuta realmente como root cuando lo ejecutas.

    
respondido por el Lucas Kauffman 07.12.2014 - 16:11
fuente

Lea otras preguntas en las etiquetas