jueves, 18 de agosto de 2016

Crea un Diccionario para Ataques de fuerza Bruta con Crunch

 Un ataque de Fuerza Bruta esta definido como:

"La forma de recuperar una clave probando todas las combinaciones posibles hasta encontrar aquella que permite el acceso."

 Para realizar esto se hace uso de un Wordlist(Lista de Palabras) o como mas comunmente se le conoce Diccionarios, estos contienen una lista ya sea de cientos, miles o millones de combinaciones de palabras y/o numero y/o simbolos, algunos se pueden encontrar en la red y pueden pesar hasta varios Gigas o mas, hacerlo a mano seria una eternidad su elaboracion, por eso se hace uso de herramientas especializadas para generar estos "juegos de palabras" ; en este caso usaremos una utilidad llamada Crunch para generar un diccionario.


 En mi caso usare Parrot Os Security si estas usando otra Distro puedes instalar  Crunch usando:
 
sudo apt-get install crunch

Despues escribimos "crunch" en la terminal para verificar que este instalado



Nos aparece una nota con la sintaxis q usaremos:
crunch <min> <max> [options]

Hagamos una prueba y ponemos:

crunch 4 4



 Como ven nos crea un dato de cerca de 2Mb con 456976 lineas, con el primer "4" le dimos un "minimo" y el siguiente "4" un "maximo"

Ahora vamos a definirle que datos queremos que nos genere, ademas de que nos de un archivo de salida que es lo que buscamos en realidad, para eso usamos

crunch 4 4 ab12 -o salida.txt




 Si vamos a nuestro "Home" vemos que efectivamente se creo el archivo "salida.txt", lo abrimos y comprobamos que realmente nos genero la lista con las combinaciones que le especificamos y con "-o" le indicamos que queremos un "output" que sera el archivo resultante


Crunch tambien tiene parametros predefinidos, podemos usarlos para ahorrarnos unos cuantos click, para esto necesitamos el archivo "charset.lst" el cual contiene dichos parametros, lo pueden descargar de aqui y lo colocan en su Home. Veamos el ejemplo:


crunch 4 4 -f charset.lst numeric




Y como ven ahora solo nos genero numeros de acuerdo a la opcion que escogimos "numeric", el resto de las opciones se encuentran dentro del fichero que descargaron.


 Ahora vemos un ultimo ejemplo, supongamos que tenemos una parte de la contraseña, sabemos su longitud, es decir la cantidad de digitos faltantes y solo deseamos generar esos caracteres faltantes, podemos hacerlo con este ejemplo usando la opcion "-t"

crunch 6 6 -t ve@@@@



 Como ven aqui me creo una lista respetando los primeros caracteres que defini y generando el resto con el simbolo "@", este simbolo determina el tipo de caracter generado que pueden ver en la siguiente lista.

@ insertara minusculas
,   insertara mayusculas
% insertara numeros
^ insertara simbolos



Tambien podemos combinar letras, numeros o simbolos o mayusculas y minisculas

crunch 6 6 -t ve,@%^

Aqui definimos como el primer caracter a generar fuera una mayuscula, despues una miniscula el siguiente un numero y por ultimo un simbolo.

Por supuesto podemos definir los caracteres a generar en forma manual de esta otra manera

crunch 6 6 abcde1234 -t ve@@@@

De mas esta decir que al final de cada comando podemos poner "-o salida.txt" para generar el archivo que usaremos.

 Hasta aqui llega esta miniguia, existen mas opciones pero tendran que descubrirlas ustedes, resalto que deben ser cuidadosos con las opciones que manejan  ya que si ponen algo como esto:

crunch 10 22 -o salida.txt



Generara un archivo txt de 15610 PB lo cual no soportaria ningun DD.


Ya por ultimo el videito, bytes.











1 comentario:

  1. Hola, muy bien explicado. Quisiera saber sin embargo si existe una forma de hacer una combinación de diccionario con una generación del crunch. Los datos son estos:
    Contraseña de 20 digitos
    Los primeros dígitos son letras lcase (minúsculas) de un nombre de X cantidad de dígitos
    La contraseña se compone de nombre y numeros hasta completar los 20 digitos.

    ¿Hay alguna forma de suministrar la ubicación de un archivo de diccionario, que tome la palabra del nombre y complemente lo restante con numeros? Es decir, si un valor tomado es "juan" la clave generada por crunch sea juan%%%%%%... (etc) hasta 20 digitos (16 numeros), si la segunda es ana sería ana%%%%.... (etc, ana con 17 digitos), si es rupertino, sería rupertino%%%%... (etc, rupertino con 11 numeros). Gracias

    ResponderEliminar