0Pricing
Ethical Hacking Academy · Lección

Cracking de hashes

Identificación y ataque

Cracking de hashes es una lección gratuita de Ethical Hacking Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Ethical Hacking Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Ethical Hacking Academy incluye 4 lecciones en total.

¿Por qué descifrar hashes?

Durante una operación, a menudo recuperará hashes de contraseñas de bases de datos, archivos de configuración o volcados de memoria. Descifrarlos confirma que hay contraseñas débiles y demuestra al cliente el impacto real.

Recuerde: el hashing es unidireccional. No puede revertir un hash directamente. En su lugar, debe probar posibles entradas, aplicarles hashing y compararlas con el objetivo.

Paso 1: identificar el hash

Antes de descifrarlo, debe saber qué algoritmo produjo el hash. La longitud y el formato ofrecen pistas:

  • 32 caracteres hexadecimales probablemente indican MD5.
  • 40 caracteres hexadecimales probablemente indican SHA-1.
  • 64 caracteres hexadecimales probablemente indican SHA-256.
  • Si comienza por $2b$, significa bcrypt; $argon2 significa Argon2.

Herramientas de identificación

Las herramientas automatizan la identificación de hashes para que no tenga que adivinar. hashid y hash-identifier analizan el formato y sugieren los algoritmos más probables.

El resultado indica qué número de mode debe pasar a su herramienta de descifrado.

hashid '5f4dcc3b5aa765d61d8327deb882cf99'
# Suggests: MD5, MD4, NTLM ...

Ataques de diccionario

Un ataque de diccionario (lista de palabras) prueba cada palabra de una lista, aplicando hashing a cada una y comparándola. Es rápido y detecta la enorme cantidad de usuarios que eligen contraseñas comunes.

La famosa lista de palabras rockyou.txt contiene millones de contraseñas reales filtradas y es el punto de partida predeterminado para la mayoría de los descifrados.

Ataques de fuerza bruta

Un ataque de fuerza bruta prueba todas las combinaciones posibles de caracteres. Está garantizado que acabará teniendo éxito, pero su coste es exponencial.

Puede restringirlo mediante una máscara: por ejemplo, exactamente 8 caracteres en minúsculas y dígitos. Las máscaras hacen viable una fuerza bruta dirigida cuando conoce la política de contraseñas.

?l = lowercase  ?u = uppercase  ?d = digit  ?s = symbol
# Mask ?u?l?l?l?l?d?d = Capital + 4 lower + 2 digits

Ataques basados en reglas

Las personas modifican las palabras base de forma predecible: «password» se convierte en «Password1!». Los ataques basados en reglas aplican transformaciones (poner en mayúscula, añadir el año, sustituir letras por números) a cada entrada de la lista de palabras.

Esto detecta contraseñas humanas realistas sin el coste de una fuerza bruta completa. El conjunto de reglas best64 es un punto de partida popular y eficiente.

Hashcat

hashcat es la principal herramienta de descifrado acelerada por GPU. Utiliza códigos numéricos de mode para cada algoritmo y una opción de modo de ataque (-a 0 diccionario, -a 3 fuerza bruta).

Las GPU hacen que hashcat sea enormemente más rápido que el descifrado con CPU para hashes rápidos como MD5 y SHA.

hashcat -m 0 -a 0 hashes.txt rockyou.txt
# -m 0 = MD5, -a 0 = dictionary attack

John the Ripper

John the Ripper es otra herramienta clásica de descifrado, potente con CPU y compatible con muchos formatos. A menudo detecta automáticamente el tipo de hash.

John incluye herramientas auxiliares prácticas, como unshadow, para combinar /etc/passwd y /etc/shadow de Linux en un archivo que se puede descifrar.

unshadow /etc/passwd /etc/shadow > combined.txt
john --wordlist=rockyou.txt combined.txt
john --show combined.txt

Por qué triunfan los salt y los hashes lentos

La velocidad de descifrado depende en gran medida del algoritmo:

  • Una GPU puede probar miles de millones de posibilidades de MD5 por segundo.
  • bcrypt o Argon2 pueden permitir solo unos pocos miles por segundo por diseño.

Los salt también obligan a descifrar cada hash por separado, eliminando el atajo de las tablas arcoíris. Precisamente por eso los defensores utilizan hashes lentos y con salt.

Consultas en línea y ética

Para hashes rápidos sin salt, las bases de datos en línea como CrackStation contienen consultas precalculadas y a menudo descifran hashes comunes al instante.

Ética: descifre únicamente hashes cuyo análisis tenga autorizado. Descifrar credenciales reales sin permiso es ilegal. Durante una operación, informe de las contraseñas descifradas como prueba de una política débil y nunca las reutilice con fines maliciosos.

Estimación del esfuerzo

Antes de dedicar horas a un descifrado, estime su viabilidad:

  • Velocidad del algoritmo: MD5 se descifra rápidamente; bcrypt es lento por diseño.
  • Complejidad de la contraseña: la longitud y el conjunto de caracteres hacen que el espacio de claves crezca enormemente.
  • Hardware: un equipo potente con GPU supera ampliamente a la CPU de un portátil.

Si descifrar un bcrypt con salt y una contraseña larga y aleatoria tardaría siglos, cambie a otras vías de ataque en lugar de recurrir a la fuerza bruta.

Comprobación rápida

Ha capturado un volcado de base de datos. Decida cuál es la primera medida más inteligente.

Resumen

Ha aprendido el flujo de trabajo para crackear hashes:

  • Identifique el algoritmo por su longitud y formato mediante hashid.
  • Aumente el coste de los ataques progresivamente: primero diccionario, después reglas y, por último, fuerza bruta con máscara.
  • Utilice hashcat (GPU) y John the Ripper (CPU, detección automática).
  • Las sales y los hashes lentos (bcrypt, Argon2) reducen drásticamente la velocidad de crackeo.
  • Manténgase siempre dentro de los límites de la autorización.

Esto completa el módulo Cryptography for Hackers. Siguiente módulo: Anonymity and OPSEC.

Preguntas frecuentes

¿La lección «Cracking de hashes» es gratis?

Sí — el texto completo de «Cracking de hashes» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Ethical Hacking Academy, actualiza a CoddyKit PRO. El curso de Ethical Hacking Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Cracking de hashes»?

Identificación y ataque Practicas Ethical Hacking Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Ethical Hacking Academy?

No se requiere experiencia previa. Ethical Hacking Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Cracking de hashes»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Ethical Hacking Academy?

Sí. Cada lección de Ethical Hacking Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Codificación frente a cifrado
  2. Hashing
  3. Simétrico y asimétrico
  4. Cracking de hashes
← Volver a Ethical Hacking Academy