Brute force (petit mais lent) =)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 13 458 fois - Téléchargée 29 fois

Cette source est considérée comme dangereuse, elle a néamoins été gardée dans un but pédagogique :
Cette source est considérée comme dangereuse, elle a néamoins été gardée dans un but pédagogique.

Contenu du snippet

Voilà, ma première source ici, sans prétention =) C'est en fait un petit brute force qui vous permettra "peut-être" de retrouver des sommes md5 de chaîne de caractères courtes (autour de 3 caractères) =)
Je ne pense pas que ce soit la meilleure façon de faire, mais ça fonctionne.

Source / Exemple :


<?

set_time_limit("0");

function brute_force($number_char,$test_char,$char)
{
   $i = 0;
   $n = $number_char - 1;
   while ($i <= 256)
   {
      $chars = chr($i);
      $last_char = $char.$chars;
      if ($number_char > 1 && $i <= 256)
      {
         $last_char = brute_force($n,$test_char,$last_char);
      }
      if ($test_char == md5($last_char))
      {
         break;
      }
      $i++;
   }
   return $last_char;
}
$time = time();
$test =  brute_force(3,"d9d7dbddc29177b121a6aa1bb09d15fd","");
$time2 = time() - $time;
echo "\ntemps : ".$time2."\n";
echo "La somme md5 \"d9d7dbddc29177b121a6aa1bb09d15fd\" correspond à \"".$test."\"";
?>

Conclusion :


function brute_force(nombre de caractère du mdp non crypté,somme md5,chaine de caractère de départ)
en dehors de la fonction, le code complémentaire et là pour montrer son utilisation.
Un screen est disponible à cette adresse : http://scullder.free.fr/screen/brute_force_fini.PNG

A voir également

Ajouter un commentaire Commentaires
cs_scullder Messages postés 36 Date d'inscription vendredi 28 mars 2003 Statut Membre Dernière intervention 12 novembre 2004
12 mai 2011 à 01:23
Ca fait 30 lignes donc si il y a une erreur, trouvez là et essayer de comprendre.
A part le short open tag à remplacer par <?php, ça fonctionne encore presque 7 ans après :)
Je viens d'exécuter le script en ligne de commande :

$ php bruteforce.php
temps : 6
La somme md5 "d9d7dbddc29177b121a6aa1bb09d15fd" correspond à "bab"

Impossible de passer à 20 caractères, à vue de nez, ça doit vraiment coincer au dessus de 6 caractères. On peut optimiser ça en réduisant le nombre de caractères possibles (ici je fais toute la table ascii).
mattj01 Messages postés 10 Date d'inscription lundi 15 mars 2010 Statut Membre Dernière intervention 9 mai 2011
9 mai 2011 à 23:05
de toute façon meme si c'est pas fiable on perd rien a essayer...
dobobaie Messages postés 6 Date d'inscription vendredi 7 août 2009 Statut Membre Dernière intervention 8 juillet 2011
26 avril 2010 à 00:54
Déjà il y a une erreur dans ton scripte et comment on ajoute jusqu'à 20 caractère sans que sa flingue tout ?
cs_adeliz Messages postés 55 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 24 novembre 2009
20 sept. 2006 à 09:55
Désolé pour le double post, mais voila ce que j'ai trouvé :

http://antoine.media-box.net/index.php?2006/06/15/23-le-hash-sha-en-php

Je vais continuer mes recherches :D
cs_adeliz Messages postés 55 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 24 novembre 2009
20 sept. 2006 à 09:50
Huuummmm...

Le SHA lui même possede des colisions, même si elles seraient plus "rares" que le MD5...
Je pense que le seul moyen d'éviter des colisions (et encore, il doit en rester), c'est de limiter la longueur de la phrase à hasher (vu que nous la cryptons pas :p)

Par contre, je ne trouve pas de fonctions PHP qui permet de crypter en SHA1, SHA224, SHA256... SHA512...

Vous savez ou je pourrais trouver une script qui permet ça ?

Cordialement, Adeliz
Afficher les 17 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.