Volver a la página principal
lunes 16 septiembre 2024
24

Hackeando un usuario en Linux: La estrategia del hash

Requisitos previos

  • No tener encriptado el disco.
  • Tener acceso físico al ordenador objetivo.
  • Un ordenador adicional para leer el disco.

Montar el disco y encontrar al usuario

Quita el disco del ordenador objetivo y móntalo en tu ordenador. Navega al punto de montaje y luego ejecuta cat /etc/shadow. Este archivo almacena las contraseñas de los usuarios en el sistema, por lo que necesitamos encontrar el nombre de usuario de nuestro objetivo, o aún mejor, simplemente podemos tomar el Usuario Dios (root).

Así que ejecutaré un comando que me muestre solo la línea del usuario root:

sudo cat /mount_point/etc/shadow | grep root

Lo que nos interesa es el hash: $5$858sVmZDys$86Ls2dNBd2/EkGRkJz4IjGYi2yC1g11XIAY/EpKSYP3

Partes del hash

Las partes están separadas por el signo de dólar $:

  • Primera parte representa qué algoritmo de función hash unidireccional se utiliza: MD5, SHA-256, etc.
  • Segunda parte se llama la sal (salt), y es importante para prevenir ataques de diccionario. No importa que la contraseña sea la misma entre los usuarios; el hash será diferente debido a la sal.
  • Tercera parte es el hash codificado.

Así que vamos a separar nuestro hash:

  • 5
  • 858sVmZDys
  • 86Ls2dNBd2/EkGRkJz4IjGYi2yC1g11XIAY/EpKSYP3

Cambiar la contraseña

Ejecuta el siguiente comando para generar un nuevo hash con la contraseña que desees:

openssl passwd -5 -salt 858sVmZDys Mi_Contraseña

Cambiamos el número 5 (primera parte) por nuestro algoritmo deseado, y la cadena después de -salt por la sal de nuestro hash (segunda parte). Para más algoritmos, consulta esta tabla:

El comando anterior generará nuestro nuevo hash completo, para el cual solo necesitamos reemplazar la tercera parte, así que podemos hacer lo siguiente:

sudo sed -i 's$86Ls2dNBd2/EkGRkJz4IjGYi2yC1g11XIAY/EpKSYP3$Nuevo_Hash_Aquí$' /mount_point/etc/shadow

O simplemente abre tu editor preferido con sudo y edita el hash codificado.

Creo que por eso es bastante importante encriptar nuestro disco con LUKS. Si no lo hacemos, obviamente también podemos acceder a cualquiera de los archivos sin siquiera cambiar la contraseña. Por otro lado, esta es una forma realmente útil de recuperar una contraseña olvidada, así que tenlo en cuenta. 😉

Etiquetas:
hacking
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer