Cracking hashes con Hashcat - 1

En el post anterior vimos que eran los hashes y como realizarlos con PowerShell. Este va a ser el primer post de una serie, en la cual vamos a tratar la herramienta Hashcat.

Hashcat es la herramienta OpenSource más avanzada y rápida para la recuperación de contraseñas a partir de un valor de hash dado. Esta herramienta cuenta con infinidad de opciones y se puede configurar para poder usar tanto el poder de la CPU como de la GPU. La lista de los tipos de hash soportados es inmensa, podemos consultarla aquí.

En este primer post vamos a recuperar la contraseña para diferentes funciones hash, mediante un ataque de diccionario. Para estas pruebas vamos a utilizar un diccionario de ejemplo que trae la propia herramienta, el cual se llama example.dict.

La sintaxis más sencilla será la siguiente:

hashcat.exe -a 0 -m 0 top_secret_md5.txt example.dict

Las opciones indican lo siguiente:

  • -a: Con esta opción indicamos el tipo de ataque. Con el valor 0 le estamos indicando al programa que lea desde el fichero de texto y que interprete cada línea como un candidato a contraseña.
  • -m: Con esta opción indicamos el tipo de función hash a la que nos enfrentamos. En esta ocasión al indicarle el valor 0, estamos diciendo que la función hash utilizada es MD5.
  • top_secret_md5.txt: es el fichero donde tenemos almacenado el hash de la contraseña.
  • example.dict: indicamos el diccionario que vamos a utilizar.

Tras la ejecución obtendremos lo siguiente:


En la primera linea se puede observar el valor del hash y a continuación, seguido con dos puntos, tenemos el resultado del valor de dicho hash, en este caso el resultado es 12345678.

Cambiado el valor de -m por uno de la lista, podemos comprobar cómo es capaz de romper las diferentes funciones hash:

hashcat.exe -a 0 -m 100 top_secret_sha1.txt example.dict

 

hashcat.exe -a 0 -m 1400 top_secret_sha256.txt example.dict
 


hashcat.exe -a 0 -m 1700 top_secret_sha512.txt example.dict 

Como se puede observar en las imágenes, hemos podido mediante ataques de diccionario romper los hashes, de diferentes funciones hash. Otra opción muy interesante en los ataques por diccionario es utilizar el flag -O. Esta opción nos permitirá incrementar la velocidad del ataque, pero con el inconveniente de que limita el tamaño de las contraseñas que vamos a romper al tamaño aceptado por el kernel, esta informacion se puede visualizar durante la ejecución de la herramienta.


Podéis descargar y consultar la documentación de hashcat desde su página web.


Comentarios

Entradas populares de este blog

Realizando hash con PowerShell

Cracking hashes con Hashcat - 4

Cracking hashes con Hashcat - 2