¿Has oído hablar de John the Ripper, pero no sabes realmente para qué sirve este software ni cómo utilizarlo? Esta herramienta de pentesting de código abierto, tan temible como indispensable, se ha convertido en un clásico en el mundo de la ciberseguridad. Capaz de romper contraseñas cifradas en un abrir y cerrar de ojos (o casi), John the Ripper es muy apreciado por los Pentesters. Pero, ¿cómo funciona? ¿Y es realmente legal su uso? En este artículo, descubrirás todas las respuestas a las preguntas que puedas tener al respecto.
- ¿Qué es John the Ripper?
- ¿Quién utiliza la herramienta John the Ripper?
- ¿Cuáles son las diferencias entre John the Ripper y Hashcat?
- ¿Cómo funciona John the Ripper?
- ¿Cómo instalar John the Ripper en tu computadora?
- Uso de John the Ripper
- ¿Es legal utilizar la herramienta de contraseñas John the Ripper?
- ¿Qué tipos de ataques utiliza John the Ripper para romper contraseñas?
- ¿Para qué sirve John the Ripper en el Pentesting?
- Preguntas frecuentes sobre John the Ripper
¿Qué es John the Ripper?
John the Ripper, o JtR para los amigos, es una herramienta de ciberseguridad de código abierto especializada en fuerza bruta y descifrado de contraseñas. Su misión es sencilla: identificar las contraseñas débiles y, por ende, las fallas en las políticas de seguridad, para ayudar a los profesionales a asegurar sus entornos digitales.
Para cumplir su misión, John the Ripper puede romper contraseñas cifradas mediante diferentes tipos de ataques cibernéticos por fuerza bruta. Y no es todo, ya que esta herramienta de pentesting también es capaz de reconocer ciertos algoritmos de cifrado utilizados y adaptarse en consecuencia. ¿Práctico, verdad?

¿Quién utiliza la herramienta John the Ripper?
Si bien muchas profesiones de la ciberseguridad utilizan John the Ripper, no son las únicas:
- Los Pentesters lo utilizan para identificar las debilidades de las contraseñas usadas en una organización.
- Los Administradores de sistemas y los CISO lo emplean para auditar las cuentas y asegurarse de que no haya contraseñas demasiado débiles en sus servidores.
- Los investigadores en ciberseguridad lo utilizan para estudiar los comportamientos de autenticación, las nuevas técnicas de hash o simular ataques.
- Las fuerzas del orden y las agencias gubernamentales pueden usarlo durante investigaciones forenses para recuperar datos cifrados en un marco legal.
- Los hackers maliciosos lo desvían para obtener acceso no autorizado a sistemas a menudo insuficientemente protegidos.
¿Cuáles son las diferencias entre John the Ripper y Hashcat?
La principal diferencia entre John the Ripper y Hashcat es que el primero funciona gracias a un procesador (CPU), mientras que el segundo explota la potencia de una tarjeta gráfica (GPU) para ganar en rapidez y realizar fuerza bruta a gran escala.
- John the Ripper es ideal para comenzar, entender los tipos de hashing o hacer pruebas específicas.
- Hashcat toma el relevo cuando necesitas tratar volúmenes masivos de hash.
Lejos de ser exclusivos, estas herramientas son complementarias y pueden ser útiles en una auditoría de seguridad.
¿Cómo funciona John the Ripper?
Para romper una contraseña, John the Ripper sigue 3 grandes pasos:
- Recuperación del hash de la contraseña a romper. La fuerza de JtR es que puede descifrar contraseñas protegidas, pero para ello necesita su versión cifrada, que llamamos “hash”. Este hash puede extraerse de una base de datos comprometida, de archivos de servidores poco seguros o ser robado a través de ataques de sniffing de paquetes.
- Análisis e identificación del tipo de hash. Se pueden utilizar muchos algoritmos de hashing para proteger una contraseña. Antes de romperla, John debe identificar cuál se ha empleado (MD5, SHA1, NTLM, bcrypt, etc.).
- Lanzamiento del ataque para romper la contraseña. Una vez hecho el análisis, John the Ripper pasa a la acción y lanza el descifrado. Prueba miles (incluso millones) de contraseñas potenciales para intentar encontrar la que genera el mismo hash que busca descifrar.
¿Cómo instalar John the Ripper en tu computadora?
El procedimiento para instalar John the Ripper en tu computadora es generalmente el mismo en macOS, Windows y Linux:
- Primero, deberás instalar OpenSSL en tu máquina.
- Luego, simplemente clona el repositorio oficial de GitHub de la versión JtR Jumbo (la más completa) y compílalo siguiendo las instrucciones proporcionadas por Openwall.
Nota: Si estás usando Kali Linux, no tendrás que preocuparte, ya que JtR es parte de más de 600 herramientas de ciberseguridad que ya están preinstaladas.
Uso de John the Ripper
John the Ripper viene preinstalado en Kali Linux, lo que facilita mucho su uso para tareas de auditoría. A continuación te mostramos comandos útiles y ejemplos prácticos que puedes aplicar directamente:
- Crackear contraseñas simples
john hashes.txt
(hashes.txt: un archivo que contiene contraseñas cifradas —hashes— obtenidas de sistemas como Linux, bases de datos filtradas, etc.)
- Mostrar las contraseñas descubiertas
john --show hashes.txt
Muestra las contraseñas que John logró descifrar desde los hashes.
- Crackear usando un diccionario personalizado
john --wordlist=/ruta/al/diccionario.txt hashes.txt
(diccionario.txt: un archivo de texto que contiene miles de palabras o contraseñas comunes que John probará contra los hashes.)
- Detectar automáticamente el tipo de hash
john --format=auto hashes.txt
Permite que John intente identificar qué tipo de hash está crackeando (por ejemplo, MD5, bcrypt, SHA512).
- Pausar un ataque y reanudarlo
john --pause
john --restore
- Crear el archivo de hashes en Linux
Si tienes acceso a /etc/passwd
y /etc/shadow
(archivos donde Linux guarda usuarios y contraseñas cifradas), puedes generar un archivo de hashes así:
unshadow /etc/passwd /etc/shadow > hashes.txt
(unshadow: comando de John que combina los datos de /etc/passwd
y /etc/shadow
para obtener un archivo hashes.txt
que John pueda usar.)
Ataque incremental (fuerza bruta pura)
john --incremental hashes.txt
John intentará todas las combinaciones posibles de caracteres. Es muy lento pero útil cuando no se tiene ninguna pista.
- Limitar los caracteres usados en la fuerza bruta
john --incremental=ASCII hashes.txt
Usa solo caracteres imprimibles básicos (letras, números, símbolos) para el ataque incremental, reduciendo el tiempo.
- Limitar el ataque a contraseñas cortas
john --incremental --max-length=6 hashes.txt
Solo intentará contraseñas de hasta 6 caracteres.
- Especificar el formato manualmente
john --format=raw-md5 hashes.txt
(raw-md5: formato específico para hashes en MD5 sin procesar.)
Si sabes el tipo de hash de antemano, es mejor indicarlo para acelerar el ataque.
- Ver los tipos de hash que John soporta
john --list=formats
Muestra una lista de todos los tipos de hash que John puede crackear.
- Crackear hashes NTLM de Windows
Si extraes hashes de Windows (por ejemplo, con samdump2 o secretsdump.py), puedes atacarlos así:
john --format=nt hashes_windows.txt
(hashes_windows.txt: archivo que contiene hashes de contraseñas de Windows.)
Tips adicionales:
- Usa
john --fork=N
donde N es el número de núcleos de tu CPU para paralelizar el trabajo. - John puede aprovechar GPUs modernas si compilas la versión Jumbo con OpenCL activado (
john --format=opencl
). - Si tienes un hash en un archivo
.pot
(archivo de contraseñas descubiertas), puedes analizarlo directamente sin volver a romper.
¿Cómo obtener hashes?
- En Linux:
/etc/shadow
contiene las contraseñas cifradas. - En Windows: puedes extraer hashes de NTLM usando herramientas como
samdump2
osecretsdump.py
. - En bases de datos filtradas: suelen publicarse en texto plano con hashes.
¿Es legal utilizar la herramienta de contraseñas John the Ripper?
Utilizar John the Ripper es legal, pero solo en un marco regulado. Así, puedes usarlo para probar la robustez de las contraseñas de tu propio sistema o si cuentas con un permiso explícito y por escrito del propietario del sistema probado.
En cambio, caes en la ilegalidad si utilizas JtR para infiltrarte en un sistema sin autorización, para probar fallas de seguridad sin haber obtenido un acuerdo, o para romper las contraseñas de cuentas ajenas.
Según el artículo del Código Penal de cada país, puedes correr el riesgo de enfrentar multas de hasta 150,000 € y 5 años de prisión (tu pena podría elevarse a 300,000 € y 7 años de prisión si atacas un sistema perteneciente al Estado).
¿Qué tipos de ataques utiliza John the Ripper para romper contraseñas?
Lejos de limitarse a un solo tipo de ataque por fuerza bruta, John the Ripper ofrece varios modos de descifrado:
- Modo simple, que consiste en realizar algunas transformaciones en el nombre de usuario para descifrar las contraseñas más débiles. Por ejemplo, si el usuario es “Admin”, JtR podría probar “admin”, “aDmin” o “admin1234”.
- Ataque incremental, o ataque por fuerza bruta “clásico,” que puede probar todas las combinaciones posibles de caracteres hasta encontrar la correcta. El principal inconveniente de este método es que puede ser extremadamente largo.
- Ataque por diccionario, que consiste en comparar el hash a descifrar con aquellos de contraseñas presentes en una lista predeterminada.
- Ataque por fuerza bruta híbrido, que establece variantes a partir de una lista de contraseñas (por ejemplo, “123azerty” en lugar de “azerty”).
- Modo Markov, que se basa en estadísticas para probar primero las contraseñas más probables.
¿Para qué sirve John the Ripper en el Pentesting?
Si John the Ripper es tan apreciado por los hackers éticos, es porque puede tener numerosas aplicaciones en pentesting y es muy útil para detectar ciertas debilidades en los sistemas. Así se utiliza para:
- Probar la robustez de las contraseñas utilizadas o almacenadas en servidores.
- Evaluar la seguridad de las cuentas de usuarios y detectar aquellas que usan contraseñas débiles, comunes o ya utilizadas en otras cuentas.
- Identificar hashes fácilmente rompibles y no salados, que a menudo se basan en algoritmos algo obsoletos como LM hash o SHA1 y que deberían considerarse para un cambio.
- Simular un ciberataque en un marco ético para evaluar la exposición de un sistema e identificar sus brechas relacionadas con políticas de contraseñas antes de que un ciberdelincuente las explote.
Preguntas frecuentes sobre John the Ripper
Sí, John the Ripper es una herramienta de pentesting de código abierto y totalmente gratuita. Por lo tanto, no necesitarás sacar tu tarjeta para instalarlo y usarlo.
A primera vista, John the Ripper y Hydra parecen hacer lo mismo: romper contraseñas. Pero en realidad, funcionan de dos maneras diferentes: John the Ripper es una herramienta de ruptura de contraseñas offline. Funciona a partir de hashes, a menudo extraídos de bases de datos comprometidas, y busca descifrarlos. Hydra está especializada en ataques en línea, que prueba varias contraseñas para intentar encontrar aquella asociada a un identificador, directamente desde una interfaz de inicio de sesión. Por lo tanto, estas herramientas no ofrecen lo mismo, pero son complementarias en pentesting.
Pingback: Hydra: Explicación y Uso de Ataque por Fuerza Bruta » CM