logo Homepage
+  NewbieContest
|-+  Divers» Cracking» mon premier crack me perso
Username:
Password:
Pages: [1]
  Imprimer  
Auteur Fil de discussion: mon premier crack me perso  (Lu 8047 fois)
shiroko
Profil challenge

Classement : 12283/55004

Membre Complet
***
Hors ligne Hors ligne
Messages: 115


Voir le profil
« le: 15 Janvier 2007 à 21:29:48 »

Yop yop,

Alors voila, étant passioné par le masochisme, j'ai vaillament décidé de me lancer dans le reverse engineering, donc je lis des tutos (j'ai déjà des bases d'ASM), hop je comprend niquel çà marche ! Soit dit au passage, çà marche tellement que j'ai pas réussi les crackme de NC, fin bref passons ^^

Donc pour m'exercer un peu, je me suis fais un petit code en C tout moche qui pu des fesses afin de voir comment un code simpliste comme le mien peut se détourner (bon je sais qu'il faut fumer la condition en remplaçant le JE par un SUBLIMEEEEEEUX JNE mais c'est pour apprendre alors hein ! :p)

Donc voici le dit code :

Code:
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
    long password;
    long valeur;
   
  password = 4435364;
   
  printf ("ENTRE LE PASSWORD : ");
 
  scanf("%ld", &valeur);
 
  printf ("\n\n");
 
  if (valeur == password)
{
            printf ("PASSWORD CORRECT !\n\n");
}
else
{
            printf ("PASSWORD FAUX ...\n\n");
}
 
  system("PAUSE");
  return 0;
}
"Oua trop un l33t ce mec" vous dites vous, en effet (hummmm hum !!!!)

Donc hop je compile, j'ouvre avec win32dasm, je cherche les strings data pour me repérer dans le code, mon but étant vous vous en doutez de trouver le string "PASSWORD CORRECT !" Pourtant je suis un spécialiste des findage des strings moi Hein Ivan

Donc hop je lance ma recherche et ho magique !!! Je me retrouve avec :

Code:
"U‰å]éGùÿÿÿÿÿÿ0@"
"U‰åƒì‰]ø‹U1Û‰uü‹1ö‹"
"ÿ%èP@"
"ÿ%èP@"
Oua strop c00l

Mais là je ne comprend pas pourquoi il donne çà

Si vous avez une info, je suis tout ouie

Ps : Celui qui me dis que mon code est moche, je m'occupe de lui mouhahahha :p
Journalisée
alph1

Profil challenge

Classement : 57/55004

Membre Complet
***
Hors ligne Hors ligne
Messages: 178


Voir le profil
« #1 le: 15 Janvier 2007 à 21:49:05 »

Utilise plutôt un password de type char à la place du type long. Je pense que tu pourras le visualiser sous w32dasm dans les string data references.
Journalisée

Physics is like sex. Sure, it may give some practical results, but that's not why we do it. (Richard P. Feynman)
shiroko
Profil challenge

Classement : 12283/55004

Membre Complet
***
Hors ligne Hors ligne
Messages: 115


Voir le profil
« #2 le: 15 Janvier 2007 à 21:54:07 »

Yeah je suis d'acord avec toi, mais là, le principe, c'est d'enquiller un password avec long et pas char

Merci pour la réponse
Journalisée
capitaine

Profil challenge

Classement : 8346/55004

Membre Junior
**
Hors ligne Hors ligne
Messages: 80


Voir le profil WWW
« #3 le: 15 Janvier 2007 à 22:07:26 »

j'avais remarqué ca aussi quand j'avais fait un crackme ya quelque temps. Sauf que le mien était légèrement plus "sophistiqué" . En fait le sérial était calculé en fonction du login que tu rentrais...bref comme les vrai prog mais avec un algo très simple. j'étais content de moi pour une fois qu'un prog aboutissait .
Donc je vais réfléchir à ce binz aussi car j'en ai pas la moindre idée
Journalisée
alph1

Profil challenge

Classement : 57/55004

Membre Complet
***
Hors ligne Hors ligne
Messages: 178


Voir le profil
« #4 le: 15 Janvier 2007 à 22:45:48 »

En ce qui concerne les strings "PASSWORD CORRECT !" et "PASSWORD FAUX ...", elles sont certainement dans le .rdata segment (puisqu'elles sont constantes). Apparemment w32dasm ne cherche que les strings présentes dans le .data segment. Utilise plutôt ollydbg afin de pouvoir les visualiser.
Journalisée

Physics is like sex. Sure, it may give some practical results, but that's not why we do it. (Richard P. Feynman)
capitaine

Profil challenge

Classement : 8346/55004

Membre Junior
**
Hors ligne Hors ligne
Messages: 80


Voir le profil WWW
« #5 le: 15 Janvier 2007 à 22:50:05 »

non c'est pareil je crois. Vaut mieux intervenir au niveau du prog non?
Journalisée
shiroko
Profil challenge

Classement : 12283/55004

Membre Complet
***
Hors ligne Hors ligne
Messages: 115


Voir le profil
« #6 le: 15 Janvier 2007 à 22:54:03 »

**No slang** çà fait plez, il n'y a pas que moi qui plante dessus

Merci pour les réponses, je vais voir avec Olly

EDIT : J'ai eu une réponse de Ivan et une de X55 :p Une pour Win et une pour Nux, j'en ai de la chance :p

Allé je fais partager :p

Sur Windows, avec Olly, Bton droit -> Search For -> All referenced text strings

Et avec nux :

Code:
[22:04:33 ghost]$ strings shiroko
/lib/ld-linux.so.2
__gmon_start__
libc.so.6
printf
puts
system
scanf
_IO_stdin_used
__libc_start_main
GLIBC_2.0
PTRh
[^_]
ENTRE LE PASSWORD :
PASSWORD CORRECT !
PASSWORD FAUX ...
PAUSE
Merci à eux :p
Journalisée
capitaine

Profil challenge

Classement : 8346/55004

Membre Junior
**
Hors ligne Hors ligne
Messages: 80


Voir le profil WWW
« #7 le: 15 Janvier 2007 à 23:13:41 »

ah ok j'avais pas vraiment compris ce que tu voulais, autant pour moi.
je croyais que tu souhaitais voir en clair le pass, pendant le debug.

je me demande bien pourquoi Ivan et X55 n'ont pas postés ici d'**orthographe !**.... t'as bien fait de donner les noms
Journalisée
shiroko
Profil challenge

Classement : 12283/55004

Membre Complet
***
Hors ligne Hors ligne
Messages: 115


Voir le profil
« #8 le: 16 Janvier 2007 à 00:02:12 »

Car j'avais posté sur un autre forum
Journalisée
capitaine

Profil challenge

Classement : 8346/55004

Membre Junior
**
Hors ligne Hors ligne
Messages: 80


Voir le profil WWW
« #9 le: 16 Janvier 2007 à 00:29:32 »

pff et toi tu balances les noms genre on les connait . ok alors ca roule
Journalisée
shiroko
Profil challenge

Classement : 12283/55004

Membre Complet
***
Hors ligne Hors ligne
Messages: 115


Voir le profil
« #10 le: 16 Janvier 2007 à 00:39:05 »

Ba ivan, c'est pas n'importe qui, c'est la princesse des gay quand même
Journalisée
Pages: [1]
  Imprimer  
 
Aller à: