Post Populaire



Le principe d'un bruteforcer est d'essayer toutes les combinaisons de caractères possibles pour trouver le bon mot de passe, à partir d'une liste connue. Il existe 2 principales méthodes concernant ces listes de caractères:
1- les wordlist: (listes de mots): Ce sont des fichiers texte contenant une liste des mots de passe fréquemment utilisés. Le bruteforcer ouvrira ce fichier et testera un à un tous les mots qu'il contient.
2- Les générateurs: dans ce cas, le bruteforcer génère lui même les mots de passe et ne va pas les chercher ailleurs. Il utilise une liste de caractères qu'il va coller, les uns à coté des autres, de façon à finir par avoir une chaine de caractères qui sera testée en tant que mot de passe.
L'exemple que je vous montrerai maintenant repose sur la deuxième méthode. Il se base sur les boucles. Une boucle pour chaque caractère du mot de passe. (Si le mot de passe a une longueur de 3 caractères, on va mettre 3 boucles et ainsi de suite)

/*on déclare un tableau contenant la liste des caractères*/

CODE: 
$chars = array( 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 
'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 
's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 
'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 
'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 
'1', '2', '3', '4', '5', '6', '7', '8', '9');

/********************************
on déclare 3 boucles en admettant 
que le mot de passe a une longueur 
de 3 caractères, puis on affiche le résultat
********************************/

CODE: 
for($i = 0; $i < count($chars); $i++)
{ for($j = 0; $j<count($chars); $j++)
{ for($k = 0; $k<count($chars); $k++)
{
echo $chars[$i]."".$chars[$j]."".$chars[$k]."<br>";
}
}
}

La première étape est de créer une variable en forme de tableau, qui contient tous les caractères dont le brute-forcer se servira pour trouver le mot de passe. Ensuite on fait appel à 3 boucles for(), qui se chargeront d'afficher les possibilités comme ceci : aaa, aab, aac, aad... etc jusqu'à la dernière possibilité qui est 999.
En prenant en compte que le nombre des caractères utilisés est de 61 et que nous avons un mot de passe long de 3 caractères, on va se retrouver avec 61^3 mots de passes possibles, soit 226981.
Ce code source n'est pas vraiment à un brute-forcer, il ne sert qu'à afficher les possibilités, mais si au lieu d'afficher, on lui aurait dit par exemple de se connecter sur un site et tester les pass, cela aurait été autre chose. Cet exemple a ainsi pour but de présenter le squelette d'un bruteforcer et la façon dont il fonctionne.

- sebdelkil 2009-2015 - Aucun droit réservé -