[..] Test de mot de passe en AutoIt

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Colin117
Niveau 5
Niveau 5
Messages : 114
Enregistré le : jeu. 18 nov. 2010 17:57
Localisation : Vers là bas !
Status : Hors ligne

[..] Test de mot de passe en AutoIt

#1

Message par Colin117 »

Bonjour,

Après pas mal de moi d'absence je reviens sur ce forum.

Je souhaite créer un testeur de mot de passe.

(Un logiciel qui créer une chaîne de caractère de taille définie, qui fais un calcule de cryptage et qui test avec un résultat) dans le cadre de simplement craquer un cryptage pour un challenge sur un site (newbiecontest) je ne met pas de lien pour ne pas faire de pub mais allez sur google franchement il est pas mal ;)


Donc je commence, Le cryptage se fais en javascript voici le code pour ceux qui comprennent un peu (perso je ne sais rien en javascript mais je l'ai compris en travaillant dessus une petite heure)
► Afficher le texteCode Javascript
Donc j'ai le code en local etc... j'ai fais de multiple test pour comprendre ce qu'il faisait étapes par étapes si vous voulez des infos j'en donnerais.

Mon premier blocage: se situe au niveau du var n=Math.max(nblog,nbpass).

C'est une déclaration de la variable n qui est égale a la longueur la plus grande entre nblog et nbpass.

Mon deuxième blocage: est au niveau de la génération des caractères. Je n'ai aucune idée de comment faire, sachant que les caractères possibles sont var tab=" azertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN0123456789_$&#@";.

Le code une fois crypter donne un chiffre (de l'orde des millions) et doit être égale a 3696619. mais ça je sais comment vérifier puis afficher le résultat plus afficher sur quel chaine il travail.

Je suis peut-être pas claire je m'en excuse, je vous remercie d'avoir lue mon problème et je vous remercie d'avance pour vos réponses quel qu'elles soient.

Cordialement Colin117
Modifié en dernier par Colin117 le dim. 12 juin 2011 14:42, modifié 3 fois.
► Afficher le texte
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: Brute Force en AutoIt

#2

Message par zeshrek »

Et c'est quoi le pb ?
A ton premier point de blocage tu nous explique qu'une variable est liée a une autre. Super. Et donc ?
Au second tu nous dis qu'il faut générer des caractere sans nous dire combien, et selon quelle logique (parceque là, moi je te dis de faire un random et basta !)

Donc commence par les bases, cad poser les spec de ton prog et ton algoritme.

Apres on poura voir si c'est faisable en autoit (probablement) ou pas.
Si vis pacem para bellum
Colin117
Niveau 5
Niveau 5
Messages : 114
Enregistré le : jeu. 18 nov. 2010 17:57
Localisation : Vers là bas !
Status : Hors ligne

Re: Brute Force en AutoIt

#3

Message par Colin117 »

Peut-être sans que tu le sache tu viens de m'apporter une grande aide merci !

Pour la génération de caractères ça va de 3 à 7 mais je pense raccourcir de 5 à 7.
la logique est par exemple a,b,c,d,e,f,g,h,i,j,k,l,...,@ puis aa,bb,cc,dd,ee,...,@@ etc.

Avec un random ça marcherai ?
► Afficher le texte
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: Brute Force en AutoIt

#4

Message par zeshrek »

A partir du moment ou il y a une logique, forcément in n'y a pas de random.


Par contre je suis surpris par ta logique justement. moi j'aurai plutot pensé faire du
a, b, c... @
aa, ab, ac...a@
ba, bb, bc...b@
...
@a, @b, @c...@@
aaa, aab, aac...aa@
...
@@a, @@b, @@c...@@@

Bon bin ca c'est faisable soit avec une série de for/next imbriqués (trop simple), soit avec une fonction récursive (plus complexe a mettre en oeuvre quand on connait pas, mais plus sexy !)
Si vis pacem para bellum
Colin117
Niveau 5
Niveau 5
Messages : 114
Enregistré le : jeu. 18 nov. 2010 17:57
Localisation : Vers là bas !
Status : Hors ligne

Re: Brute Force en AutoIt

#5

Message par Colin117 »

En effet je me suis tromper dans ma logique en fait je pensais comme toi ^^'

Je prendrai la compliquer au moins j'apprendrai des truc.

Donc j'ai avancer mon code je m'occupe de reproduire l’algorithme du crypteur mais la j'ai encore un problème:
► Afficher le texteCode
c'est pour le $index1 en fait $tab est une chaîne de caractères, mais j'ai besoin de l'utiliser comme un tableau, il faut que je récupère la place du caractère compris entre $i et $i+1 dans $st via $tab. je m'explique:

$st = Chaîne de caractères générée
$tab = Chaîne de caractères au début du code utiliser comme un tableau

Par exemple la lettre compris entre 0 et 1 dans $st est a (donc la 1er lettre), bah c'est égale au 19e cratère dans $tab, donc il faut que $index1 soit égale à 19 + 10 donc 29. Et pour @ il faut que $index1 soit égale a 85 + 10 donc 95. (ps: les espaces avant le a miniscule sont importants)

J'ai oublier, le premier caractère dans $tab = 0 donc a c'est le 20e mais a = 19. (pour ceux qui serait bloquer ici dans le future)
► Afficher le texte
Colin117
Niveau 5
Niveau 5
Messages : 114
Enregistré le : jeu. 18 nov. 2010 17:57
Localisation : Vers là bas !
Status : Hors ligne

Re: Test de mot de passe en AutoIt

#6

Message par Colin117 »

Cela convient peut-être mieux au forum ?

Sinon pour mon problème j'ai sortie ceci pour limiter la chaîne mais ça ne marche pas.

Code : Tout sélectionner


Func calcindex($sst, $si) ;==> Envois de $sst = String et $si qui est la valeur de $i
    Local $mod, $mod2
    $mod = StringTrimLeft($sst, $si) ;==> on supprime a gauche
    $chr = StringTrimRight($mod, $si+1) ;==> on supprime a droite

    MsgBox(64, "test", $sst & "," & $chr) ;==> on affiche donc le caractère voulue
Endfunc

 
Et cela ne marche pas par exemple:

-la chaîne c'est abc, on est a $i = 0, le résultat est $sst = abc, $chr = ab
-la chaîne c'est toujours abc, on est a $i = 1, le résultat est $sst = abc, $chr = [vide]

Où me suis-je planté ?
► Afficher le texte
Répondre