begin process at 2012 05 27 19:23:09
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Sécurité & Cryptage

 > MOTEUR DE BUTE FORCE(GÉNÉRATEUR DE PASSWORD)

MOTEUR DE BUTE FORCE(GÉNÉRATEUR DE PASSWORD)


 Information sur la source

Note :
7,33 / 10 - par 3 personnes
7,33 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Sécurité & Cryptage Niveau :Initié Date de création :02/02/2004 Vu :6 552

Auteur : FearBlue

Ecrire un message privé
Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note

 Description

Voici une source bien simple expliquant comment générer des Password
afin de pouvoir faire des attaques par dictionnaire(en dehors du fait que cest attaques sont tres longues)
Je vous laisse voir la source

Source

  • #include <stdio.h>
  • #include <stdlib.h>
  • #include <time.h>
  • #define MINCHAR 33
  • #define MAXCHAR 126
  • char *bruteforce(int passlen, int *ntries);
  • int main(void) {
  • int i, wdlen, counter;
  • char *str;
  • clock_t start, end;
  • double elapsed;
  • do {
  • printf("Taille du mot(nombre de lettres)... ");
  • scanf("%d", &wdlen);
  • } while(wdlen<2);
  • start = clock();
  • bruteforce(wdlen, &counter);
  • end = clock();
  • elapsed = ((double) (end - start)) / CLOCKS_PER_SEC;
  • printf("\nNombres de mots... %d \n",counter);
  • printf("\nTemps ecoule... %f secondess\n",elapsed);
  • return counter;
  • }
  • char *bruteforce(int passlen, int *ntries) {
  • int i;
  • char *str;
  • *ntries=0;
  • passlen++;
  • str = (char*)malloc( passlen*sizeof(char) );
  • for(i=0; i<passlen; i++) {
  • str[i]=MINCHAR;
  • }
  • str[passlen]='\0';
  • while(str[0]<MINCHAR+1) {
  • for(i=MINCHAR; i<=MAXCHAR; i++) {
  • str[passlen-1]=i;
  • (*ntries)++;
  • puts(&str[1]);
  • }
  • if(str[passlen-1]>=MAXCHAR) {
  • str[passlen-1]=MINCHAR;
  • str[passlen-1-1]++;
  • }
  • for(i=passlen-1-1; i>=0; i--) {
  • if(str[i]>MAXCHAR) {
  • str[i]=MINCHAR;
  • str[i-1]++;
  • }
  • }
  • }
  • return NULL;
  • }
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define MINCHAR 33
#define MAXCHAR 126

char *bruteforce(int passlen, int *ntries);

int main(void) {

	int i, wdlen, counter;
	char *str;
	clock_t start, end;
	double elapsed;

	do {
		printf("Taille du mot(nombre de lettres)... ");
		scanf("%d", &wdlen);
	} while(wdlen<2);

	start = clock();

	bruteforce(wdlen, &counter);

	end = clock();

	elapsed = ((double) (end - start)) / CLOCKS_PER_SEC;
	printf("\nNombres de mots... %d \n",counter);
	printf("\nTemps ecoule... %f secondess\n",elapsed);

	return counter;

}

char *bruteforce(int passlen, int *ntries) {

	int i;
	char *str;

	*ntries=0;

	passlen++;

	str = (char*)malloc( passlen*sizeof(char) );

	for(i=0; i<passlen; i++) {
		str[i]=MINCHAR;
	}
	str[passlen]='\0';

	while(str[0]<MINCHAR+1) {
		for(i=MINCHAR; i<=MAXCHAR; i++) {
			str[passlen-1]=i;
			(*ntries)++;
			puts(&str[1]);
		}

		if(str[passlen-1]>=MAXCHAR) {
			str[passlen-1]=MINCHAR;
			str[passlen-1-1]++;
		}

		for(i=passlen-1-1; i>=0; i--) {
			if(str[i]>MAXCHAR) {
				str[i]=MINCHAR;
				str[i-1]++;
			}
		}
	}

	return NULL;

}


 Conclusion

Voila c'est tout
Bon ProG'S


 Sources du même auteur

Source avec Zip RADIO RECORDER (CAPTURE DE STREAMS MUSICAUX VIA INTERNET )
COULEURS EN MODE CONSOLE(CHANGER DE COULEURS)

 Sources de la même categorie

PROJET DE CRYPTOGRAPHIE: RSA À JEU REDUIT D'INSTRUCTION par samatarahmed
Source avec Zip Source avec une capture CRYPTOSYSTÈME ELGAMAL LIBRAIRIE GMP par louelh95
Source avec Zip Source .NET (Dotnet) NOUVEL ALGORITHME D'ENCRYPTION-DÉSENCRYPTION DYNAMIQUE (INFA... par vletktol
Source avec Zip A2DCRYPT - CRYPTAGE 2048 BITS par darkor
Source avec Zip Source avec une capture CRYPTEUR-DÉCRYPTEUR-IP par antho974

Commentaires et avis

Commentaire de LordBob le 02/02/2004 21:27:33

j'avais y a certains temps essayer de réaliser exactement le meme code, mais j'avais arrete... mais ton code est bien je trouve... il n'a pas grande grand utilité... mais au moins on peut apprendre des choses sur l'allocation dynamiques :)

Commentaire de Kirua le 03/02/2004 07:44:53

si tu passais au C++ tu pourrais utiliser new et delete pr les allocs dynamiques, et c'est vachement élégant comme méthode ^^ je dis ça je dis rien, faut surtout pas mal le prendre.

sinon un truc, tu utilises un bloc do/while, pourquoi ne pas mettre juste while? je sais que le do while assure que le bloc soit exécuté au moins une fois, mais ça tu peux t'arranger dans la condition non ? enfin, c un truc uqi m'a tjs étonné ici, y a pleins de gens qui utilisent ça.

Commentaire de gagah1 le 03/02/2004 09:23:44

C'est bien ton programme. Par contre j'ai 3 remarques:
D'abord dans la fn bruteforce, tu as alloué des memoires avec malloc, donc tu devrais les liberer en fin de programme.
La seconde , tu mets char* la valeur renvoyée par bruteforce, alors qu'elle retourne toujours NULL . Si je comprends bien ce que tu as l'intention de faire, c'est à partir de ce char* que tu devrais liberer les mémoires allouées par malloc.
Dernièrement, pourquoi tu mets cette source en niveau 2 ????
Tchao!! Bonne prog!!!!!!!!!!!!!!!!!!!!

Commentaire de chocobo le 05/02/2004 17:25:42

Mouais bô c'est pas mal quoi !!!!!
C'est un peu lent comme système dès qu'on veut des mots
un tout petit peu long mais bon ...

Commentaire de ironzorg le 08/06/2008 10:53:56

Pour un password classique de 20 chars, on arrive a 36 exp(20) = 1.33674945 × 10 exp(31) possibilités !
J'ai écrit il y a quelques temps un générateur de dictionnaire ( qui utilise les caractères du bruteforce: aa, ab, bb, ba etc... ), et pour l'écrire il m'a falu plus de deux jours ( meme pas fini en plus :D ) !

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales