La semana pasada, un colega de la universidad me llamó desesperado. Había encontrado un respaldo de su tesis de maestría de hace 10 años en un viejo CD, pero el archivo RAR estaba protegido con contraseña y, obviamente, no la recordaba. "¿hay alguna forma de recuperarla?" me preguntó. Esa conversación me inspiró a escribir este tutorial.
DISCLAIMER LEGAL FUNDAMENTAL: Este tutorial está dirigido exclusivamente a la recuperación de contraseñas de archivos propios, investigaciones forenses autorizadas, y propósitos educativos en entornos controlados. Intentar acceder a archivos protegidos que no te pertenecen sin autorización explícita es ILEGAL. Como siempre digo a mis estudiantes: el conocimiento técnico viene con responsabilidad ética.
¿Por qué necesitarías hacer esto?
Antes de meternos en la parte técnica, hablemos de los casos legítimos donde estas técnicas son útiles:
- Recuperación de archivos propios: Olvidaste la contraseña de tu respaldo
- Análisis forense digital: Investigaciones legales autorizadas
- Auditorías de seguridad: Evaluando la fortaleza de contraseñas corporativas
- Educación en seguridad: Demostrando vulnerabilidades para mejorar prácticas
En mis clases de seguridad informática, siempre uso este tipo de demostraciones para mostrar a los estudiantes por qué es crucial usar contraseñas fuertes. Ver cómo una contraseña "segura" como "123456" se rompe en segundos es más efectivo que cualquier conferencia teórica.
Entendiendo la criptografía de ZIP y RAR
Archivos ZIP: el estándar vulnerable
Los archivos ZIP usan diferentes métodos de cifrado dependiendo del software utilizado:
- ZipCrypto (tradicional): Muy débil, vulnerable a ataques de texto conocido
- AES-128/256: Mucho más fuerte, requiere ataques de fuerza bruta
La mayoría de archivos ZIP creados con herramientas estándar de Windows o versiones viejas de WinZip usan ZipCrypto, que es sorprendentemente fácil de romper.
Archivos RAR: más robustos
WinRAR implementa cifrado AES-128 por defecto desde hace años, lo que los hace considerablemente más seguros que ZIP tradicionales. Sin embargo, siguen siendo vulnerables a ataques de diccionario y fuerza bruta si la contraseña es débil.
Herramientas del arsenal
John the Ripper: el veterano confiable
John the Ripper es probablemente la herramienta más versátil para crackeo de contraseñas. Para archivos comprimidos, necesitas los scripts auxiliares:
# Instalar John the Ripper en Linux
sudo apt-get install john
# Para archivos ZIP
/usr/share/john/zip2john.py archivo.zip > hash.txt
john hash.txt
# Para archivos RAR
/usr/share/john/rar2john.py archivo.rar > hash.txt
john hash.txt
Lo brillante de John es que detecta automáticamente el tipo de hash y aplica las optimizaciones apropiadas.
fcrackzip: especialista en ZIP
Esta herramienta está específicamente diseñada para archivos ZIP y es notablemente eficiente:
# Instalar fcrackzip
sudo apt-get install fcrackzip
# Ataque de diccionario
fcrackzip -D -p /usr/share/wordlists/rockyou.txt archivo.zip
# Fuerza bruta (4-6 caracteres, solo números)
fcrackzip -b -c1 -l 4-6 archivo.zip
# Parámetros útiles:
# -c1: solo números (0-9)
# -ca: letras minúsculas
# -cA: letras mayúsculas
# -c1A: números y mayúsculas
rarcrack: para archivos RAR
Una herramienta simple pero efectiva para RAR:
# Instalar rarcrack
sudo apt-get install rarcrack
# Uso básico (probará combinaciones automáticamente)
rarcrack archivo.rar
# Con diccionario personalizado
rarcrack archivo.rar --type rar --wordlist diccionario.txt
Técnicas de ataque paso a paso
Análisis inicial del archivo
Antes de empezar cualquier ataque, analiza el archivo objetivo:
# Para ZIP: verificar método de cifrado
unzip -l archivo.zip
# Para RAR: información detallada
unrar l -v archivo.rar
# Verificar si hay archivos sin cifrar en el mismo ZIP
7z l archivo.zip
Esta información te ayuda a elegir la estrategia de ataque más apropiada.
Ataque de diccionario: la primera línea
Siempre empiezo con ataques de diccionario usando listas de contraseñas comunes:
# Descargar rockyou.txt (diccionario popular)
wget https://github.com/brannondorsey/naive-hashcat/releases/download/data/rockyou.txt
# Ataque con John the Ripper
john --wordlist=rockyou.txt hash.txt
# Ataque con fcrackzip
fcrackzip -D -p rockyou.txt archivo.zip
En mi experiencia, aproximadamente el 60% de archivos ZIP "olvidados" caen con diccionarios estándar. Las contraseñas más comunes que he visto: "123456", "password", "admin", nombres propios, y fechas.
Ataques híbridos: combinando estrategias
Para contraseñas que son variaciones de palabras del diccionario:
# John con reglas de mutación
john --wordlist=diccionario.txt --rules hash.txt
# Las reglas más comunes incluyen:
# - Agregar números al final (password123)
# - Capitalizar primera letra (Password)
# - Invertir palabras (drowssap)
# - Sustituir caracteres (p@ssw0rd)
Fuerza bruta: el último recurso
Cuando todo lo demás falla, queda la fuerza bruta. Pero ojo: puede tomar MUCHO tiempo.
# Fuerza bruta con fcrackzip (máximo 6 caracteres)
fcrackzip -b -c aA1 -l 1-6 archivo.zip
# Estimación de tiempo para diferentes longitudes:
# 4 caracteres alphanum: minutos
# 6 caracteres alphanum: horas/días
# 8 caracteres alphanum: años
# 10+ caracteres: olvídalo
Casos de estudio reales
El archivo de tesis perdido
Volviendo al caso de mi colega: su archivo RAR de 2004 contenía su tesis de maestría. Después de intentar todas las contraseñas "obvias" que él recordaba, pasamos a técnicas sistemáticas:
- Diccionario estándar: Sin resultados
- Diccionario personalizado: Creamos una lista con nombres de familiares, fechas importantes, etc.
- Híbrido con reglas: Combinamos palabras personales con números
La contraseña resultó ser "tesis2004!" - su palabra clave más el año y un signo de exclamación. Tardó 3 horas de procesamiento, pero recuperó 200 páginas de investigación que creía perdidas para siempre.
Auditoría corporativa de archivos
Durante una consultoría de seguridad para una empresa en Quito, me pidieron evaluar la seguridad de sus archivos de respaldo. Encontraron 47 archivos ZIP protegidos con contraseña en servidores corporativos.
Resultados después de 48 horas de procesamiento:
- 31 archivos crackeados (66%): Contraseñas débiles
- 12 archivos resistentes: Contraseñas aparentemente fuertes
- 4 archivos dañados: No se pudieron procesar
Las contraseñas crackeadas incluían joyas como "empresa123", "backup2013", "admin", y varias que eran simplemente el nombre del empleado. La demostración convenció a la gerencia de implementar políticas de contraseñas más estrictas.
Optimizaciones y trucos avanzados
Usando múltiples CPUs
John the Ripper puede aprovechar múltiples cores:
# Usar todos los cores disponibles
john --wordlist=diccionario.txt hash.txt --fork=4
# Ver progreso en tiempo real
john --show hash.txt
Ataques de texto conocido (solo ZIP)
Si conoces parte del contenido del archivo ZIP, puedes usar ataques de texto conocido:
# Si sabes que hay un archivo readme.txt con contenido conocido
pkcrack -C archivo.zip -c readme.txt -P archivo_conocido.zip -p readme.txt
Esta técnica explota debilidades en el cifrado ZipCrypto y puede ser extremadamente rápida.
Creando diccionarios personalizados
Para casos específicos, crear diccionarios personalizados es muy efectivo:
# Combinaciones de palabras base con años
for palabra in empresa admin backup; do
for ano in {2000..2014}; do
echo "$palabra$ano" >> diccionario_personalizado.txt
done
done
# Variaciones con símbolos comunes
for base in $(cat diccionario_base.txt); do
echo "$base!"
echo "$base123"
echo "$base@"
done >> diccionario_expandido.txt
Herramientas con interfaz gráfica
HashCat GUI
Para quienes prefieren interfaces gráficas, HashCat tiene versiones con GUI que simplifican el proceso. Especialmente útil para estudiantes que recién empiezan.
Passware Kit
Una solución comercial que incluye optimizaciones específicas para diferentes tipos de archivos. Es cara, pero muy eficiente para uso profesional.
Defensas y mejores prácticas
Eligiendo contraseñas resistentes
Basándome en años de demostraciones de crackeo, estas son mis recomendaciones:
- Longitud mínima: 12 caracteres
- Complejidad: Mezcla de mayúsculas, minúsculas, números, símbolos
- No usar palabras del diccionario: Ni siquiera con modificaciones simples
- Frases de contraseña: "Mi gato come pescado a las 3pm!" es mejor que "P@ssw0rd123"
Alternativas al cifrado de archivos
Para casos donde la seguridad es crítica, considera:
- TrueCrypt/VeraCrypt: Contenedores cifrados completos
- GPG: Cifrado de archivos individuales con criptografía fuerte
- 7-Zip con AES: Mejor que ZIP tradicional
Aspectos legales en Ecuador
En Ecuador, la Ley de Comercio Electrónico y la legislación sobre delitos informáticos establecen que:
- Acceder a archivos protegidos sin autorización puede constituir delito
- Usar estas técnicas en archivos propios es completamente legal
- Para investigaciones forenses, se requiere autorización judicial
- En entornos corporativos, debe haber políticas claras sobre auditorías de seguridad
Siempre documenta claramente el propósito y autorización antes de intentar crackear cualquier archivo.
Limitaciones y realidades
Factores que afectan el éxito
- Algoritmo de cifrado: AES es mucho más resistente que ZipCrypto
- Longitud de contraseña: Cada carácter adicional aumenta exponencialmente el tiempo
- Complejidad de contraseña: Caracteres especiales y mayúsculas incrementan el espacio de búsqueda
- Hardware disponible: CPUs más rápidos = ataques más rápidos
Cuándo rendirse
Hay que ser realista. Una contraseña verdaderamente aleatoria de 10+ caracteres con alta entropía puede ser prácticamente inquebrantable con hardware doméstico. En esos casos, es mejor buscar alternativas:
- Contactar al creador original del archivo
- Buscar respaldos sin cifrar
- Verificar si hay pistas en documentación relacionada
- Considerar servicios profesionales con hardware especializado
Consejos para estudiantes y profesionales
Configurando un laboratorio de práctica
Para aprender estas técnicas de forma ética:
- Crea tus propios archivos ZIP/RAR con contraseñas conocidas
- Usa diferentes niveles de complejidad de contraseña
- Documenta tiempos de crackeo para diferentes tipos de contraseña
- Experimenta con diferentes herramientas y técnicas
Construyendo experiencia
En mis clases, siempre asigno un proyecto donde los estudiantes deben:
- Crear archivos con contraseñas de diferente fortaleza
- Intercambiarlos entre compañeros
- Intentar crackear los archivos de otros
- Documentar qué técnicas funcionaron y cuáles no
Es un ejercicio excelente para entender tanto las capacidades como las limitaciones de estas técnicas.
Reflexión final
El crackeo de archivos ZIP y RAR es un tema fascinante que ilustra perfectamente la eterna lucha entre atacantes y defensores en ciberseguridad. Como herramientas forenses legítimas, estas técnicas son invaluables. Como vectores de ataque, nos recuerdan por qué la seguridad por oscuridad nunca es suficiente.
Lo más importante que he aprendido enseñando estos temas es que la tecnología es solo una parte de la ecuación. Las contraseñas más vulnerables no son las que rompe la computadora más rápida, sino las que elige el humano más perezoso.
Cada vez que demuestro cómo se puede crackear una contraseña "compleja" como "Admin2014!", veo esa mezcla de fascinación y terror en los ojos de mis estudiantes. Ese momento cuando entienden que la seguridad real requiere más que simplemente agregar un número al final de una palabra común.
Y esa, al final, es la lección más valiosa: no importa qué tan sofisticadas sean nuestras herramientas si no entendemos los principios fundamentales de la seguridad digital.
Comentarios 3
Comparte tu opinión
Gustavo Mendoza
Oscar López
Patricio Guerrero