¡Fichero /etc/shadow a fondo!
En este post vamos a ver otro tipo de contenido relacionado con contraseñas, tranquilos porque la serie de Hashcat continuará en los siguientes posts :)
En el post de hoy, vamos a hablar de fichero /etc/shadow, fichero en el cual se almacenan
las contraseñas para cada usuario dentro del sistema operativo Linux. En este
fichero podremos encontrar además de la contraseña para cada usuario, información
relativa a dicha contraseña, por ejemplo, la fecha de expiración de dicha
contraseña.
Dentro del fichero podremos ver que por cada línea se
especifica el usuario, el hash de la contraseña y las diferentes políticas que
se aplican a las contraseñas del usuario. En cada línea encontramos los
diferentes campos separados por el símbolo “:”
.
Normalmente cada línea del fichero tiene un aspecto similar
a la siguiente:
Cada fragmento marcado es un campo diferente, la referencia es la siguiente
- El nombre del usuario
- El algoritmo utilizado
- La sal criptográfica para la contraseña
- El hash de la contraseña. Este es el hash que se utiliza para poder autentificar al usuario.
- Días transcurridos desde el 1 de enero de 1970 hasta el día en el que la contraseña fue cambiada por última vez.
- El número mínimo de días requeridos para que el usuario pueda cambiar la contraseña
- El número de días máximo que será valida la contraseña, pasado ese tiempo el usuario deberá de cambiar la contraseña.
- El número de días que quedan para que la contraseña expire, durante este periodo el usuario será advertido de que tiene que cambiar la contraseña
- El número de días que deben pasar para que una vez la contraseña haya caducado el sistema deshabilite la cuenta del usuario.
- El número de días desde el 1 de enero de 1970 que han trascurrido desde que la contraseña del usuario ha expirado o ha sido deshabilitada.
Como se puede observar en la foto, cuando no hay definido
una política para un campo, este está en blanco. Otra cosa que podemos observar
es que el campo de la contraseña está formado por el algoritmo utilizado, la
sal utilizada y el hash de la contraseña, el cual sigue el siguiente patrón $id_algortimo$salt$hashed
Los ids de los algoritmos utilizados por Linux son los siguientes:
- $1$ à MD5
- $2a$ à Blowfish
- $2y$ à Blowfish
- $5$ à SHA-256
- $6$ à SHA-512
En el caso de la foto se ha utilizado el algoritmo SHA-512.
Para visualizar el contenido del fichero podemos hacer uso
del siguiente comando:
sudo cat /etc/shadow
Este fichero es realmente importante, ya que es uno de
los primeros que se intentará obtener en los ataques a equipos. Es por ello que
deberemos de proteger las contraseñas con buenas políticas, para que en caso de
ataque, sea muy difícil obtener las credenciales del usuario y en especial la
clave del administrador del sistema.
Este post es más teórico, pero me parece un tema muy interesante
de explicar y por eso os lo he traído, además veremos cosas más interesantes
que hacer con este fichero en futuras entradas del blog ;)
Un saludo a todos (os dejo también el enlace al algoritmo de Blowfish para que le echéis un vistazo)

Comentarios
Publicar un comentario