Autor
|
Tema: Como hacer un programa para averiguar contraseñas por fuerza bruta. (Leído 23,231 veces)
|
Anastacio
Desconectado
Mensajes: 111
|
Hola amigos, he buscado funciones por todos lados, pero no pude encontrar nada que me ayude.
Estoy queriendo que (No que me hagais el programa, jeje), me tireis una ideiiiita para hacer un programa por fuerza bruta por C.
Solo una funcion, o algo asi.
Bueno, si podeis, como si no, muchas gracias.
|
|
|
En línea
|
You, stop to close my post, you were novice too!!!!!!!!!!!!
|
|
|
soyloqbuskas
Desconectado
Mensajes: 219
¡El conocimiento es de todos!
|
¡Buenas Anastacio! Lo primero de todo...¿sabes lo que es romper una contraseña por fuerza bruta? Esto consiste en comprobar todas las combinaciones de caratceres posibles... Esto es tremendamente lento...pero podrias hacerte un ejemplo rapido...Para ello hazte un programa en el que te declares una cadena de 3 caracteres y la llenas con los 3 caracteres que quieras...Luego te creas 3 bucles anidados for(i<0;i<27;i++{ for(j<0;j<27;i++{ for(k<0;k<27;i++{ // Codigo para compara el caratcer 3 } // Codigo para comprar el caracter 2 } // Codigo para comprar el caracter 1 }
Si el resultado de las 3 comparaciones es correcto, entonces has encontrado la cadena
Esto es una pequeña aproximacion de como funciona un rompedor de contraseñas por fuerza bruta... Espero haberte servido de ayuda, un saludo.
|
|
|
En línea
|
"Si tienes 1 manzana y yo tengo otra manzana... y las intercambiamos, ambos seguiremos teniendo 1 manzana. Pero...si tu tienes 1 idea y yo tengo otra idea... y las intercambiamos, ambos tendremos 2 ideas."
George Bernard Shaw
|
|
|
Anastacio
Desconectado
Mensajes: 111
|
Como declaro una cadena de caracteres???
|
|
|
En línea
|
You, stop to close my post, you were novice too!!!!!!!!!!!!
|
|
|
soyloqbuskas
Desconectado
Mensajes: 219
¡El conocimiento es de todos!
|
char cadena[3]={'o','l','a'}; printf("%c%c%c\n",cadena[0],cadena[1],cadena[2]);
|
|
|
En línea
|
"Si tienes 1 manzana y yo tengo otra manzana... y las intercambiamos, ambos seguiremos teniendo 1 manzana. Pero...si tu tienes 1 idea y yo tengo otra idea... y las intercambiamos, ambos tendremos 2 ideas."
George Bernard Shaw
|
|
|
Anastacio
Desconectado
Mensajes: 111
|
O sea que lo mejor seria crear una cadena de caracteres de todas las letras del alfabeto, mas las vocales con tildes, los numeros, comas, comillas, puntos, punto y coma, etc, los mas comunes, y luego probarlos.
No entiendo para que usas los for ahi. Para que sirven en esa circunstancia???
|
|
|
En línea
|
You, stop to close my post, you were novice too!!!!!!!!!!!!
|
|
|
Ferno
Desconectado
Mensajes: 375
|
Gracias a los for, estarías creando todas las alternativas posibles comenzando por los 3 caracteres que se eligieron en ese ejemplo. Fuerza bruta está basado justamente en eso, comprobar todas las combinaciones posibles de todos los caracteres hasta que des con el correcto.
|
|
|
En línea
|
|
|
|
soyloqbuskas
Desconectado
Mensajes: 219
¡El conocimiento es de todos!
|
Aqui te dejo el codigo del programa. #include<stdio.h> #include<stdlib.h>
int main(){ char cadena[3]={'o','l','a'}; printf("Password: %c%c%c\n",cadena[0],cadena[1],cadena[2]); //escribicmos los 3 caracteres char resultado[3]; //array donde vamos a guardar los resultados unsigned char caracter='a'; //variable usada para las compraraciones int ok=0; //Cuando encontremos los 3 caracteres ok sera igual 3 int i=0; int j=0; int k=0; for(i=0;i<255;i++){ //bucle que compara y encuentra el 1º caracter caracter=(char)i; for(j=0;j<255;j++){ //bucle que compara y encuentra el 2º caracter caracter=(char)j; for(k=0;k<255;k++){ //bucle que compara y encuentra el 3º caracter caracter=(char)k; if(cadena[2]==caracter){ resultado[2]=caracter; ok++; if(ok==3){break;break;break;} } caracter++; } if(cadena[1]==caracter){ resultado[1]=caracter; ok++; } caracter++; } if(cadena[0]==caracter){ resultado[0]=caracter; ok++; } caracter++; } printf("Password encontrado: %c%c%c\n",resultado[0],resultado[1],resultado[2]); system("pause"); return 0; }
|
|
« Última modificación: 24 Enero 2012, 16:26 pm por soyloqbuskas »
|
En línea
|
"Si tienes 1 manzana y yo tengo otra manzana... y las intercambiamos, ambos seguiremos teniendo 1 manzana. Pero...si tu tienes 1 idea y yo tengo otra idea... y las intercambiamos, ambos tendremos 2 ideas."
George Bernard Shaw
|
|
|
Anastacio
Desconectado
Mensajes: 111
|
Gracias a todos amigos. Me gustaria hacer un pequeño analisis de este programa. Pronto me hare una version propia, con algunas caracteristicas mas avanzadas, que permitan otras cosas, pero bueno, veamos:
Me cuesta entender el tema del for. Es decir, que mientras i sea menor a 0 y a 225, i sumara uno??
Que representa i en este caso. Uno de los tres caracteres "o, l, a"??
|
|
|
En línea
|
You, stop to close my post, you were novice too!!!!!!!!!!!!
|
|
|
soyloqbuskas
Desconectado
Mensajes: 219
¡El conocimiento es de todos!
|
Un bucle te permite repertir una instruccion tantas veces como quieras. En este caso se repite desde 0 hasta 255 (256 veces, porque el cero tambien se cuenta). El motivo de que se repita 256 veces es porque hay 256 caracteres direferentes. http://atc.ugr.es/docencia/udigital/img/ap04g.gifPor tanto, si tenemos 3 caracteres tenemos 256^3 combinaciones de caracteres diferentes. Por eso necesitamos 3 bucles desde 0 hasta 255, uno para cada caracter. para declarar un bucle for debes hacer esto: int posicionInicio; //equivalente a la i
for(posicionInicio=0; posicionInicio<100; posicionInicio++){ //instrucciones que se repetiran 100 veces //si en posicionInicio hubiera puesto posicionInicio=10 //el bucle se repetira 100-10=90 veces }
|
|
« Última modificación: 24 Enero 2012, 03:48 am por soyloqbuskas »
|
En línea
|
"Si tienes 1 manzana y yo tengo otra manzana... y las intercambiamos, ambos seguiremos teniendo 1 manzana. Pero...si tu tienes 1 idea y yo tengo otra idea... y las intercambiamos, ambos tendremos 2 ideas."
George Bernard Shaw
|
|
|
zugador
Desconectado
Mensajes: 2
|
soyloqbuscas podrias colgar el programa entero para romper contraseñas por fuerza c muchas gracias con antelacion
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Tengo una duda en este codigo para hacer fuerza bruta en vb.......
Programación Visual Basic
|
ZaPa
|
4
|
6,496
|
23 Febrero 2010, 02:12 am
por Nanoc
|
|
|
Problema con Comando para hacer fuerza bruta.
« 1 2 3 4 5 »
Scripting
|
Puntoinfinito
|
44
|
25,798
|
18 Abril 2012, 23:42 pm
por Puntoinfinito
|
|
|
¿Cómo puedo hacer este ataque de fuerza bruta más eficiente?
Hacking
|
leantw1ce
|
4
|
4,203
|
10 Agosto 2016, 20:35 pm
por [u]nsigned
|
|
|
(Necesito) Scrip de python para generar diccionarios de contraseñas fuerza bruta
Hacking
|
teco77
|
4
|
4,307
|
18 Diciembre 2016, 07:23 am
por teco77
|
|
|
[batch] Quiero hacer un script para hacer fuerza bruta
Scripting
|
didis
|
6
|
5,015
|
19 Octubre 2019, 20:25 pm
por didis
|
|