Introducción
En la forense digital, la recuperación de contraseñas de pruebas incautadas es a menudo un paso crítico. Estas contraseñas pueden desbloquear archivos cifrados, acceder a cuentas de usuario o proporcionar información crucial sobre las actividades de un sospechoso. John the Ripper es una herramienta gratuita y de código abierto para descifrar contraseñas que es ampliamente utilizada por profesionales de la seguridad e investigadores forenses para probar la fortaleza de las contraseñas y recuperar contraseñas perdidas o comprometidas.
Este laboratorio te guiará a través de la aplicación práctica de John the Ripper en un contexto de forense digital. Aprenderás a extraer hashes de contraseñas de diversas fuentes, a utilizar John the Ripper para descifrar estos hashes y a comprender la importancia de la documentación adecuada y la cadena de custodia en las investigaciones forenses. Al final de este laboratorio, tendrás una sólida comprensión de cómo integrar John the Ripper en tu flujo de trabajo de forense digital.
Extracción de Hashes de Imágenes Forenses
En este paso, aprenderás a simular la extracción de hashes de contraseñas de una imagen forense. En un escenario del mundo real, estos hashes se extraerían de diversas fuentes como archivos /etc/shadow, bases de datos SAM o contenedores cifrados. Para este laboratorio, hemos precreado un archivo llamado hashes.txt que contiene hashes MD5 de ejemplo.
Primero, examinemos el contenido del archivo hashes.txt para comprender el formato de los hashes con los que trabajaremos.
cat ~/project/hashes.txt
Deberías ver una salida similar a esta, donde cada línea representa un nombre de usuario seguido de dos puntos y su hash correspondiente:
user1:5f4dcc3b5aa765d61d8327deb882cf99
user2:21232f297a57a5a743894a0e4a801fc3
user3:d41d8cd98f00b204e9800998ecf8427e
user4:a87ff679a2f3e71d9181a67b7542122c
Estos son hashes MD5. John the Ripper puede detectar automáticamente muchos tipos de hashes, pero comprender el formato es crucial para un descifrado efectivo.
Uso de John the Ripper para Recuperar Contraseñas de Evidencia
En este paso, utilizarás John the Ripper para descifrar los hashes extraídos en el paso anterior. Usaremos un ataque simple de lista de palabras (wordlist attack), que es una técnica común en el descifrado de contraseñas donde John intenta hacer coincidir los hashes con una lista de contraseñas comunes.
Primero, usemos John the Ripper con el archivo hashes.txt y el archivo wordlist.txt. La opción --format=Raw-MD5 le indica explícitamente a John the Ripper que trate los hashes como MD5 en bruto, aunque a menudo lo detecta automáticamente.
john --wordlist=~/project/wordlist.txt ~/project/hashes.txt
Después de ejecutar el comando, John the Ripper intentará descifrar las contraseñas. La salida mostrará el progreso y cualquier contraseña descifrada. Puede tardar unos momentos.
Una vez que John termine, puedes ver las contraseñas descifradas usando la opción --show.
john --show ~/project/hashes.txt
Deberías ver una salida similar a esta, mostrando las contraseñas descifradas para los usuarios:
user1:password (user1)
user2:admin (user2)
user4:test (user4)
3 password hashes cracked, 1 left
Ten en cuenta que la contraseña de user3 (que está vacía, representada por d41d8cd98f00b204e9800998ecf8427e) podría no ser descifrada por esta lista de palabras específica, ya que las contraseñas vacías a menudo se manejan de manera diferente o requieren reglas específicas.
Documentación de Procedimientos Forenses con John the Ripper
En la informática forense, la documentación meticulosa es primordial. Cada paso dado durante una investigación, incluido el uso de herramientas como John the Ripper, debe registrarse. Esto garantiza la integridad de la evidencia y la credibilidad de los hallazgos en el tribunal.
En este paso, simularás la documentación del proceso de descifrado. Debes registrar:
- Herramienta utilizada: John the Ripper
- Versión: (Puedes encontrarla ejecutando
john --version) - Archivo de entrada:
~/project/hashes.txt - Lista de palabras utilizada:
~/project/wordlist.txt - Contraseñas descifradas: La salida de
john --show - Fecha y Hora: Cuándo se realizó el descifrado.
Creemos un archivo de texto simple para documentar esto. Usa nano para crear y editar un archivo llamado forensic_log.txt en tu directorio ~/project.
nano ~/project/forensic_log.txt
Dentro de nano, agrega contenido similar al siguiente, reemplazando las contraseñas descifradas con tus resultados reales:
Forensic Log - Password Cracking
Date: <Current Date and Time>
Investigator: LabEx User
Tool Used: John the Ripper
Version: <Output of john --version>
Input Hash File: ~/project/hashes.txt
Wordlist Used: ~/project/wordlist.txt
Cracking Command:
john --wordlist=~/project/wordlist.txt ~/project/hashes.txt
Cracked Passwords:
user1:password
user2:admin
user4:test
Notes:
Attempted to crack MD5 hashes using a provided wordlist.
Presiona Ctrl+X, luego Y para guardar, y Enter para confirmar el nombre del archivo.
Después de guardar, puedes ver el contenido de tu archivo de registro:
cat ~/project/forensic_log.txt
Este registro sirve como una parte crucial de tu informe forense.
Mantener la Cadena de Custodia de las Contraseñas Descifradas
Mantener la cadena de custodia es vital en la informática forense para asegurar que la evidencia se maneje adecuadamente y siga siendo admisible en el tribunal. Esto implica documentar quién tuvo acceso a la evidencia, cuándo y con qué propósito. Para las contraseñas descifradas, esto incluye almacenarlas de forma segura y documentar su descubrimiento.
En este paso, simularás la protección de las contraseñas descifradas y la documentación de su manejo. Si bien en un escenario real podrías usar contenedores cifrados o bases de datos seguras, aquí simplemente moveremos las contraseñas descifradas a un directorio designado como "evidencia" y actualizaremos nuestro registro.
Primero, creemos un directorio para almacenar la evidencia.
mkdir -p ~/project/evidence/cracked_passwords
Ahora, redirigiremos la salida de john --show a un archivo dentro de este nuevo directorio. Este archivo contendrá solo las contraseñas descifradas.
john --show ~/project/hashes.txt > ~/project/evidence/cracked_passwords/cracked_passwords_output.txt
Verifica que el archivo se ha creado y contiene las contraseñas descifradas:
cat ~/project/evidence/cracked_passwords/cracked_passwords_output.txt
Finalmente, actualiza tu forensic_log.txt para reflejar que las contraseñas descifradas han sido aseguradas. Abre el archivo de registro nuevamente:
nano ~/project/forensic_log.txt
Agrega una nueva sección al registro, similar a esta:
Cracked Passwords Secured:
Location: ~/project/evidence/cracked_passwords/cracked_passwords_output.txt
Date Secured: <Current Date and Time>
Guarda y sal de nano (Ctrl+X, Y, Enter).
Este proceso asegura que las contraseñas descifradas se traten como evidencia y que su manejo esté documentado.
Presentar Hallazgos en un Informe Forense
El paso final en cualquier investigación de informática forense es presentar los hallazgos en un informe forense claro, conciso y legalmente sólido. Este informe resume la investigación, los métodos utilizados, la evidencia encontrada y las conclusiones extraídas.
En este paso, compilarás la información recopilada a lo largo de este laboratorio en un informe forense simplificado. Este informe típicamente incluiría:
- Información del Caso: ID del Caso, Investigador, Fecha.
- Resumen Ejecutivo: Breve descripción general de los hallazgos.
- Metodología: Herramientas y técnicas utilizadas (por ejemplo, John the Ripper, ataque de lista de palabras).
- Hallazgos: Contraseñas descifradas específicas y sus cuentas asociadas.
- Conclusión: Resumen de lo que implican los hallazgos.
- Apéndices: Registros brutos, archivos de hash, etc. (como
forensic_log.txt).
Creemos un nuevo archivo llamado forensic_report.txt en tu directorio ~/project usando nano.
nano ~/project/forensic_report.txt
Agrega contenido similar al siguiente, incorporando los detalles de tu forensic_log.txt y las contraseñas descifradas:
Digital Forensic Report
Case ID: LABEX-JTR-001
Investigator: LabEx User
Date of Report: <Current Date and Time>
1. Executive Summary:
This report details the recovery of user account passwords from seized digital evidence using John the Ripper. Three passwords were successfully recovered.
2. Methodology:
Password hashes were extracted from a simulated forensic image (hashes.txt). John the Ripper (version <John version>) was utilized with a custom wordlist (wordlist.txt) to perform a dictionary attack against the extracted MD5 hashes.
3. Findings:
The following user accounts and their corresponding passwords were recovered:
- user1: password
- user2: admin
- user4: test
The raw output of the cracking process and detailed procedural logs are appended in the Forensic Log (forensic_log.txt).
4. Conclusion:
The recovered passwords provide access to the identified user accounts, which may contain further relevant evidence for the ongoing investigation.
5. Appendices:
- Forensic Log: ~/project/forensic_log.txt
- Cracked Passwords Output: ~/project/evidence/cracked_passwords/cracked_passwords_output.txt
Guarda y sal de nano (Ctrl+X, Y, Enter).
Finalmente, revisa tu informe completo:
cat ~/project/forensic_report.txt
Este ejercicio demuestra la importancia de consolidar todos los hallazgos en un informe completo para fines legales y de investigación.
Resumen
¡Felicitaciones! Has completado con éxito el laboratorio "John the Ripper para Informática Forense".
En este laboratorio, adquiriste experiencia práctica con John the Ripper, una herramienta fundamental en la informática forense. Aprendiste a:
- Simular la extracción de hashes de evidencia forense.
- Utilizar John the Ripper para recuperar contraseñas mediante un ataque de lista de palabras.
- Documentar meticulosamente los procedimientos forenses, creando un registro detallado de tus acciones.
- Comprender y mantener la cadena de custodia de la evidencia descubierta, específicamente las contraseñas descifradas.
- Compilar y presentar hallazgos en un informe forense estructurado.
Estas habilidades son cruciales para cualquier investigador de informática forense, permitiéndoles analizar evidencia de manera efectiva, recuperar información crítica y presentar sus hallazgos de manera legalmente sólida. Continúa explorando otras técnicas de cracking de contraseñas y las características avanzadas de John the Ripper para mejorar aún más tus capacidades forenses.


