Cómo recuperar una clave en MD5
La criptografía es utilizada para la proteger la información sensible de usuarios no autorizados, en una de ramas se encuentran los algoritmos de hash los cuales se encargan de asignan un valor numérico a cada carácter dentro del texto/archivo y generar un “hash” único (en teoría) para este.
En esta entrada pretendo recopilar los distintos métodos que tenemos para recuperar una clave o texto codificado con el algoritmo MD5, uno de los mas utilizados actualmente .
Antes de empezar definamos qué es MD5:
Es uno de los algoritmos de reducción criptográficos diseñados por el profesor Ronald Rivest del MIT (Massachusetts Institute of Technology, Instituto Tecnológico de Massachusetts), Ampliamente utilizado en aplicaciones web (principalmente para almacenar contraseñas), para verificar la integridad de archivos y en.
Métodos para recuperar una Clave en MD5
Ataque de Fuerza Bruta
El MD5 es un algoritmo unidireccional (permite codificar mas no decodificar), por eso para validar las entradas es necesario pasarlas primero por el algoritmo para después comparar el hash generado con el que esta almacenado previamente, una de las primeras ideas que nos llega a la mente para “decodificar” algo en MD5 es realizar un ataque por fuerza bruta, donde codifiquemos caracteres desde aaaaaaa…a hasta zzzzzzz…z comparando con el hash que tenemos para ver si coincide.
Existen portales que se dedican a realizar este ataque de fuerza bruta y a almacenar en su base de datos la cadena de caracteres con su respectivo hash en MD5 por lo tanto lo primero que debemos hacer es comprobar si el hash que tenemos ya ha sido almacenado en alguna de estas bases de datos, si es asi podremos ahorrarnos mucho tiempo.
Bases de Datos para crackear MD5
Aquí les dejo un listado con las bases de datos con mas registros, este es el primer paso que se debe realizar solo tendremos que colocar el hash en el campo de texto y consultar si este ya esta en la base de datos, no es demorado y puede ahorrarnos mucho tiempo (click en la imagen para visitar la pagina).
Y existen muchas mas solo es cuestión de buscar, recuerda probar primero el hash que tienes en cuanta base de datos de este tipo encuentres ya que el tiempo que gastas buscando nuevos portales con DB lo recuperas con creces si encuentras el pass decodificado en uno de ellos.
Software para Realizar Ataques de Fuerza Bruta a claves con MD5
Si la búsqueda en las bases de datos no te arrojo resultados positivos puedes realizar el ataque desde tu propia maquina, existe mucho software que puedes utilizar para este fin.
En mi experiencia personal el mejor programa para realizar ataques de fuerza bruta a una clave codificada con MD5 es el MDCRACK así que solo realizare un pequeño tutorial de como manejar este software y les pondré un listado de las otras alternativas que tienes para recuperar tu password en MD5 por este medio.
Lo primero que debemos hacer es descargar el MDCRACK de la pagina oficial lo descomprimimos e iniciamos un terminal (inicio/ejecutar/cmd.exe) ubicándonos en la carpeta donde tengamos el archivo MDCrack-sse.exe y ejecutamos el comando
MDCrack-sse.exe f4d09a31cd15e26c0a150e595511c90e
Con este comando el MDCrack empezará a realizar el ataque contra el hash que le hemos ingresado como parámetro utilizando las opciones por defecto, es decir todas las combinaciones de letras en minúsculas, MAYUSCULAS y num3r0s con un tamaño de password máximo de 12 caracteres.
En la mayoría de los casos esa configuración es la apropiada ya que no es muy común (lamentablemente) encontrar passwords de mas de 8 caracteres y con S!m&ol@s.
Despues empezara a aparecer en pantalla algo parecido a esto:
Password size: 1
Password size: 2
Password size: 3
Password size: N..
Hasta que aparezca el resultado del ataque
----------------------------------------
Collision found ! => Comunidad DragonJAR (este es el password en md5 crackeado)
Si no te aparece el resultado deberás introducir una configuración personalizada:
Si queremos que además de minúsculas, MAYÚSCULAS y nu3r0s aparezcan también S!m&ol@s debemos ingresar lo siguiente en consola:
MDCrack-sse.exe -s abcdefghijklmnopqrstuvwxyzABCDEFGHIJKMNOPQRSTUVWXYZ0123456789!&@ f4d09a31cd15e26c0a150e595511c90e
Como puedes ver para ingresar parámetros personalizados se llama el programa con el la opción -s seguido de todos los caracteres que quieres usar, en este caso todas las letras (menos la ñ ni Ñ que no son soportadas) en minúsculas y MAYÚSCULAS, todos los números del 0 al 9 y los 3 símbolos usados en la clave de ejemplo !&@.
Puedes realizar las combinaciones que quieras, por ejemplo si sabes que la mayoría de claves se escriben en minúscula puedes ahorrarte mucho tiempo colocando como parámetro solo las minúsculas.
Si quieres pausar la tarea y resumir mas tarde solo tienes que crear la carpeta c:\temp en esta se guardara lo que llevas, cuando quieras resumir ejecuta el MDCrack sinr ningún parámetro el revisara la carpeta y continuara el trabajo.
Es recomendado también si quieres otras tareas en el equipo mientras realizas el ataque es recomendable que le asignes una prioridad de “muy bajo” al proceso desde el administrador de tareas, de lo contrario tu pc quedara muy lento por la cantidad de recursos que consume el mdcrack y no podras hacer nada mas.
Originalmente el mdcrack solo esta disponible por linea de comandos, pero existen varios front ends realizados por terceros para las personas que no son muy amigas de la consola, el mas completo es este frontend en VB desarrollado por nulladd con el cual puedes configurar fácilmente los parámetros de este programa pero en la pagina del proyecto encontraras otros.
El MDCrack funciona sin ningun problema con wine por lo que el sistema operativo no es una limitación.
Con esto termino el pequeño tutorial sobre MDCrack, ahora les daré un listado de otras herramientas utilizadas para realizar ataques de fuerza bruta a hash en MD5.
Una de las mejores herramientas para recuperación de passwords en Windows, para utilizarlo con claves en MD5 solo tienes que ir a la Pestaña “Cracker” luego en “MD5 Hashes” le das en el “+” y metes el hash.
John the Ripper es un clásico entre las herramientas para realizar ataques de fuerza bruta, desde hace un tiempo soporta ataques a hash en MD5 y aunque no es tan rápido en esta tarea como el mdcrack es otra opción que tienes.
Pagina oficial del John The Ripper
Otras herramientas para Realizar Ataques de Fuerza Bruta a hash MD5
Hace unos meses comentaba una noticia donde se comentaba sobre el uso de Google para descifrar Password MD5, no debe ser una de tus primeras opciones pero si deberías tenerla en cuenta.
Este es un proyecto elaborado por WHK el cual consiste en un sistema basado PHP donde se ingresa una serie de palabras con sus respectivos hashes en MD5 a una base de datos en MySQL, lo que diferencia este sistema de las bases de datos es que permite ingresar listas de palabras, y ademas sacar palabras de búsquedas especificas en google o de cualquier pagina web.
Pagina Oficial del Elf Wizard The Ripper MD5
En IronGeek publicaron un video donde explican varios de los métodos expuestos en este articulo para decodificar passwords en MD5.
Podemos concluir que aunque los hash agregan un pequeño obstáculo entre el atacante y la clave, no podemos confiar en el y es recomendable utilizar contraseñas con mas de 12 caracteres 4lph4num3r1c0s y con s!m&olºs para hacer de la tarea del atacante sea un poco mas dispendiosa.
Si tienes alguna otra forma de realizar no olvides comentarla y la agregare a esta entrada.