Hashcat: Tu Aliado Gratuito para Poner a Prueba la Seguridad de tus Contraseñas
28
Views

Si te interesa la ciberseguridad, y en especial la seguridad de las contraseñas, probablemente ya hayas oído hablar de Hashcat, un software de código abierto muy apreciado por los Pentesters y otros expertos en ciberdefensa. ¿Su particularidad? Aprovecha la potencia de las GPU para descifrar contraseñas cifradas y acelerar los ataques de fuerza bruta.

En este artículo, descubrirás cómo se puede usar Hashcat para reforzar la seguridad de los sistemas de información, un desafío importante en un momento en que millones de contraseñas se ven comprometidas cada año.

¿Qué es la herramienta de ethical hacking Hashcat?

Hashcat es una de las herramientas de recuperación de contraseñas más potentes del mercado. Permite probar diferentes combinaciones para reconstruir una contraseña a partir de su huella criptográfica (llamada “hash“). Utilizada correctamente, es una herramienta formidable para el ethical hacking, que permite probar la solidez de las contraseñas, mejorar la seguridad de los sistemas e identificar vulnerabilidades relacionadas con contraseñas débiles.

¿Su enorme ventaja frente a sus competidores? Aprovecha la potencia de las tarjetas gráficas (GPU) para acelerar el proceso, lo que le permite encontrar contraseñas mucho más rápido que con un simple procesador.

Hashcat en la Terminal: Potencia Bruta para el Análisis de Contraseñas
El poder de Hashcat al descubierto. Así se ve la herramienta en acción desde la terminal, lista para auditar la seguridad de contraseñas.

¿Qué es un Hash?

Un hash es el resultado de una transformación matemática aplicada a un dato, como una contraseña. Imagina una picadora de cocina: una vez que un alimento se reduce a pequeños trozos, es imposible reconstruirlo en su estado inicial. Esto es exactamente lo que ocurre con un hash: una vez que una contraseña se convierte, no se puede recuperar directamente su versión original.

Los sistemas de seguridad utilizan algoritmos de hash como MD5, SHA-256 o bcrypt para transformar las contraseñas en una secuencia única de caracteres. Por ejemplo, con el algoritmo MD5, la contraseña “azerty” se convierte en:

« ab4f63f9ac65152575886860dde480a1 »

¿El problema? Algunas contraseñas son demasiado simples y sus hashes se pueden encontrar comparándolos con bases de datos existentes. Esto es exactamente lo que hace Hashcat: prueba miles de millones de combinaciones hasta encontrar una coincidencia.

¿Quién utiliza Hashcat?

Hashcat es una herramienta de pentest utilizada principalmente por profesionales de la ciberseguridad, pero que puede ser desviada con fines maliciosos. Varios tipos de perfiles la utilizan:

  • Pentesters y hackers éticos, que utilizan Hashcat para probar la seguridad de los sistemas de una empresa y reforzar la protección de las cuentas.
  • Administradores de sistemas, que deben asegurarse de que los usuarios adopten contraseñas robustas. Al probar sus propios sistemas con Hashcat, pueden detectar contraseñas demasiado simples y forzar su renovación.
  • Investigadores en ciberseguridad, que analizan la resistencia de los algoritmos de hash y participan en la mejora de los métodos de cifrado para reforzar la protección de datos.
  • Hackers maliciosos (black hat), que desvían Hashcat y lo utilizan con fines maliciosos para intentar descifrar las contraseñas contenidas en bases de datos robadas.

Hashcat es un arma de doble filo. Una herramienta potente en buenas manos, puede representar un verdadero peligro cuando se utiliza con fines maliciosos. Por ello, su uso está estrictamente regulado:

  • En un marco ético y autorizado, usar Hashcat es perfectamente legal. Los Pentesters certificados y los Administradores de sistemas lo emplean regularmente para probar sus propias infraestructuras o las de sus clientes, con su consentimiento.
  • Pero usar Hashcat para romper contraseñas sin la autorización del propietario del sistema es ilegal. En Europa (y en la mayoría de los países), es una infracción grave, castigada con 5 años de prisión y 150.000€ aproximado de multa.

