h*i*t*m*a*n*P*r*o

Vous avez un problème pour cracker ou vous souhaitez parler de reversing en général...

Re: h*i*t*m*a*n*P*r*o

Messagepar Bango » 19 Octobre 2016, 08:24

rvq35 a écrit:tu utilises la méthode dite des apis donc tu t'occupes pas de la pile, n'est ce pas ?

Plus ou moins, on s'occupe toujours de la pile :)
rvq35 a écrit:pour rechercher ton api getwindowtextw , je fais Ctrl+N sauf erreur, avant toute chose et si je recherche cette api je n'ai pas de module user32 ! Je n'ai que 4 modules : Hitman pro, kernell base, kernell32 et ntdll.

Oui, mais là tu vois bien que tu n'as pas quelque chose de "conventionel" avec un CALL.User32.GetWindowTextW, mais l'api a subi une sorte d'"encapsulation". Mais rien ne t'empêche d'aller poser un BP directement sur l'import de l'API, en faisant CTRL+G -> GetWindowTextW
rvq35 a écrit: je vois déjà la messagebox affichée

Alors sur le screen, c'est pas une MessageBox... c'est la fenêtre du programme, dans l'onglet licence. C'est pour ça que j'ai choisi cette api, qui va récupérer le texte saisi comme serial. Maintenant tu peux aussi chercher la boléenne qui va checker si tu es reg ou non avant l'affichage de la fenêtre. En cherchant soit le fichier de licence, les infos de reg dans le reg, etc, etc...
Y a pas UNE méthode, faut faire preuve de créativité et attaquer par l'angle que tu veux. Si c'est infructueux, passer à une autre façon d'aborder le problème. C'est de l'investigation le reverse :P ;)
rvq35 a écrit:J'ai la conviction que la protection n'est pas très compliquée si je ne me trompe.

Je n'ai pas assez regardé pour m'avancer sur ce point mais je doute que ce soit si simple :roll:
\ô/
Avatar de l’utilisateur
Bango
Modérateur
Modérateur
 
Messages: 1537
Inscription: 23 Juillet 2007, 15:33
Localisation: Gotham city

Re: h*i*t*m*a*n*P*r*o

Messagepar rvq35 » 19 Octobre 2016, 20:01

oui, c'est exact j'avais confondu la fenêtre de contrôle de serial avec la message box qui apparait pour dire mauvais message.
Y a quand même une chose qui m'interpelle, comment tu accèdes au module user32 et donc à l'api contenue dans cette bibliothèque car moi, j'ai beau faire le ctrl+G mais l'api est inexistante quand j'inscris getwindows... dans le cadre en question ! Si l'api a une sorte d'encapsulation elle réside bien quelque part, non ?
Je pensais par ce moyen pouvoir attaquer l'analyse du serial comme ici :http://www.forumcrack.com/web/tutos-ga/Cours%2010/Cours%2010.htm
C'est jouable, non ?
rvq35
Mega Crackeur !
Mega Crackeur !
 
Messages: 255
Inscription: 07 Mars 2013, 07:21

Re: h*i*t*m*a*n*P*r*o

Messagepar yafnag » 19 Octobre 2016, 23:39

Si tu as la MessageBox tu es capable de déterminer plusieurs comportement possible que le PE peut avoir (licence enregistré / mauvais numéro de licence / autre problèmes (Licence expirée / Trop d'activation sur cette clé / problème lors de l'activation) ). En étudiant un peu tout ce comportement est basé sur une seul valeur, une fois que tu as déterminé quelle est cette valeur, il faut que tu traces pour trouver ou elle est définie et comment !

rvq35 a écrit:Y a quand même une chose qui m'interpelle, comment tu accèdes au module user32 et donc à l'api contenue dans cette bibliothèque car moi, j'ai beau faire le ctrl+G mais l'api est inexistante quand j'inscris getwindows... dans le cadre en question


