Unpacking Manuel pour les Newbies par ACiD BuRN
Traduction par Secret Agent James Bond 007


yo !!

Aujourd'hui je vous vous expliquer comme on decompacte manuellement,
mais je vais prendre une application, freeware, compactee avec aspack
(on s'en fout de toutes facons! hehe !!)
Je ne vous montrerais que comment on retrouve les String Data Reference
dans l'app donc pas de table d'import, mais je m'en fout puisque c'est
un tutor pour newbies, n'oubliez pas qu'avec ca vous pourrez patcher
les exe, donc soyez deja bien content! :)



Tools needed : - Soft ice 3.x or 4

               - Procdump 1.5 (seulement pour dumper)







Premiere partie: le loader!





Vous devrez utiliser le loader de SI pour decompacter, donc exécutez le!
et choisissez l'exe que vous voulez!
Pour nous, ce sera : Konix.exe.
Ok, executez le avec le loader mais le probleme c'est que cette
application ne veut pas s'interrompre... :(
hehe, no problem!, executez Proc Dump et utilisez un editeur PE!
Editez la section du Code de l'executable.
(PE editor: choisissez le fichier, sections, CODE et bouton droit "EDIT SECTION")





ok, vous voyez dans section caracteristic : C0000040

ok , changez le en : E0000020



Ne m'emmerdez pas a savoir pourquoi, croyez moi ca marche tout le temps!
faites le c'est tout!

Maintenant, executez le Loader de SI et ca marche! :))
super , ca a marche hehe





deuxieme partie: tracer et dumper le fichier de la memoire vers le disque!



Ok, donc vous avez tout juste arrete l'execution ds SI, vous voyez naturellement
les INVALID mais ca ne pose pas de probleme. Tracez avec F10 et vous
arrivez ici:

XXXXXXXX   PUSHAD        <-- quand vous decompactez, si vous voyez ca :)

XXXXXXXX   CALL 45A006

XXXXXXXX   POP EBP

XXXXXXXX   SUB EBP,43D93E

............



XXXXXXXX   CALL 0045A051

XXXXXXXX   CALL 0045A2B2

XXXXXXXX   CALL 0045A350



............



XXXXXXXX   POPAD       <-- c'est bien de voir ca aussi! :)

XXXXXXXX   JMP EAX     <-- arretez de tracer ici parce que ca jump vers le code du prog



.......





Donc... quand vous decompactez vous voyez un POPAD et un JMP, regardez celui
qui jump vers un registre comme EAX,ECX, EDX...
mais le plus souvent c'est EAX!
Ok, donc quand vous etes au niveau du JMP EAX, regardez la valeur de EAX et
ecrivez la sur un bout de papier: pour moi c'etait: 43F0A0.
Vous l'utiliserez sous peu croyez moi!! hehe
Pour savoir si vous etes a la bonne place, essayer de tracer avec F10 une
fois et regardez si il jump vers la vrai entree du programme.
Pour nous , il l'a fait, alors c ok!

Maintenant, sortez de SI et reexecutez l'EXE avec le loader de SI.
Et tracez jusqu'au JMP.
Maintenant, tapez : 

A       {enter}  <== pour assembler le code

JMP EIP {enter}  <== c'est pour faire une boucle infine sans avoir a dumper de la merde!
{escape}

F5

Maintenant le programme est entrain de faire une boucle infinie en memoire
et on peut le dumper!!!
Ok, executez ProcDump et vous voyez dans la liste les taches en cours.
Clickez sur celle contenant Konix.exe. Maintenant douton droit et choisissez
FULL DUMP. Savez le nouveau EXE avec le nom que vous voulez.
ex: KonixDumped.exe

Maintenant, cliquez avec le bouton droit comme tout a l'heure mais
choisissez KILL TASK au lieu de FULL DUMP sinon le programme
continuerait sa boucle infinie!

Troisieme partie: Fixer le point d'entree du programme!





Ok, regardez le nouvel EXE que l'on vient de dumper et vous voyez
que sa taille est plus grande que celle empacketee... bien! :)
Mais attendez! si vous l'executez le prog va cracker comme un chien! :(
ok... vous vous souvenez vous avez note le OEP (Original Entry Point) sur
un papier, cette valeur que vous avez trouver dans EAX.
Dans ce cas, c'etait 43F0A0. Ok executez ProcDump PE Editor et changez
le point d'entre en 0x0003F0A0. (OEP - the image base : 43F0A0-400000=3F0A0)

Quand je disais que ce nombre allait nous aider!! hehe

maintenant, fermez procdump , et le programme compacte/crypte MARCHE!!!!!!!!!!!!!!!!!!!!



Ouais, On a reussi!! hehe

Maintenant desassemblez le et vous avez les String Data references :)

vous pouvez le patcher maintenant!! heh!!

Bon, Ce tut est termine, J'espere que vous avez tout compris
mais si vous avez commentaires/questions, ecrivez a:

ACiD_BuRN@nema.com or acid2600@caramail.com.

(EMAIL du traducteur: snipernet_1@yahoo.com)
have Fun and happy cracking !





greets to my groups : ECLiPSE / PWA / CiA / oDDiTY

also greetingz to:



R!SC, ^Inferno^, AB4DS, Cyber Blade, Klefz, , Volatility, Torn@do, T4D

Jeff, [Virus], JaNe , Appbusta , Duelist , tKC , BuLLeT , Lucifer48 , 

MiZ , DnNuke , Bjanes , Skymarshall , afkayas , elmopio , SiFLyiNG , 

Fire Worx , Crackz , neural_en ...





Sorry if you are not here too many people to greetz !!!)