Hacking y Ciberseguridad recuperación de contraseñas con John
Hacking y Ciberseguridad recuperación de contraseñas con John
Para utilizar Kali Linux y John, te enfocarás en la auditoría de contraseñas y la recuperación de hashes. John the Ripper (John) es una herramienta muy popular en Kali para descifrar contraseñas. Funciona tomando hashes de contraseñas (cadenas de texto cifrado que representan una contraseña) y probando diferentes contraseñas candidatas para ver si el hash resultante coincide.
1. Preparar los hashes
Antes de usar John, necesitas obtener los hashes de contraseñas que deseas descifrar. Estos hashes pueden provenir de diferentes fuentes, como archivos de configuración de sistemas Unix (/etc/shadow
) o bases de datos.
A. Para archivos de Linux/Unix
El archivo
/etc/shadow
contiene los hashes de contraseñas de los usuarios. Sin embargo, no puedes usarlo directamente con John.Primero, necesitas extraer los hashes de este archivo y convertirlos a un formato que John pueda entender. Para ello, utiliza la herramienta
unshadow
.El comando es
unshadow /etc/etc/passwd /etc/shadow > my_hashes.txt
. Este comando combina la información de los archivos de contraseñas y los de sombra y redirige la salida a un nuevo archivo llamadomy_hashes.txt
.
B. Para archivos ZIP o RAR
Si tienes un archivo ZIP o RAR protegido con contraseña, primero necesitas extraer su hash.
Para archivos ZIP, usa
zip2john
. El comando eszip2john archivo.zip > my_zip_hash.txt
.Para archivos RAR, usa
rar2john
. El comando esrar2john archivo.rar > my_rar_hash.txt
.
2. Descifrar los hashes con John
Una vez que tienes los hashes en un archivo de texto, puedes usar John para intentar descifrarlos. John tiene varios modos de ataque para probar contraseñas.
A. Modo de ataque por diccionario
Este es el método más común. John probará todas las palabras de un archivo de diccionario (una lista de contraseñas comunes) contra tus hashes.
John ya viene con un diccionario preinstalado en
/usr/share/john/password.lst
. Sin embargo, es recomendable usar un diccionario más grande y completo comorockyou.txt
, que está disponible en la mayoría de las distribuciones de Kali en/usr/share/wordlists/rockyou.txt.gz
.Para usar
rockyou.txt
, primero debes descomprimirlo congunzip /usr/share/wordlists/rockyou.txt.gz
.El comando para el ataque de diccionario es:
john --wordlist=/usr/share/wordlists/rockyou.txt my_hashes.txt
John comenzará a probar cada palabra del diccionario. Si encuentra una coincidencia, mostrará la contraseña en texto plano junto con el hash.
B. Modo de ataque de fuerza bruta
Si el ataque de diccionario no funciona, el modo de fuerza bruta es la siguiente opción. John probará todas las combinaciones posibles de caracteres (letras, números, símbolos, etc.) hasta que encuentre la contraseña correcta. Este método es muy lento y computacionalmente intensivo, especialmente para contraseñas largas y complejas.
El comando es:
john --incremental my_hashes.txt
Puedes especificar el conjunto de caracteres que John debe usar (por ejemplo, solo números, letras, o una combinación) para reducir el tiempo de búsqueda, pero a menos que tengas una idea de cómo es la contraseña, es mejor dejar que John lo intente con el conjunto de caracteres por defecto, que es una buena combinación de letras y números.
3. Ver los resultados
Para ver las contraseñas que John ha descifrado hasta el momento, puedes usar el comando --show
.
john --show my_hashes.txt
Esto te mostrará una lista de los hashes y las contraseñas correspondientes que han sido descifradas con éxito durante cualquier ejecución de John en ese archivo de hashes.
Notas importantes
Legalidad: Utiliza estas herramientas solo en sistemas para los que tengas permiso explícito. El uso no autorizado es ilegal y puede tener graves consecuencias.
Rendimiento: El tiempo que tarda John en descifrar una contraseña depende de la longitud y complejidad de la misma, así como del poder de procesamiento de tu computadora (CPU y GPU).
Hashcat: Aunque John es excelente, para el descifrado de hashes más avanzados y acelerado por GPU, la herramienta
hashcat
es más poderosa y popular en la actualidad.Kali Linux: John viene preinstalado en Kali Linux, lo que facilita su uso. Simplemente abre una terminal y ejecuta los comandos.