Ctrl + G -> GetWindowTextW -> Ok et tu arrives sur quelque chose comme ça dans le module USER32 :
Code: Tout sélectionner
7E3AA5CD >  6A 0C                         PUSH 0C
7E3AA5CF    68 28A63A7E                   PUSH USER32.7E3AA628
7E3AA5D4    E8 E7DFFEFF                   CALL USER32.7E3985C0
7E3AA5D9    8B7D 0C                       MOV EDI,DWORD PTR SS:[EBP+C]
7E3AA5DC    33DB                          XOR EBX,EBX
7E3AA5DE    3BFB                          CMP EDI,EBX
7E3AA5E0    74 59                         JE SHORT USER32.7E3AA63B
7E3AA5E2    395D 10                       CMP DWORD PTR SS:[EBP+10],EBX
7E3AA5E5    74 54                         JE SHORT USER32.7E3AA63B
7E3AA5E7    895D FC                       MOV DWORD PTR SS:[EBP-4],EBX
7E3AA5EA    66:891F                       MOV WORD PTR DS:[EDI],BX
7E3AA5ED    8B4D 08                       MOV ECX,DWORD PTR SS:[EBP+8]
7E3AA5F0    E8 EBDEFEFF                   CALL USER32.7E3984E0
7E3AA5F5    8BF0                          MOV ESI,EAX
7E3AA5F7    8975 E4                       MOV DWORD PTR SS:[EBP-1C],ESI
7E3AA5FA    3BF3                          CMP ESI,EBX
7E3AA5FC    0F84 8CCE0100                 JE USER32.7E3C748E
7E3AA602    56                            PUSH ESI
7E3AA603    E8 0FE8FFFF                   CALL USER32.7E3A8E17
7E3AA608    53                            PUSH EBX
7E3AA609    57                            PUSH EDI
7E3AA60A    FF75 10                       PUSH DWORD PTR SS:[EBP+10]
7E3AA60D    6A 0D                         PUSH 0D
7E3AA60F    56                            PUSH ESI
7E3AA610    85C0                          TEST EAX,EAX
7E3AA612    75 20                         JNZ SHORT USER32.7E3AA634
7E3AA614    E8 C1F6FFFF                   CALL USER32.7E3A9CDA
7E3AA619    834D FC FF                    OR DWORD PTR SS:[EBP-4],FFFFFFFF
7E3AA61D    E8 DEDFFEFF                   CALL USER32.7E398600
7E3AA622    C2 0C00                       RETN 0C



BP sur la première ligne et tu obtiens ton BP sur GetWindowTextW

rvq35 a écrit:Je pensais par ce moyen pouvoir attaquer l'analyse du serial comme ici :http://www.forumcrack.com/web/tutos-ga/Cours%2010/Cours%2010.htm
C'est jouable, non ?


Comme Bango t'a dis dans son dernier message, après avoir regardé un peu tout ça je ne pense pas que ce soit une protection facile, le PE est en c++, ça ne fait déjà pas parti des langages les plus simples à reverse à mon gout :roll:
Tout est jouable, mais il va te falloir un peu de temps ;)
yafnag
Initié
Initié
 
Messages: 80
Inscription: 26 Juin 2011, 13:28

Re: h*i*t*m*a*n*P*r*o

Messagepar rvq35 » 20 Octobre 2016, 19:10

Bonsoir Yafnag
je fais ce que tu dis comme Bango mais je n'ai pas accès à User32
regarde ici : http://hpics.li/2882640
je n'ai pas ce module actif alors comment l'activer alors que je l'ai pour des crakme !!!
http://hpics.li/f784082
Dès le départ je suis bloqué par rapport à ce que vous expliquez, je ne vais pas avancer vite dans ce cas
merci
rvq35
Mega Crackeur !
Mega Crackeur !
 
Messages: 255
Inscription: 07 Mars 2013, 07:21

Re: h*i*t*m*a*n*P*r*o

Messagepar yafnag » 20 Octobre 2016, 22:59

rvq35 a écrit:regarde ici : http://hpics.li/2882640


En effet, déjà perso je suis sous Olly v1 mais peu importe, je suis prêt à parier que ce screen est fait lorsque que tu as balancé le PE dans Olly et qu'il n'est pas run...
Donc press F9 et laisse le s’exécuter ou exécute le PE solo puis exécute Olly File -> Attach et choisis le processus auquel tu veux t'attacher, une fois que tu es dedans retourne dans ton module hitmanpro, Ctrl +G -> GetWindowTextW et la ça fonctionne :roll:

Perso je n'ai pas essayé plus que ça de break sur cet API j'ai plus tracé le code par rapport au call de la MessageBox mais comme t'a dis Bango il n'y a pas une formule magique.
yafnag
Initié
Initié
 
Messages: 80
Inscription: 26 Juin 2011, 13:28

Re: h*i*t*m*a*n*P*r*o

Messagepar rvq35 » 22 Octobre 2016, 12:44

Le problème est que je ne sais pas quel est le processus auquel je dois me rattacher. Je n'avais d'ailleurs encore jamais utilisé cette fonction de Olly. Et je ne vois de révélateur qui se rapproche à user32 qui contient l'api en question. Vraiment je ne démarre pas !
rvq35
Mega Crackeur !
Mega Crackeur !
 
Messages: 255
Inscription: 07 Mars 2013, 07:21

Re: h*i*t*m*a*n*P*r*o

Messagepar yafnag » 23 Octobre 2016, 15:41

rvq35 a écrit:Le problème est que je ne sais pas quel est le processus auquel je dois me rattacher.


Attache toi au processus qui t'intéresse donc à Hitmanpro... :roll:

rvq35 a écrit:Je n'avais d'ailleurs encore jamais utilisé cette fonction de Olly.


Ne jamais avoir fait quelque chose c'est pas une honte, je n'ai pas un niveau équivalent à beaucoup de membres du forum (dont Bango et Etherlord qui t'ont répondu), en revanche j'estime que mon message était quand même assez explicite, il faut vraiment que tu bosses et cherche par toi même, on ne va pas non plus te donner un tutoriel pas à pas pour réussir à poser un BP sur une API..
Essaie des choses, modifie du code et debug, poste des parties qui te posent problèmes et commente ce que tu comprends, si tu veux avancer il n'y a pas d'autres solutions.
yafnag
Initié
Initié
 
Messages: 80
Inscription: 26 Juin 2011, 13:28

Re: h*i*t*m*a*n*P*r*o

Messagepar rvq35 » 23 Octobre 2016, 16:11

Désolé Yafnag mais j'ai beau suivre à la lettre tes instructions et impossible d'obtenir ceci :
"Donc press F9 et laisse le s’exécuter ou exécute le PE solo puis exécute Olly File -> Attach et choisis le processus auquel tu veux t'attacher, une fois que tu es dedans retourne dans ton module hitmanpro, Ctrl +G -> GetWindowTextW et la ça fonctionne"
Tu arrives, toi à obtenir le screen de Bango ? car c'est là que je veux arriver pour prendre le bon départ pour tracer.
Quel différence entre ouvrir une cible et attacher un processus ? surtout que je ne vois pas lequel rattacher car j'ai plutôt réussi à planter l'ordi. Voilà ce qu'il propose
http://hpics.li/3811669
bien sur si je choisi Hitman il dit qu'il est déjà en cours ...
rvq35
Mega Crackeur !
Mega Crackeur !
 
Messages: 255
Inscription: 07 Mars 2013, 07:21

Re: h*i*t*m*a*n*P*r*o

Messagepar rvq35 » 23 Octobre 2016, 18:24

j'ai enfin réussi à me situer sur le screen en question, je me demande comment mais je me suis aidé du cours n°10 de GA. Je pose un BP sur l'adresse 014F3C85 puis F9 et le getwindowtextw devient l'argument1
A partir de là il faudrait pouvoir tracer avec F8 mais au préalable j'ai besoin d' avoir la grille de saisie de sérial mais du coup je n'ai plus accès à elle ! alors que quand je ne mets aucun BP on arrive dessus pour saisir. Y a surement un moyen ? Je pense que le cours 10 bien que très simple possède des similitudes

014F3C7C |. FFD0 CALL EAX
014F3C7E |. 50 PUSH EAX
014F3C7F |. FF15 00F46701 CALL DWORD PTR DS:[HitmanPro.167F400]
014F3C85 |. 50 PUSH EAX ; /Arg1 = 12
014F3C86 |. 8D4D E4 LEA ECX,[EBP-1C] ; |
014F3C89 |. E8 022E0000 CALL HitmanPro.014F6A90 ; \HitmanPro.014F6A90
014F3C8E |> 8D4D E4 LEA ECX,[EBP-1C]
014F3C91 |. 51 PUSH ECX ; /Arg1
014F3C92 |. 8BCB MOV ECX,EBX ; |
014F3C94 |. E8 870D0000 CALL HitmanPro.014F4A20 ; \HitmanPro.014F4A20
014F3C99 |. 397D E8 CMP DWORD PTR SS:[EBP-18],EDI
014F3C9C |.- 7E 2A JLE SHORT HitmanPro.014F3CC8
014F3C9E |. 8B55 E4 MOV EDX,DWORD PTR SS:[EBP-1C]
014F3CA1 |. 52 PUSH EDX ; /Arg1
014F3CA2 |. E8 074D0900 CALL HitmanPro.015889AE ; \HitmanPro.015889AE
014F3CA7 |. 83C4 04 ADD ESP,4
014F3CAA |. 8BC3 MOV EAX,EBX
014F3CAC |. 8B4D F4 MOV ECX,DWORD PTR SS:[EBP-0C]
014F3CAF |. 64:890D 00000 MOV DWORD PTR FS:[0],ECX
014F3CB6 |. 59 POP ECX
rvq35
Mega Crackeur !
Mega Crackeur !
 
Messages: 255
Inscription: 07 Mars 2013, 07:21

Re: h*i*t*m*a*n*P*r*o

Messagepar rvq35 » 19 Novembre 2016, 15:15

bonjour
j'aurai 3 petites questions :
-est il normal que lorsque j'utilise olly1 je n'ai quasiment rien dans la pile après avoir fait F12 (après mon message d'erreur) alors qu'avec la V2 il y a plein d'infos et je retrouve le contenu de la mesagebox ?
-lorsque je recherche les apis, il faut faire control+N mais faut il toujours se mettre uniquement dans le module de la cible (en cliquant au besoin dans le petit carre bleu E )
-je n'ai toujours pas compris la fonction attach file dans le menu comme on me l'a suggéré car je ne vois pas ce que je peux faire avec ?
pour finir, si je reviens sur mes alertes avast lorsque je modifie des sauts (bien que maintenant j'ai isolé un dossier prévu à cet effet), pourquoi que ça ne pose pas problème pour ceux modifiés sur des tutos GA par exemple ?
Désolé pour des questions qui vous paraissent basiques
merci
rvq35
Mega Crackeur !
Mega Crackeur !
 
Messages: 255
Inscription: 07 Mars 2013, 07:21

Re: h*i*t*m*a*n*P*r*o

Messagepar rvq35 » 26 Novembre 2016, 11:42

Lorsque je fais Ctrl+N je vois une api is debugger present. Dois je en déduire qu'il faut contrecarrer au préalable cette fonction car je constate parfois des ? au début des opcodes. Je suppose que toutes les fonctions listées sont utilisées donc ma cible reconnait Olly n'est ce pas.
Aussi, pourquoi il se bloque parfois sur des exceptions et même, le cadre du message se met en arrière plan et impossible de saisir un code ? dommage qu'on aie pas de configuration conseillée pour le menu option
merci
rvq35
Mega Crackeur !
Mega Crackeur !
 
Messages: 255
Inscription: 07 Mars 2013, 07:21

Re: h*i*t*m*a*n*P*r*o

Messagepar CoolAlien » 26 Novembre 2016, 11:51

Oui, il faut contrecarrer cette fonction.
Avatar de l’utilisateur
CoolAlien
Apprenti
Apprenti
 
Messages: 68
Inscription: 16 Août 2016, 19:19

Re: h*i*t*m*a*n*P*r*o

Messagepar rvq35 » 27 Novembre 2016, 18:36

je ne sais pas pourquoi mais à chaque fois que je fais F9 il me dit exception 0000xxxx is non continuable et si je continue par F9 il bloque sur INT3. Je ne sais pas vraiement comment choisir les options sur Olly mais si je coche toutes les croix c est pareil. (je suis sur Olly2) Je pense que j'ai peu être modifié les options mais quoi :? avant j'arrivais à entrer un serial bidon. Ou trouver des conseils de configuration de Olly. merci
rvq35
Mega Crackeur !
Mega Crackeur !
 
Messages: 255
Inscription: 07 Mars 2013, 07:21

Re: h*i*t*m*a*n*P*r*o

Messagepar etherlord » 28 Novembre 2016, 08:30

etherlord
Triumvirat
Triumvirat
 
Messages: 2490
Inscription: 22 Mars 2004, 16:12

Re: h*i*t*m*a*n*P*r*o

Messagepar rvq35 » 30 Novembre 2016, 13:06

oui merci Etherlord mais j'utilise Olly 2 et les paramétrages sont bien différents. Je crois néanmoins que la majorité d'entre vous utilise la V1, aussi je me demande pour ce que j'en fait, l'intérêt effectivement d'utiliser ma version, n'est ce pas ?
rvq35
Mega Crackeur !
Mega Crackeur !
 
Messages: 255
Inscription: 07 Mars 2013, 07:21

PrécédenteSuivante

Retourner vers Reversing

Qui est en ligne

Utilisateurs parcourant ce forum: Bing [Bot] et 3 invités