Crunch: potente generador de diccionarios a partir de plantillas y reglas

Crunch: potente generador de diccionarios a partir de plantillas y reglas

Crunch es una de esas herramientas que debería tener a mano cualquiera que esté mínimamente relacionado con la seguridad informática o el pentesting. Si alguna vez se ha enfrentado a la tarea de descifrar contraseñas (por ejemplo, durante pruebas de seguridad), seguramente sabe lo importante que es contar con un diccionario de contraseñas de calidad. Y aquí Crunch resulta una auténtica salvación.

¿Por qué precisamente Crunch?

La cuestión es que los diccionarios habituales para ataques por fuerza bruta pueden ser demasiado voluminosos, y crearlos manualmente es una verdadera molestia. Sobre todo si es necesario generar combinaciones según reglas especiales: añadir el año de nacimiento, nombres de mascotas o frases favoritas del público objetivo.

Crunch resuelve estos problemas de forma elegante y rápida. Genera diccionarios según las reglas y plantillas que usted defina, ahorrando mucho tiempo y esfuerzo.

Cómo funciona Crunch: principios básicos

Crunch permite establecer los parámetros de generación con gran flexibilidad. Aquí algunas de las capacidades principales:

  • Longitud de las contraseñas: puede indicar la longitud mínima y máxima, por ejemplo, de 4 a 12 caracteres.
  • Conjunto de caracteres: es posible definir su propio conjunto de caracteres: dígitos, letras, caracteres especiales o incluso combinaciones personalizadas.
  • Plantillas de generación: Crunch puede trabajar según una plantilla dada, incluyendo posiciones concretas para números, letras o símbolos.
  • Tamaño y estructura de archivos: resulta sencillo dividir diccionarios grandes en varios archivos de tamaño especificado para facilitar su manejo.

¿Suena bien? Créame, en la práctica es incluso mejor.

Ejemplos de uso de Crunch

El ejemplo más simple es generar una lista de números del 0000 al 9999, que se usa a menudo para ataques contra pines:

crunch 4 4 0123456789 -o pin_codes.txt 

Y aquí un caso más interesante, si desea crear contraseñas de entre 6 y 8 caracteres con letras y cifras:

crunch 6 8 abcdefghijklmnopqrstuvwxyz0123456789 -o passlist.txt 

Crunch permite usar patrones especiales para generar contraseñas. Por ejemplo, si necesita crear una lista de contraseñas que empiecen por la palabra "pass" y terminen con dos dígitos:

crunch 6 6 -t pass%% -o passwords.txt 

Aquí "%" significa dígito. También puede usar otros símbolos de plantilla:

  • @ — letras minúsculas (a-z)
  • , — letras mayúsculas (A-Z)
  • % — dígitos (0-9)
  • ^ — caracteres especiales

Por ejemplo, creamos una contraseña con una letra mayúscula, cinco letras minúsculas y dos dígitos:

crunch 8 8 -t ,@@@@@%% -o pattern_passwords.txt 

¡Resultado: una lista lista para usar al instante!

¿Cómo evitar llenar el disco con gigabytes de diccionarios?

Crunch puede llenar rápidamente el disco con diccionarios enormes. Afortunadamente, los desarrolladores incluyeron la opción de limitar el tamaño del archivo:

crunch 8 8 -f charset.lst mixalpha-numeric-all-space -o bigdict.txt -b 50mb 

Así obtendrá un diccionario con un tamaño exacto de 50 megabytes. ¿Práctico? Eso se queda corto.

Crunch frente a otros generadores: ventajas y desventajas

Crunch no es la única herramienta para generar diccionarios. También existen CeWL, CUPP e incluso soluciones más avanzadas como Hashcat, pero Crunch tiene sus ventajas indiscutibles:

  • Simplicidad y velocidad: incluso un pentester principiante puede aprender a usar Crunch con rapidez.
  • Flexibilidad de las plantillas: puede configurar prácticamente cualquier regla de generación.
  • Gratuito y de código abierto: Crunch es completamente gratuito y su código fuente está disponible en SourceForge.

Pero, por supuesto, no está exento de inconvenientes:

  • Crunch no incluye diccionarios integrados ni reglas de generación basadas en el análisis de páginas web (a diferencia de CeWL).
  • Para listas especialmente grandes se necesita suficiente espacio en disco y algo de paciencia.

Sin embargo, si se usa la herramienta con criterio y no se intenta generar listas con miles de millones de combinaciones, no tendrá problemas.

Consejos para usar Crunch de forma eficiente

Aquí algunos consejos sencillos que le ayudarán a aprovechar Crunch al máximo:

  1. Siempre defina los objetivos de la generación y limite las listas para que sean específicas y no gigantescas.
  2. Use plantillas si conoce partes de la contraseña o combinaciones probables.
  3. No olvide dividir archivos enormes en partes para no saturar el sistema.
  4. Combine Crunch con otras herramientas como Hashcat o Aircrack-ng para obtener mejores resultados.

Conclusión: ¿por qué Crunch debería estar en su arsenal?

Crunch es ese caso poco común de herramienta simple, potente y efectiva al mismo tiempo. Es ideal tanto para quienes se inician en el pentesting como para profesionales que necesitan crear diccionarios de contraseñas de forma rápida y con calidad.

Si aún no ha probado Crunch, es el momento oportuno para hacerlo. Le facilitará la vida enormemente. Y, sí, recuerde liberar algo de espacio en disco. Por si acaso.


Alt text