hashcat & John
hashcat y John the Ripper son las herramientas de cracking de contraseñas de referencia. hashcat usa la GPU (rapidísimo); John destaca en CPU y formatos exóticos. Se usan para auditar contraseñas y en pentest/CTF para romper hashes capturados (ver Hashing & cracking, Volcado de credenciales).
hashcat (GPU)
Sección titulada «hashcat (GPU)»# estructura: hashcat -m <modo> -a <ataque> hashes.txt <diccionario/máscara>hashcat -m 0 hashes.txt rockyou.txt # MD5 + diccionariohashcat -m 1000 ntlm.txt rockyou.txt -r rules/best64.rule # NTLM + reglashashcat -m 22000 hs.hc22000 rockyou.txt # WPA/WPA2 (ver wireless)hashcat -m 1000 ntlm.txt -a 3 '?u?l?l?l?l?d?d' # máscara (fuerza bruta estructurada)hashcat --identify hashes.txt # ayuda a detectar el modoModos (-m) frecuentes
Sección titulada «Modos (-m) frecuentes»0 MD5 100 SHA1 1400 SHA2561000 NTLM 1800 sha512crypt 3200 bcrypt5600 NetNTLMv2 (responder, ver ad-llmnr) 13100 Kerberoast TGS (ver ad-kerberos)18200 AS-REP (ver ad-kerberos) 22000 WPA-PBKDF2 (ver wireless)Tipos de ataque (-a)
Sección titulada «Tipos de ataque (-a)»0 diccionario (wordlist) + reglas (-r) para mutaciones3 máscara / fuerza bruta ?l min, ?u may, ?d dígito, ?s símbolo, ?a todo6 híbrido wordlist+máscara 7 híbrido máscara+wordlist# estrategia: diccionario+reglas primero (rentable), máscaras despuésJohn the Ripper
Sección titulada «John the Ripper»john --wordlist=rockyou.txt --format=nt hashes.txt # crackearjohn --show hashes.txt # ver crackeadas# "jumbo" trae cientos de formatos y utilidades *2john (zip2john, ssh2john, etc.)zip2john fichero.zip > hash ; john hash # romper un zip con contraseñaReglas y diccionarios
Sección titulada «Reglas y diccionarios»- rockyou.txt como base; SecLists para más opciones- reglas (best64, dive, OneRuleToRuleThemAll) -> multiplican el diccionario con mutaciones- máscaras para patrones conocidos (p. ej. Empresa2024!) cuando el diccionario fallaBlue Team / uso
Sección titulada «Blue Team / uso»- hashcat (GPU) para volumen; John (jumbo) para formatos exóticos y utilidades *2john.
- Estrategia: diccionario + reglas primero (rentable), luego máscaras por patrones.
- Para hashes de AD (NetNTLMv2, Kerberoast, AS-REP) ver ad-llmnr/ad-kerberos; para WPA, wireless.
- Defensa: contraseñas Argon2/bcrypt y largas (Hashing & cracking) hacen inviable el cracking.
Trucos y errores comunes
Sección titulada «Trucos y errores comunes»- Identifica bien el modo (
-m) del hash antes de nada; un modo equivocado no crackea aunque la pass sea trivial. - Empieza por diccionario + reglas (best64, OneRuleToRuleThemAll) antes de la fuerza bruta pura.
- Error típico: lanzarlo en una VM sin GPU; hashcat rinde en GPU real. Usa
--statusy--restoreen sesiones largas. - Para Kerberoasting/NTLM usa los modos correctos (13100 TGS-REP, 1000 NTLM) y máscaras según la política de contraseñas.
Checklist de prueba
Sección titulada «Checklist de prueba»- Identificar el tipo de hash (—identify / hashid)
- Elegir el modo -m correcto
- Diccionario (rockyou) + reglas (best64) primero
- Máscaras por patrones si el diccionario falla
- Formatos AD/WPA con el modo adecuado (ad-*/wireless)
- John jumbo + *2john para zip/ssh/office
- Verificar defensa: hashing lento + salt (Hashing & cracking)