¿Cómo funciona la herramienta de cracking de contraseñas Hashcat?

Para poder probar la robustez de las contraseñas a través de Hashcat, hay que seguir 3 pasos:

  1. Recuperar los hashes a crackear: pueden ser extraídos de una base de datos robada o extraídos durante un ciberataque.
  2. Elegir el método de ataque: Hashcat permite lanzar varios tipos de ataques de fuerza bruta, por lo que primero deberás elegir cuál es el más adecuado para tu situación.
  3. Lanzar el cracking: una vez configurado el ataque, Hashcat compara los hashes encontrados con los generados por sus intentos. En cuanto se detecta una coincidencia… ¡Bingo! La contraseña se recupera. Ten en cuenta también que, como Hashcat aprovecha la potencia de las GPU, el proceso se acelera enormemente, y con algunas tarjetas gráficas particularmente potentes, puede probar hasta varios miles de millones de hashes por segundo.

¿Para qué sirve Hashcat?

Hashcat es una herramienta versátil, utilizada con fines legítimos en ciberseguridad para:

  • Probar la robustez de las contraseñas: los Administradores de sistemas y Pentesters lo utilizan para ver si algunas contraseñas usadas pueden romperse fácilmente y, si es así, reforzar las políticas de seguridad.
  • Auditar la seguridad de los sistemas: Hashcat ayuda a los expertos en ciberseguridad a simular ataques de fuerza bruta para identificar las fallas de seguridad relacionadas con las contraseñas y corregirlas antes de que un pirata las explote.
  • Analizar bases de datos comprometidas: en caso de fuga de datos, Hashcat puede usarse para determinar si las contraseñas robadas podrían crackearse y advertir a los usuarios de los peligros potenciales.
  • Recuperar contraseñas olvidadas: imagina que pierdes una contraseña y no tienes forma de recuperarla… Hashcat puede ser una solución de último recurso, pero úsalo solo si estás explícitamente autorizado a hacerlo, de lo contrario, caerás en la ilegalidad.

¿Qué tipos de ataques se pueden hacer con Hashcat?

Para probar la robustez de las contraseñas utilizadas, los White Hat Hackers pueden usar Hashcat para simular varios tipos de ciberataques de fuerza bruta:

  • Ataque de fuerza bruta “simple”: muy eficaz pero muy lento, incluso usando la potencia de las GPU, y por una buena razón: Hashcat probará todas las combinaciones de caracteres posibles, hasta encontrar la correcta.
  • Ataque por diccionario: sin duda el método más rápido; Hashcat prueba las contraseñas de una lista conocida (como la famosa RockYou.txt), y ve si los hashes de alguna de ellas coinciden con los de la contraseña a descifrar; este método puede ser formidablemente eficaz contra las contraseñas más utilizadas.
  • Ataque por máscara: ideal si conoces una parte de la contraseña a crackear, por ejemplo, si sabes que empieza por “Passw” y termina por un número; Hashcat probará entonces únicamente las posibilidades que tengan en cuenta estas características, acelerando el proceso.
  • Ataque híbrido: mezcla entre el ataque por diccionario y el ataque de fuerza bruta simple, Hashcat desglosa las contraseñas de una lista para probar sus variantes, añadiendo, por ejemplo, números, mayúsculas o símbolos (a partir de “micontraseña”, el software probará, por ejemplo, “MiContraseña” o incluso “micontraseña123456”).
  • Ataque combinatorio: se combinan 2 diccionarios diferentes para probar una gran variedad de contraseñas; imaginemos que tienes un diccionario con las contraseñas más utilizadas y otro con una lista de nombres; Hashcat los asociará para, por ejemplo, probar “azertylucia” en lugar de simplemente “azerty” o “lucia”.

¿Cuáles son los algoritmos soportados por Hashcat?

Hashcat soporta actualmente más de 300 algoritmos de hash, y regularmente añade soporte para nuevos en sus actualizaciones. Entre los más conocidos, encontrarás:

  • LM hashes
  • MD4
  • MD5
  • SHA-family
  • Unix Crypt

¿Cómo instalar Hashcat en tu ordenador?

