REVERSE ENGEEER aide API

Signaler
Messages postés
32
Date d'inscription
jeudi 12 juin 2003
Statut
Membre
Dernière intervention
12 avril 2006
-
Messages postés
1466
Date d'inscription
vendredi 2 janvier 2004
Statut
Modérateur
Dernière intervention
14 février 2014
-
Salut tout le monde!!
je me lance dans le reverse engeneer,c'est à dire la modification de programme
déja compilé!!
le seul probléme que j'ai,c'est pour la définition aux api!!!

0040113F |. FF35 0E304000 PUSH DWORD PTR DS:[40300E]
00401145 |. E8 AC040000 CALL 004015F6 ==>qui est référencé à updatewindow.

je vais donc a cette adresse:

004015F6 $-FF25 4C204000 JMP DWORD PTR DS:[40204C]==>_ USER32.UpdateWindow

je supose que c'est ici que sont définie les API!!!
que signifie DWORD PTR DS???
et ladresse 40204C ne me méne null part!!!
j'aimerait comprendre comment sont définie les api dans un programme!!
car aprés jaimerais pouvoir en rajouté moi mm si je vx ajouté quelque fonction a certain programme!!
si quelqu'un pouvait m'aider!!!

MERCI AUX FUTUR RéPONSE

5 réponses

Messages postés
2
Date d'inscription
dimanche 13 avril 2003
Statut
Membre
Dernière intervention
28 février 2005

Ouah...je te conseille d'abord de connaitre un peu a ce que tu touches :)

J'ai fait un quelques petits articles sur le format PE il y a peu de
temps, ca explique ce que c'est et comment marche la table
d'importation (ce que tu veux modifier), je te conseille d'y jeter un
oeil : glayag.free.fr



Sinon rapidement : en 40204C, il doit y avoir l'adresse de la DLL USER 32 une fois qu'elle a ete chargee dans le process
Messages postés
1466
Date d'inscription
vendredi 2 janvier 2004
Statut
Modérateur
Dernière intervention
14 février 2014
1
salut,

a l'adresse 40204C tu a l'adresse de la fonction USER32.UpdateWindow
et tu est maintenant dans la IAT.

les information sur le format PE:
http://win32assembly.online.fr/files/frenchtuts.zip

@++
Messages postés
32
Date d'inscription
jeudi 12 juin 2003
Statut
Membre
Dernière intervention
12 avril 2006

Je vous remercie pour ces infos yarocco & patatalo je vais regarder sa,& si j'ai d'autre question je vous les pose ici.

merci encore

ZO JA KONET
Messages postés
32
Date d'inscription
jeudi 12 juin 2003
Statut
Membre
Dernière intervention
12 avril 2006

Dsl de vous embéter encore une fois,jai lu vos article mais sa na pas répondu a mes attentes
en faite se que je voudrai savoir fére,c'est dinclure ma DLL dans un fichier exe déja compilé!!!
par exemple:
j'ai besoin dune fonction de User32.dll,mais cette fonction n'est pas défini dans le programme.
il faut que je la définisse mais je c pa comment faire.
ou sinon,j'ai créé ma propre DLL,mais je ne sais pas comment la rajouter dans le programme.
quelqu'un aurait il MSN,je pourrait peut étre mieu m'exprimer qu'ici
(a l'origine je suis un dévellopeur C++,mais j'aime bien toucher a tout :)et lasm étant la base de la programation ben me voila a poséé d question :D)

merci pour vos aide,je vais éssayé de cherché également,si je trouve,je met la réponse ici,sa px intérréssé certain débutan comme moi!!!

ZO JA KONET
Messages postés
1466
Date d'inscription
vendredi 2 janvier 2004
Statut
Modérateur
Dernière intervention
14 février 2014
1
re,

tu as des programmes qui peuvent modifier l'entête PE pour ajouter une section.
dans cette section tu met LoadLibrary/GetProcAddress.

la deuxième possibilité serait de modifier l'IAT.

la troisième serait de creer une Dll du même nom qu'une déjà liée.
Ensuite, tu fais en sorte que les symboles exportés par la Dll originale soit bien appelés par la nouvelle Dll. Ensuite tu ajoute les fonctionnalités que tu veux dans ta nouvelle Dll.

matte cette source http://www.asmfr.com/code.aspx?ID=19632 , y'a des trucs sur le format PE, comment trouver une fonction exportée par nom, ordinal, ...

@++