Changer la Clef PC en memoire

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

Changer la Clef PC en memoire

Messagepar boby3 » 08 Décembre 2013, 11:23

Bonjour à tous,

Je suis ce merveilleux forum depuis quelque temps déja, mais (après m'être inscrit :-/) pour cette fois, je vais vous demander un peu d'aide.

En effet, j'ai un logiciel qui possède une "clef PC" (hardware fingerprint), j'ai la licence pour celui ci et je souhaiterai changer de PC.
J'ai donc ouvert mon Ollydbg préféré, et j'ai bien en mémoire (partie bas/gauche et adresse = eax) la clef qui apparait. Si je la change (clique droit edit binary) par mon ancienne, tout fonctionne :-)
Ce que je n'arrive pas, c'est le faire de manière automatique :-(

J'ai essayer de modifier une ressource string (ressource hacker) et faire un push de cette valeur (id de la string), mais à priori, je m'y prend mal...

Pouvez vous m'aider ?
Avatar de l’utilisateur
boby3
Visiteur
Visiteur
 
Messages: 10
Inscription: 08 Décembre 2013, 11:12

Re: Changer la Clef PC en memoire

Messagepar Horgh » 08 Décembre 2013, 14:23

En effet, j'ai un logiciel qui possède une "clef PC" (hardware fingerprint), j'ai la licence pour celui ci et je souhaiterai changer de PC.

Cherche du côté des apis qui touchent au hardware pour trouver comment est fabriquée la clé (Ex GetVolumeInformation, GetComputerName). Sinon si tu ne veux pas t'embêter tu peux toujours fisher une clé directement sur la machine cible (rare) ou patcher la vérif de la licence.

J'ai donc ouvert mon Ollydbg préféré, et j'ai bien en mémoire (partie bas/gauche et adresse = eax) la clef qui apparait. Si je la change (clique droit edit binary) par mon ancienne, tout fonctionne :-)
Ce que je n'arrive pas, c'est le faire de manière automatique :-(

Cherche du côté des loaders ou de l'inline patching.

J'ai essayer de modifier une ressource string (ressource hacker) et faire un push de cette valeur (id de la string), mais à priori, je m'y prend mal...

Euh je t'avouerai que je ne saisis pas l'intérêt de la manoeuvre ?!
Avatar de l’utilisateur
Horgh
Maître des ténèbres
Maître des ténèbres
 
Messages: 526
Inscription: 21 Janvier 2010, 16:24

Re: Changer la Clef PC en memoire

Messagepar boby3 » 08 Décembre 2013, 14:42

Tout d'abord, merci d'avoir répondu si vite ! :-)

Cherche du côté des apis qui touchent au hardware pour trouver comment est fabriquée la clé (Ex GetVolumeInformation, GetComputerName). Sinon si tu ne veux pas t'embêter tu peux toujours fisher une clé directement sur la machine cible (rare) ou patcher la vérif de la licence.

Cherche du côté des loaders ou de l'inline patching.


Ok, je vais essayer de chercher de ce coté, merci pour l'info



J'ai essayer de modifier une ressource string (ressource hacker) et faire un push de cette valeur (id de la string), mais à priori, je m'y prend mal...

Euh je t'avouerai que je ne saisis pas l'intérêt de la manoeuvre ?!

En fait l'idée était de modif l'asm avec de lignes du type :
movzx eax,byte[39h]
inc eax
movzx eax,byte[35h]
inc eax
....
Afin d'ecrire la bonne clef pc... mais a priori, c'est plus facile de réaliser en passant par une SDR. Donc j'ai modifier/rajouter une SDR avec ressource hacker, et essayer de faire quelque chose dans le genre.
push 00004229 <--- ID de la SDR en hexa
afin de récuperer la valeur et de la mettre à la bonne adresse (celle de eax)

Par contre, je ne sais pas si cela est faisable ou si il s'agit de la bonne methode :-/
Avatar de l’utilisateur
boby3
Visiteur
Visiteur
 
Messages: 10
Inscription: 08 Décembre 2013, 11:12

Re: Changer la Clef PC en memoire

Messagepar Horgh » 08 Décembre 2013, 14:52

Oui c'est tout à fait possible. Par contre j'ai l'impression que quelque chose m'échappe. Si la clé est hardware dépendante, pourquoi vouloir utiliser l'ancienne clé sur un nouveau PC ? Normalement la licence sera invalide.
Avatar de l’utilisateur
Horgh
Maître des ténèbres
Maître des ténèbres
 
Messages: 526
Inscription: 21 Janvier 2010, 16:24

Re: Changer la Clef PC en memoire

Messagepar boby3 » 08 Décembre 2013, 15:05

Par contre j'ai l'impression que quelque chose m'échappe. Si la clé est hardware dépendante, pourquoi vouloir utiliser l'ancienne clé sur un nouveau PC ? Normalement la licence sera invalide.


La clef est effectivement calculé à partir de la machine, et c'est bien pour ça que je souhaite uniquement modifié la "clef-PC". La machine actuelle est en XP et je ne souhaite pas que celle ci soit en service après avril 2014. J'aimerais donc virtualisé la solution (vmware) afin de gérer ce problème d'obsolescence. Malheureusement, le problème de clef-PC m'en empêche !


Oui c'est tout à fait possible.

As tu des exemples concernant ce point ? Car j'ai bien essayé mais sans succès ...
Avatar de l’utilisateur
boby3
Visiteur
Visiteur
 
Messages: 10
Inscription: 08 Décembre 2013, 11:12

Re: Changer la Clef PC en memoire

Messagepar Horgh » 08 Décembre 2013, 15:24

La clef est effectivement calculé à partir de la machine, et c'est bien pour ça que je souhaite uniquement modifié la "clef-PC".

Donc si je comprend bien ton sérial est basé sur une clé PC basée sur des éléments hardware, et toi tu souhaiterais réutiliser la clé basée sur ces éléments d'identification sur l'autre pc afin que la licence soit valide. En se basant sur le fait que 1) tu connais ta clé PC 2) tu sais ou il en est fait usage tu as plusieurs solutions :

- le loader qui a mon avis à peu d'intérêt ici, trop lourd à mettre en place
- l'inline patching, qui consiste à rajouter son code dans des code caves (zone vides à la fin des sections) et à rediriger le flot d'exécution au moment opportun sur ce code avant de repasser la main au programme

Je ne pense pas que la voie des ressources t'amènera quelque part, à la rigueur tu peux placer ta string dans cette section et ensuite y accèder par la voie classique, mais ça sera du pareil au même que ça soit dans .code .data ou .rsrc. Perso je préfère mettre ça dans les deux premières, .rsrc est souvent en read only et c'est crado de commencer à toucher à tout ça.
Avatar de l’utilisateur
Horgh
Maître des ténèbres
Maître des ténèbres
 
Messages: 526
Inscription: 21 Janvier 2010, 16:24

Re: Changer la Clef PC en memoire

Messagepar boby3 » 08 Décembre 2013, 15:32

Horgh a écrit:
La clef est effectivement calculé à partir de la machine, et c'est bien pour ça que je souhaite uniquement modifié la "clef-PC".

Donc si je comprend bien ton sérial est basé sur une clé PC basée sur des éléments hardware, et toi tu souhaiterais réutiliser la clé basée sur ces éléments d'identification sur l'autre pc afin que la licence soit valide. En se basant sur le fait que 1) tu connais ta clé PC 2) tu sais ou il en est fait usage tu as plusieurs solutions :

- le loader qui a mon avis à peu d'intérêt ici, trop lourd à mettre en place
- l'inline patching, qui consiste à rajouter son code dans des code caves (zone vides à la fin des sections) et à rediriger le flot d'exécution au moment opportun sur ce code avant de repasser la main au programme

Je ne pense pas que la voie des ressources t'amènera quelque part, à la rigueur tu peux placer ta string dans cette section et ensuite y accèder par la voie classique, mais ça sera du pareil au même que ça soit dans .code .data ou .rsrc. Perso je préfère mettre ça dans les deux premières, .rsrc est souvent en read only et c'est crado de commencer à toucher à tout ça.


Ok, merci pour les infos, il me semblait aussi que le loader serait un peu trop lourd...
Je vais essayer avec le inline, je vais d'abord recup des tuto sur le sujet ;-)
Avatar de l’utilisateur
boby3
Visiteur
Visiteur
 
Messages: 10
Inscription: 08 Décembre 2013, 11:12

Re: Changer la Clef PC en memoire

Messagepar Bango » 09 Décembre 2013, 09:03

C'est packé, pas packé?

boby3 a écrit:La clef est effectivement calculée à partir de la machine, et c'est bien pour ça que je souhaite uniquement modifier la "clef-PC"

Pourquoi ne pas essayer de comprendre comment est générée une clef par rapport au N°Hardware?
C'est quoi le soft?
\ô/
Avatar de l’utilisateur
Bango
Modérateur
Modérateur
 
Messages: 1574
Inscription: 23 Juillet 2007, 15:33
Localisation: Gotham city

Re: Changer la Clef PC en memoire

Messagepar boby3 » 09 Décembre 2013, 13:13

Hello,

Bango a écrit:C'est packé, pas packé?

Non, c'est pas packé.

Bango a écrit:Pourquoi ne pas essayer de comprendre comment est générée une clef par rapport au N°Hardware?

Au final c'est ce que je m’était dit (hier aprem) en voyant à quoi pouvait ressembler le inline patching... (c'est un peu trop dur pour moi :shock: )
En fait, je pensais que ça allait être + simple de juste automatiser ma modif dans olly, l'idée principale etait juste de rendre "portable" le serial.

Bango a écrit:C'est quoi le soft?

EBP Com pta et Fact uration 12.1 (le fichier c'est eto ols.dll, mais je présume que tu le savais déjà du coup :D )
Dernière édition par boby3 le 14 Décembre 2013, 18:12, édité 1 fois.
Avatar de l’utilisateur
boby3
Visiteur
Visiteur
 
Messages: 10
Inscription: 08 Décembre 2013, 11:12

Re: Changer la Clef PC en memoire

Messagepar warsoft » 10 Décembre 2013, 12:35

salut,
regarde mieux, il y a une clé pc par défaut et un saut à modifier.
avec cette info, tu devrais y arriver.
warsoft
Elève
Elève
 
Messages: 42
Inscription: 18 Novembre 2007, 10:26

Re: Changer la Clef PC en memoire

Messagepar boby3 » 10 Décembre 2013, 12:54

Yop !

warsoft a écrit:salut,
regarde mieux, il y a une clé pc par défaut et un saut à modifier.


J'ai trouver un saut (avec pour condition une verif de EAX=2 dans etools) qui me conduit à la fenetre 'OK c'est enregistré' (mais le prog reste locké...)

Je vais continuer mes efforts :twisted:

avec cette info, tu devrais y arriver.

C'est normal qu'il y ai beaucoup de sauts ? :boulet:
Avatar de l’utilisateur
boby3
Visiteur
Visiteur
 
Messages: 10
Inscription: 08 Décembre 2013, 11:12

Re: Changer la Clef PC en memoire

Messagepar Martinooooo » 11 Décembre 2013, 15:05

Essaie de trouver comment on en arrive à eax=2... EBP va stocker les infos d'enregistrement si valides et va les revérifier à chaque démarrage ! Si tu n'as patché que la procédure pour enregistrer tu n'iras pas très loin :mrgreen:
Acme::Don't
Acme::Bleach
Acme::Pony
Lingua::Romana::Perligata
The Lingua::Romana::Perligata makes it makes it possible to write Perl programs in Latin. (If you have to ask "Why?", then the answer probably won't make any sense to you either.)
Avatar de l’utilisateur
Martinooooo
Maître des ténèbres
Maître des ténèbres
 
Messages: 577
Inscription: 19 Août 2008, 08:20
Localisation: DR8, le + utile DRx

Re: Changer la Clef PC en memoire

Messagepar boby3 » 11 Décembre 2013, 15:58

Martinooooo a écrit:Essaie de trouver comment on en arrive à eax=2... EBP va stocker les infos d'enregistrement si valides et va les revérifier à chaque démarrage ! Si tu n'as patché que la procédure pour enregistrer tu n'iras pas très loin :mrgreen:


Ok merci pour le conseil, je vais regarder le call situé avant ce test avec + d'attention.
Avatar de l’utilisateur
boby3
Visiteur
Visiteur
 
Messages: 10
Inscription: 08 Décembre 2013, 11:12

Re: Changer la Clef PC en memoire

Messagepar boby3 » 14 Décembre 2013, 13:38

Hello,

La semaine de boulot étant terminée, je me suis remis sur mon analyse.
Je viens de réussir, le logiciel accepte n'importe quelle licence : Finalement les idées de m’intéresser :
- au schéma de protection (en général) plutôt que de me focaliser sur la clef PC,
- ainsi que de vérifier ce qu'il y avait avant 'mov eax,2' furent totalement bénéfique :-)

Je tenais à tous vous remercier !!! :mrgreen:

Pour info, le soft accepte n'importe quelle licence / clef pc maintenant.
Avatar de l’utilisateur
boby3
Visiteur
Visiteur
 
Messages: 10
Inscription: 08 Décembre 2013, 11:12

Re: Changer la Clef PC en memoire

Messagepar vv832003 » 28 Août 2014, 13:51

Bonjour à tous,

Je viens de lire avec intéret ce post malheureusement étant novice dans le domaine du hack bon nombres de réponse reste pour moi incompréhensible.

A l'intention de Bobby pourrais tu me donner quelques explications j'ai exactement le même problème que toi sur le même logiciel identique ?

D'avance merci

VV
vv832003
 
Messages: 1
Inscription: 28 Août 2014, 13:44

Suivante

Retourner vers Reversing

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 9 invités