Instalar Hashcat en Windows

  1. Ve al repositorio oficial de Hashcat en GitHub para descargar la última versión disponible.
  2. Descomprime el archivo en una carpeta de tu elección.
  3. Asegúrate de que todas las dependencias y todos los controladores de tarjeta gráfica necesarios para el correcto funcionamiento de Hashcat están instalados en tu ordenador, y si es necesario, instala los que te falten.
  4. Abre la línea de comandos y navega hasta la carpeta donde se encuentra Hashcat.
  5. Ejecuta Hashcat escribiendo hashcat.exe.

Instalar Hashcat en MacOS

  1. Empieza por instalar un gestor de paquetes libres como Homebrew.
  2. Una vez instalado Homebrew, abre la Terminal de Mac y ejecuta el comando brew install hashcat.
  3. Una vez terminada la instalación, verifica que Hashcat está correctamente instalado escribiendo hashcat --help.

Instalar Hashcat en Linux

La orden a enviar para instalar Hashcat en Linux dependerá de tu versión de Linux. Por ejemplo:

  • En Debian o Ubuntu, escribe: sudo apt install hashcat
  • En Arch Linux, escribe: sudo pacman -S hashcat

También puedes compilar e instalar la última versión de Hashcat desde GitHub. Para ello, introduce la siguiente orden:

git clone https://github.com/hashcat/hashcat.git
cd hashcat
make

Verifica después la instalación introduciendo ./hashcat --help.

Ejemplo de Uso de Hashcat

Una vez instalado Hashcat, puedes probarlo con un ejemplo básico. Supongamos que tienes un archivo hashes.txt con hashes MD5 y quieres probarlos contra un diccionario de contraseñas (rockyou.txt).

hashcat -m 0 -a 0 hashes.txt rockyou.txt

Explicación de los parámetros:

  • -m 0: indica que el hash es de tipo MD5.
  • -a 0: modo de ataque por diccionario.
  • hashes.txt: archivo que contiene los hashes a crackear.
  • rockyou.txt: lista de contraseñas que se probarán.

Para ver todos los modos y algoritmos compatibles, ejecuta:

hashcat -h

⚠️ Recuerda: solo debes usar Hashcat en sistemas de prueba o con autorización explícita. El uso indebido puede ser delito.

Preguntas frecuentes sobre la herramienta Hashcat

¿Es Hashcat gratuito?

¡Sí, Hashcat es un software de código abierto y totalmente gratuito! Cualquiera puede usarlo sin coste alguno, e incluso modificarlo o mejorarlo. Es actualizado regularmente por la comunidad y está disponible directamente en su sitio web oficial o a través de GitHub.

¿Cuál es la diferencia entre Hashcat y John the Ripper?

Gracias al uso de las GPU, Hashcat permite un cracking muy rápido de las contraseñas, especialmente en fuerza bruta. También te permite realizar ataques avanzados como ataques combinatorios, que no podrás realizar con John the Ripper.
Sin embargo, John the Ripper es más flexible para ataques avanzados en CPU, especialmente para ataques híbridos o basados en hashes únicos.
La elección entre estas 2 herramientas depende, por lo tanto, de tus necesidades: Hashcat es ideal para ataques masivos y rápidos en GPU, mientras que John the Ripper es más adecuado para pruebas específicas en CPU.

¿Cuánto tiempo tarda en crackearse una contraseña con Hashcat?

Todo depende de la complejidad de la contraseña y de la potencia de tu máquina. Una GPU potente puede probar miles de millones de combinaciones por segundo, pero si la contraseña a descifrar es particularmente larga y compleja (como « L!m0n_@d3#2025djf3Fzj2’9kqsNV!?CXGsq9ç » por ejemplo), podría tardar meses (o incluso años) en crackearse.

¿Se puede usar Hashcat para crackear una contraseña Wi-Fi?

Sí, Hashcat se puede usar para crackear una contraseña Wi-Fi, pero solo en un marco legal y con el acuerdo explícito del propietario de la red en cuestión. Nota: gracias a Hashcat, podrás probar la robustez de las contraseñas WPA/WPA2, pero no capturar datos directamente de una red Wi-Fi (para eso, necesitarías usar un sniffer de paquetes).

Categorías:
Diccionario

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *