Challenge
elmine
Messages postés
270
Statut
Membre
-
NTVCM Messages postés 166 Statut Membre -
NTVCM Messages postés 166 Statut Membre -
Bonjour tt le monde,
Voila je fais un challenge en ce moment et je voudrais savoir comment faire qd on a un petit progr en VB (pg5.exe) si il est possible de trouver le code qu'il propose.
Je m'explique donc qd on ouvre le progr il demande un pass (champ à remplir + bouton "ok"). Qd on rentre n'importe koi une nouvelle fenêtre apparait et dit "incorrect pass". Tout ceci est assez simple. Maintenant ce que je ve savoir c'est qd on a pas les sources du progr est ce qu'il y a une possiblité de trouver le pass ou d'arriver à la fenêtre qu'il protège sans le connaitre.
Merci de votre aide.
Elmine - CF2
Voila je fais un challenge en ce moment et je voudrais savoir comment faire qd on a un petit progr en VB (pg5.exe) si il est possible de trouver le code qu'il propose.
Je m'explique donc qd on ouvre le progr il demande un pass (champ à remplir + bouton "ok"). Qd on rentre n'importe koi une nouvelle fenêtre apparait et dit "incorrect pass". Tout ceci est assez simple. Maintenant ce que je ve savoir c'est qd on a pas les sources du progr est ce qu'il y a une possiblité de trouver le pass ou d'arriver à la fenêtre qu'il protège sans le connaitre.
Merci de votre aide.
Elmine - CF2
A voir également:
- Challenge
- Zizi challenge - Guide
- Ski challenge 2014 - Télécharger - Simulation
- Blackout challenge - Guide
- Zuma challenge - Télécharger - Jeux vidéo
- Virtua tennis challenge - Télécharger - Sport
6 réponses
salut,
ça revient à cracker le programme, en fait ;)
Le but est de contourner le mot de passe.
Il faut désassembler le programme avec un désassembleur (je n'ai pas en tête le nom de celui que j'utilisait avant), et il faut rechercher l'endroit où on teste le mot de passe.
En gros, c'est faire une recherche de la chaîne "incorrect pass" dans les "String Data References". Ca t'envoie directe à la routine qui gère le teste du mot de passe. Tu regarde l'adresse correspondante, par ex. 0x8500, tu regardes dans le code un peu au-dessus des jump vers cette adresse. Tu changes ces jump, qui sont normalement des jump conditionnels par le jump inverse.
Je m'explique:
jeq: jump if equal
jne:jump if non equal
Si tu as un "jne 0x8500", tu balances "je 0x8500"
Après y faut le changer dans un éditeur hexa (ultraedit), donc connaître le code hexa de "je" et "jne". Là faut un peu fouiner...
Tu enregistre ton exe.
On teste: démarres le programme, mets n'importe quoi pour le passe, et tu es accepté, yesssssssssssssssss!!
Et voilà.
Bon je rigole là, cette technique elle est carrément vieille car les protections sont plus évoluées maintenant (genre checksum).
Donc à moins que les programmeurs soit des crétins, ca marchera pas.
a+
mat
ça revient à cracker le programme, en fait ;)
Le but est de contourner le mot de passe.
Il faut désassembler le programme avec un désassembleur (je n'ai pas en tête le nom de celui que j'utilisait avant), et il faut rechercher l'endroit où on teste le mot de passe.
En gros, c'est faire une recherche de la chaîne "incorrect pass" dans les "String Data References". Ca t'envoie directe à la routine qui gère le teste du mot de passe. Tu regarde l'adresse correspondante, par ex. 0x8500, tu regardes dans le code un peu au-dessus des jump vers cette adresse. Tu changes ces jump, qui sont normalement des jump conditionnels par le jump inverse.
Je m'explique:
jeq: jump if equal
jne:jump if non equal
Si tu as un "jne 0x8500", tu balances "je 0x8500"
Après y faut le changer dans un éditeur hexa (ultraedit), donc connaître le code hexa de "je" et "jne". Là faut un peu fouiner...
Tu enregistre ton exe.
On teste: démarres le programme, mets n'importe quoi pour le passe, et tu es accepté, yesssssssssssssssss!!
Et voilà.
Bon je rigole là, cette technique elle est carrément vieille car les protections sont plus évoluées maintenant (genre checksum).
Donc à moins que les programmeurs soit des crétins, ca marchera pas.
a+
mat
J'ai un souci je ne pe pas utiliser les "String Data References" dans windasm. Et je ne sais pas pourquoi ???
Quelqu'un aurait une solution?
Elmine - CF2
Quelqu'un aurait une solution?
Elmine - CF2
salut elmine,
ça m'est arrivé aussi, c'est sans doute la version de ton désassembleur. Il faut une version avec 89 dedans je crois.
a+
mat
ça m'est arrivé aussi, c'est sans doute la version de ton désassembleur. Il faut une version avec 89 dedans je crois.
a+
mat
http://64.176.216.60/networkpunk/challenge
Tiens c'est l'adresse c'est le challenge 5
Si tu veux pas t'inscrire je pe te l'envoyer mais vu que c'est un .exe c'est pas très cool à envoyer je ve pas te faire paranoier :))
Elmine - CF2
Tiens c'est l'adresse c'est le challenge 5
Si tu veux pas t'inscrire je pe te l'envoyer mais vu que c'est un .exe c'est pas très cool à envoyer je ve pas te faire paranoier :))
Elmine - CF2
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
En VB, on ne peut pas trouver les string Data References, il faut utiliser VRref pour les sortir
http://linux20368.dn.net/protools/files/decompilers/ex-vbr.zip
Il fonctionne avec W32Dasm, je l'utilise assez souvent, mais le mieux avec le VB, c'est SoftIce (plus compliqué, mais tellement plus puissant ;)
@+
NTVCM
http://linux20368.dn.net/protools/files/decompilers/ex-vbr.zip
Il fonctionne avec W32Dasm, je l'utilise assez souvent, mais le mieux avec le VB, c'est SoftIce (plus compliqué, mais tellement plus puissant ;)
@+
NTVCM
Mais les programmeurs sont pas couillons le programme a été fait pour etre cracker, il fait parti d'un challenge. Mais qd je désassemble ce progr en VB et bien ouahhh, je comprend plus rien mais je v essayer ce que tu viens de mettre car c'est bien expliqué encore merci.
Elmine - CF2