John the Ripper tutorial - Hacker crackeando contrasenas con codigo verde estilo Matrix en terminal de ciberseguridad
|

John the Ripper: Guía Completa para Crackear Contraseñas en 2025

Si quieres aprender a usar John the Ripper, la herramienta de cracking de contraseñas más legendaria del mundo del hacking ético, has llegado al lugar correcto. En esta guía vas a descubrir desde cómo instalar John the Ripper hasta cómo crackear hashes de todo tipo como un auténtico profesional de la ciberseguridad.

John the Ripper (cariñosamente conocido como «John» o «JtR» entre los que nos dedicamos a esto) lleva desde 1996 siendo el terror de las contraseñas débiles. Y no, no es el asesino victoriano – aunque para las passwords mal configuradas, casi lo es.

Table of Contents

¿Qué es John the Ripper y para qué sirve?

John the Ripper es una herramienta de código abierto diseñada para auditar la seguridad de contraseñas mediante ataques de fuerza bruta y diccionario. Desarrollada originalmente por Openwall, esta utilidad se ha convertido en un estándar de la industria para profesionales de ciberseguridad, pentesters y administradores de sistemas.

En términos simples: John the Ripper toma hashes de contraseñas (esas cadenas de caracteres aparentemente aleatorias donde se almacenan las passwords) y las compara sistemáticamente con millones de combinaciones hasta encontrar la contraseña original.

Sus principales usos incluyen:

  • Auditorías de seguridad para detectar contraseñas débiles
  • Recuperación de contraseñas olvidadas (legalmente, claro)
  • Pruebas de penetración autorizadas
  • Investigaciones forenses
  • Demostraciones educativas sobre seguridad de contraseñas

Cómo descargar e instalar John the Ripper

Antes de empezar a crackear nada, necesitas tener John the Ripper instalado en tu sistema. Te muestro cómo hacerlo en los sistemas operativos más utilizados.

Instalar John the Ripper en Kali Linux

Buenas noticias: si usas Kali Linux, John the Ripper ya viene preinstalado. Puedes verificarlo ejecutando:

john –version

Si por alguna razón no lo tienes o quieres la última versión, puedes instalarlo con:

sudo apt update
sudo apt install john

Instalar John the Ripper en Ubuntu y Debian

En distribuciones basadas en Debian, la instalación es igual de sencilla:

sudo apt update
sudo apt install john

Para obtener la versión «Jumbo» con más funcionalidades:

sudo apt install john-jumbo

Instalar John the Ripper en Windows

Para Windows tienes dos opciones:

  1. Descargar los binarios precompilados desde la web oficial de Openwall
  2. Usar John the Ripper a traves de WSL (Windows Subsystem for Linux)

La opción recomendada es WSL porque tendrás acceso a todas las herramientas de Linux. Si prefieres los binarios nativos, descargalos desde https://www.openwall.com/john/ y extrae el contenido en una carpeta.

Compilar John the Ripper desde el código fuente

Si quieres la versión más actualizada con todos los parches de la comunidad, puedes compilar John the Ripper Jumbo:

git clone https://github.com/openwall/john.git
cd john/src
./configure
make -s clean && make -sj4

El binario compilado estara en ../run/john

Primeros pasos con John the Ripper: comandos básicos

Ya tienes John instalado. Ahora viene lo bueno: aprender a usarlo. El flujo de trabajo básico de John the Ripper es:

  1. Obtener el hash de la contraseña que quieres crackear
  2. Identificar el tipo de hash (opcional, John lo detecta automáticamente)
  3. Ejecutar John con el archivo de hashes
  4. Esperar a que haga su magia

El comando más básico de John the Ripper

Para crackear un archivo con hashes, simplemente ejecuta:

john archivo_hashes.txt

John detectará automáticamente el formato del hash y comenzará el ataque usando su modo por defecto.

Mostrar contraseñas crackeadas

Una vez que John encuentra contraseñas, las guarda en un archivo llamado john.pot. Para ver las contraseñas crackeadas:

john –show archivo_hashes.txt

Especificar el formato del hash

Si John no detecta correctamente el formato, puedes especificarlo:

john –format=md5crypt archivo_hashes.txt
john –format=sha512crypt archivo_hashes.txt
john –format=bcrypt archivo_hashes.txt

Para ver todos los formatos soportados:

john –list=formats

Los tres modos de ataque de John the Ripper

John the Ripper tiene tres modos principales de ataque. Entenderlos es fundamental para usarlo eficientemente.

Modo Single Crack

El modo Single Crack es el más rápido y debería ser tu primer intento. Usa información del propio archivo de contraseñas (nombres de usuario, campos GECOS) para generar candidatos:

john –single archivo_hashes.txt

Este modo es sorprendentemente efectivo porque mucha gente usa su nombre de usuario como contraseña o variaciones simples como «usuario123».

Modo Wordlist (Diccionario)

El modo diccionario compara los hashes contra una lista de palabras predefinida. Es el modo mas utilizado:

john –wordlist=/ruta/al/diccionario.txt archivo_hashes.txt

Diccionarios recomendados:

  • rockyou.txt: El clásico con millones de contraseñas reales filtradas
  • SecLists: Coleccion masiva de wordlists para todo proposito
  • CrackStation: Diccionarios optimizados para cracking

Puedes descargar rockyou.txt desde SecLists en GitHub o encontrarlo en /usr/share/wordlists/ en Kali Linux.

Usar reglas de transformación

Las reglas permiten modificar las palabras del diccionario automáticamente (añadir números, cambiar mayúsculas, etc.):

john –wordlist=diccionario.txt –rules archivo_hashes.txt

Para reglas más agresivas:

john –wordlist=diccionario.txt –rules=All archivo_hashes.txt

Modo Incremental (Fuerza Bruta)

El modo incremental prueba todas las combinaciones posibles de carácteres. Es el más lento pero el más completo:

john –incremental archivo_hashes.txt

Puedes especificar el conjunto de caracteres:

john –incremental=Digits archivo_hashes.txt # Solo numeros
john –incremental=Alpha archivo_hashes.txt # Solo letras
john –incremental=Alnum archivo_hashes.txt # Alfanumerico

Como crackear diferentes tipos de hashes con John the Ripper

John the Ripper soporta más de 300 formatos de hash. Aquí te explico como trabajar con los más comunes.

Crackear hashes MD5

MD5 es un algoritmo antiguo pero todavía muy utilizado:

john –format=raw-md5 hashes_md5.txt

Para hashes MD5 con salt (como los de Linux antiguos):

john –format=md5crypt hashes.txt

Crackear hashes SHA-256 y SHA-512

SHA-256:

john –format=raw-sha256 hashes_sha256.txt

SHA-512 (usado en sistemas Linux modernos):

john –format=sha512crypt hashes.txt

Crackear contraseñas de Linux (/etc/shadow)

Para extraer hashes de un sistema Linux, necesitas acceso root. Primero combina los archivos passwd y shadow:

unshadow /etc/passwd /etc/shadow > hashes_linux.txt

Luego crackea:

john hashes_linux.txt

Crackear contraseñas de Windows (NTLM)

Para hashes NTLM de Windows:

john –format=nt hashes_windows.txt

Puedes extraer hashes de Windows usando herramientas como mimikatz, secretsdump.py o fgdump.

Crackear archivos ZIP protegidos

Primero extrae el hash del archivo ZIP:

zip2john archivo_protegido.zip > hash_zip.txt

Luego crackea:

john hash_zip.txt

Crackear archivos RAR protegidos

Similar al proceso con ZIP:

rar2john archivo.rar > hash_rar.txt
john hash_rar.txt

Crackear archivos PDF protegidos

Para archivos PDF con contraseña:

pdf2john archivo.pdf > hash_pdf.txt
john hash_pdf.txt

Crackear bases de datos MySQL y PostgreSQL

MySQL:

john –format=mysql-sha1 hashes_mysql.txt

PostgreSQL:

john –format=postgres hashes_postgres.txt

John the Ripper vs Hashcat: cual elegir

Es la pregunta del millón en el mundo del password cracking. Ambas herramientas son excelentes, pero tienen diferencias importantes:

Ventajas de John the Ripper

  • Mejor detección automática de formatos de hash
  • Modo Single Crack único y muy efectivo
  • Funciona bien en sistemas con poca memoria
  • Más fácil de usar para principiantes
  • Mejor para hashes de sistemas operativos

Ventajas de Hashcat

  • Mucho más rápido usando GPU (tarjetas gráficas)
  • Más modos de ataque basados en reglas
  • Mejor rendimiento en ataques masivos
  • Soporte nativo para OpenCL y CUDA
  • Ideal para ataques a gran escala

Cuando usar cada uno

Usa John the Ripper cuando:

  • No tienes GPU potente
  • Necesitas detección automática de hashes
  • Trabajas con pocos hashes
  • Quieres usar el modo Single Crack

Usa Hashcat cuando:

  • Tienes una GPU dedicada (AMD o NVIDIA)
  • Necesitas crackear millones de hashes
  • Buscas la máxima velocidad
  • Quieres ataques complejos basados en reglas

Mi recomendación: aprende ambas. Son complementarias y un buen pentester domina las dos.

Trucos y consejos avanzados para John the Ripper

Después de años usando John the Ripper, estos son los trucos que más me han servido:

Guardar y restaurar sesiones

Si tienes que detener un ataque largo, puedes guardarlo y continuarlo después:

john –session=mi_sesion archivo_hashes.txt

Para restaurar:

john –restore=mi_sesion

Usar múltiples núcleos de CPU

Por defecto, John usa todos los núcleos disponibles. Puedes especificar cuántos usar:

john –fork=4 archivo_hashes.txt

Limitar la longitud de contraseñas

Para acelerar ataques, limita la longitud:

john –min-length=6 –max-length=10 archivo_hashes.txt

Crear wordlists personalizadas

Combina la información del objetivo para crear diccionarios personalizados:

  • Nombres de la empresa
  • Nombres de empleados
  • Fechas importantes
  • Productos o servicios

Herramientas como CeWL o Crunch te ayudan a generar wordlists automáticamente.

Ver el progreso del ataque

Presiona cualquier tecla mientras John esta corriendo para ver el progreso. También puedes usar:

john –status

Optimizar para rendimiento

Compila John the Ripper desde el código fuente con las optimizaciones para tu CPU:

./configure CFLAGS=»-O3 -march=native»
make -s clean && make -sj4

Usar john.pot para evitar trabajo duplicado

John guarda todas las contraseñas crackeadas en john.pot. Esto evita que vuelva a intentar hashes ya resueltos. No borres este archivo.

Preguntas frecuentes sobre John the Ripper

Es legal usar John the Ripper?

Si, John the Ripper es una herramienta legal. Lo que puede ser ilegal es usarla sin autorización para crackear contraseñas de sistemas que no te pertenecen. Usala solo en:

  • Tus propios sistemas
  • Sistemas donde tengas autorización escrita
  • Entornos de laboratorio para aprendizaje
  • Auditorias de seguridad contratadas

Cuanto tiempo tarda John the Ripper en crackear una contrasena?

Depende de varios factores:

  • Tipo de hash (MD5 es rápido, bcrypt es lento)
  • Longitud de la contraseña
  • Complejidad (solo letras vs caracteres especiales)
  • Potencia de tu hardware
  • Modo de ataque utilizado

Una contraseña de 6 caracteres con MD5 puede tardar segundos. Una de 12 caracteres con bcrypt puede tardar años.

Que es John the Ripper Jumbo?

John the Ripper Jumbo es la versión de la comunidad que incluye:

  • Soporte para mas de 300 tipos de hash adicionales
  • Mejor rendimiento en CPUs modernas
  • Parches y mejoras de la comunidad
  • Herramientas adicionales como zip2john, rar2john, etc.

Es la versión recomendada para uso profesional.

Puede John the Ripper usar la GPU?

Si, John the Ripper soporta aceleración por GPU mediante OpenCL, aunque Hashcat es generalmente más eficiente para ataques basados en GPU. Para usar OpenCL en John:

john –format=sha512crypt-opencl archivo_hashes.txt

Cómo saber si una contraseña ya fue crackeada?

Usa el comando –show para ver las contraseñas encontradas:

john –show archivo_hashes.txt

También puedes revisar el archivo john.pot directamente.

Puedo usar John the Ripper en mi teléfono?

Técnicamente es posible compilar John en Android usando Termux, pero no es práctico. El cracking de contraseñas requiere mucha potencia de procesamiento que los móviles no tienen. Mejor usa un ordenador.

Consideraciones éticas y legales

Antes de usar John the Ripper, recuerda:

  • Usalo sólo con autorización explícita
  • Documenta siempre tus pruebas de penetración
  • Reporta las vulnerabilidades encontradas de forma responsable
  • No uses conocimientos de cracking para fines maliciosos
  • La ética en ciberseguridad no es opcional

El conocimiento de estas herramientas debe usarse para mejorar la seguridad, no para comprometerla.

Conclusión

John the Ripper es una herramienta fundamental para cualquier profesional de la ciberseguridad. Desde auditorias de contraseñas hasta recuperación de acceso perdido, dominar esta utilidad te abrirá muchas puertas en el mundo del pentesting y la seguridad informática.

Recuerda: práctica en entornos controlados, mantente actualizado con las últimas versiones y siempre actúa de forma ética y legal.

Ahora ya tienes todo lo necesario para empezar a usar John the Ripper como un profesional. El siguiente paso es practicar. Crea tus propios hashes, genera contraseñas de prueba y experimenta con los diferentes modos de ataque. La práctica hace al maestro.

Publicaciones Similares

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *