[Besoin d'un peu d'aide] KeygenMe

Des défis de cracking qui vous mettront à l'épreuve...

[Besoin d'un peu d'aide] KeygenMe

Messagepar Moongm » 02 Septembre 2016, 21:44

Yo,
j'ai commencé mon premier keygenMe hier et ohhh putain c'est trop bien...

Mais je crois que je suis bloqué à la toute dernière étape, si quelqu'un pourrait m'aider :x,

alors voici le code le plus important, le générateur de serial par rapport au pseudo : http://prnt.sc/cdgcv6
D'après ce que j'ai lu, on voit qu'il demande de mettre ton pseudo, if ton pseudo est vide : message d'erreur.

Ensuite, la premiere boucle qui prends chaque caractère du pseudo - 40H(64).
Donc avec mon pseudo : julien cela donne : *5,)%.

Ensuite la deuxième boucle qui fait un tas de calcul que je pense avoir compris. Que j'ai d'ailleurs codé :

Code: Tout sélectionner
for(unsigned int i = 0; i < newName.size(); i++)
   {   
      result += 106 * newName[i];
      result += 106;
      result <<= 4;
      result ^= 20;
      result >>= 4;
      std::cout << "[" << i << "] Result : " << result << std::endl;
   }


Voilà le problème, c'est le dernier calcul :
Code: Tout sélectionner
result >>=4;

Il ne fais pas le résultat que je veux... Pour tous le reste les résultats que j'ai eu par le debugger marche, sauf pour le dernier..
Donc je suis bloqué mais je pense que mon code c++ corresponds bien à l'algorithme utiliser par le programme.

Merci de votre aide. J'ai essayé de faire en sorte que ce soit le plus simple à lire possible, si vous voulez plus d'indication dites le moi, et voici le lien du keygen :
https://forum.tuts4you.com/topic/23131- ... eygenme-1/
Moongm
Visiteur
Visiteur
 
Messages: 23
Inscription: 31 Mai 2016, 22:18

Re: [Besoin d'un peu d'aide] KeygenMe

Messagepar baboon » 03 Septembre 2016, 15:02

Tu t'es trompé :)
Regarde la signification de ROR / ROL et des opérateurs >> et << :)
Ce n'est pas la même chose.
Tu n'es pas loin par contre
Newbie mais ayant soif d'apprendre et étant motivé
Avatar de l’utilisateur
baboon
Modérateur
Modérateur
 
Messages: 3269
Inscription: 08 Juillet 2005, 17:49

Re: [Besoin d'un peu d'aide] KeygenMe

Messagepar Moongm » 03 Septembre 2016, 15:12

Merci beaucoup de ta réponse, je vais essayer de voir pour les instructions ROL/ROR :)
Du moins quand mon pc sera dispo ;) je donne des nouvelles bientot pour le keygen ;)
Moongm
Visiteur
Visiteur
 
Messages: 23
Inscription: 31 Mai 2016, 22:18

Re: [Besoin d'un peu d'aide] KeygenMe

Messagepar Moongm » 10 Septembre 2016, 14:50

Salut,
J'ai enfin retrouvé mon pc, et je me suis un peu repencher dessus, mais je trouve toujours pas... Les seuls choses que je trouve pour ROR/ROL est : <<, >>
Juste le ROL c'est bien : << ? Car le resultat est bon
Moongm
Visiteur
Visiteur
 
Messages: 23
Inscription: 31 Mai 2016, 22:18

Re: [Besoin d'un peu d'aide] KeygenMe

Messagepar 0xdb » 11 Septembre 2016, 10:33

Salut,
Moongm a écrit:
Voilà le problème, c'est le dernier calcul :

Code: Tout sélectionner
result >>=4;


<< et >> sont des opérateurs C/C++ pour le décalage de bits sur les entiers. J'ai dit décalage, pas rotation.

ROL/ROR sont des instructions asm pour un décalage circulaire et n'ont pas d'équivalent C/C++.
Tu dois les implémenter toi-même. Comme aide regarde ici
Et comme toujours goooogle est ton meilleur ami :wink:
Avatar de l’utilisateur
0xdb
Visiteur
Visiteur
 
Messages: 16
Inscription: 19 Novembre 2015, 16:52

Re: [Besoin d'un peu d'aide] KeygenMe

Messagepar Moongm » 11 Septembre 2016, 20:34

Ha d'accord je vois ! Merci pour l'info :) je vais tenter de le coder ;)
Moongm
Visiteur
Visiteur
 
Messages: 23
Inscription: 31 Mai 2016, 22:18

Re: [Besoin d'un peu d'aide] KeygenMe

Messagepar dionosis » 13 Septembre 2016, 19:52

Salut,

Moongm a écrit:Ha d'accord je vois ! Merci pour l'info :) je vais tenter de le coder ;)

Tu auras beau tourner le problème dans tous les sens, tu en reviendras toujours à la seule implémentation évidente déjà présente dans le lien que t'a filé 0xdb. :)

++
Avatar de l’utilisateur
dionosis
Possession de la science infuse...
Possession de la science infuse...
 
Messages: 495
Inscription: 09 Octobre 2009, 21:43

Re: [Besoin d'un peu d'aide] KeygenMe

Messagepar eabcdx » 17 Septembre 2016, 17:02

Salut,

corrigez moi si je me trompe, mais en C/C++, tu as toujours les fonctions _xrotl, _xrotr, <x> spécifiant la taille des données, qui te permettent d'effectuer l'équivalent d'un ROL/ROR selon les besoins.
eabcdx
Crackeur de bas niveau
Crackeur de bas niveau
 
Messages: 131
Inscription: 03 Novembre 2012, 14:44

Re: [Besoin d'un peu d'aide] KeygenMe

Messagepar 0xdb » 17 Septembre 2016, 22:26

Salut,

eabcdx a écrit:..tu as toujours les fonctions _xrotl, _xrotr, <x> spécifiant la taille des données


tu pensais à _rotl8, _rotr8, _rotl16, _rotr16 ?

eabcdx a écrit:corrigez moi si je me trompe


tu te trompes pas mais ce sont des fonctions built in ou intrinsics du compilo microsoft et limité à des mots de 8 ou 16 bits
Plutôt déconseillé pour un code portable mais toujours bon à connaître si tu codes uniquement avec VS. :wink:
Avatar de l’utilisateur
0xdb
Visiteur
Visiteur
 
Messages: 16
Inscription: 19 Novembre 2015, 16:52

Re: [Besoin d'un peu d'aide] KeygenMe

Messagepar eabcdx » 18 Septembre 2016, 14:34

Oui c'est bien ça, j'ai inversé l'ordre des lettres.

Effectivement, je code très très souvent avec VS :)
En revanche, il existe bien _lrotl _lrotr qui se basent sur des unsigned long, qui d'après la MSDN gèrent les mots de 32 bits.
eabcdx
Crackeur de bas niveau
Crackeur de bas niveau
 
Messages: 131
Inscription: 03 Novembre 2012, 14:44

Re: [Besoin d'un peu d'aide] KeygenMe

Messagepar dionosis » 19 Septembre 2016, 01:35

Salut,

Dans ce cas là autant asm inliner. :)

++
Avatar de l’utilisateur
dionosis
Possession de la science infuse...
Possession de la science infuse...
 
Messages: 495
Inscription: 09 Octobre 2009, 21:43

Re: [Besoin d'un peu d'aide] KeygenMe

Messagepar baboon » 19 Septembre 2016, 07:58

Tu ne peux plus faire d'ASM inline en 64 bits :)
Tu es obligé d'utiliser les intrinsics ou d'assembler tes .asm à part.
Newbie mais ayant soif d'apprendre et étant motivé
Avatar de l’utilisateur
baboon
Modérateur
Modérateur
 
Messages: 3269
Inscription: 08 Juillet 2005, 17:49

Re: [Besoin d'un peu d'aide] KeygenMe

Messagepar dionosis » 19 Septembre 2016, 11:09

Salut baboon,

Un truc génial à savoir (et je sais qu'eabcdx s'en sert également vu qu'on en avait discuté), c'est qu'avec le parallel studio d'intel tu récupères cette possibilité (toujours sous vs donc) ! :D

Ca implique néanmoins de linker avec leur runtime mais elle est légère et ça permet de réécrire des pans d'asm inliné très très pratiques dans le rce.

++
Avatar de l’utilisateur
dionosis
Possession de la science infuse...
Possession de la science infuse...
 
Messages: 495
Inscription: 09 Octobre 2009, 21:43

Re: [Besoin d'un peu d'aide] KeygenMe

Messagepar baboon » 20 Septembre 2016, 14:49

J'ai franchement rarement besoin d'asm inline voir jamais, le C reste quand même vachement souple :)
Mais merci du tuyau !
Newbie mais ayant soif d'apprendre et étant motivé
Avatar de l’utilisateur
baboon
Modérateur
Modérateur
 
Messages: 3269
Inscription: 08 Juillet 2005, 17:49


Retourner vers Défis & Crackmes

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité