Adaptation des cours de "Deamon" à Ollydbg par "ga"

 

Cours n°2 

Cracker un crack-me



Objectif : 

Cracker un crack-me en modifiant un saut. 

Niveau : 

Très débutant 

Ce qu'il vous faut : 

- 
Ollydbg

- Le
 crack-me de 3 Ko (et oui, c'est mieux de l'avoir si vous voulez le cracker ;-) 

Allez go ! 

   Le but est donc de le cracker pour arriver sur un bon message quand on clique sur OK. Il faut donc modifier un saut. 

Après avoir téléchargé ce crack-me, lancez-le pour voir comment il se présente et relevez le titre du message d'erreur et son contenu.
 

Désassemblez (ouvrez) ensuite ce crack-me avec Ollydbg et clique droit sur la fenêtre de code / "Search for" / "All  referenced strings" 
 pour trouver le message d'erreur. Double-cliquez sur ce message (
"Ahhh! Tu n'as pas réussis" ou "FATAL ERROR !!" - titre du message). Vérifiez qu'il n'y en a qu'un seul dans la liste (dans certains programmes le message peut apparaître plusieurs fois, mais là ce n'est pas le cas). 

Remontez un peu et là on aperçoit juste avant le message notre petit signe ">", on clique dessus et on peut voir une petite flèche apparaitre.



   Le message est donc appelé par un saut à l'adresse
 00401016.

La fenêtre des infos nous affiche :

   On va donc à cette adresse en faisant clique droit sur la ligne Jump from <ModuleEntryPoint>+16 / "Go to Jump from 401016"
Arrivé à cette ligne, on voit un
JMP SHORT 00401032 (00401032 étant l’adresse de destination du saut) :



   On peut voir aussi qu’une petite flèche rouge apparaitre, celle-ci nous confirme la destination du saut.
Ce saut a était effectué juste avant le mauvais message. Si on regarde un peu en dessous du
JMP, on voit un message qu'il a était sauté et qui à l'air d'être le bon message. 

   Vous l'avez donc sûrement compris, il faut donc changer ce vilain
 JMP et le remplacer par un NOP (pas d'opération = pas de saut). Double clique sur le JMP / une fenêtre appelée  "Assemble" apparait / Remplacez "JMP SHORT 00401032" par "NOP" / Assemble, puis fermez la fenêtre "Assemble".

Vous devriez avoir ceci :

Ollydbg a modifié le code, il ne vous reste plus qu’a enregistrer la modification : on sélectionne les 2 lignes modifiées par Ollydbg ainsi que 2 lignes avant et 2 lignes après :

    Clique droit sur la sélection / Edit / Copy to executable / Une fenêtre "Modified file" s’ouvre, faites "OK" / Fermez la fenêtre "D" / une fenêtre "File changed" apparait / "Oui" et vous renommez le Crackme comme bon vous semble, pour moi ça sera "Crackme#1ga".

Il ne vous reste plus qu’a fermer Ollydbg, puis lancer notre Crackme nommé "Crackme#1ga" afin de voir si ça fonctionne et là... ça marche !

__________   ___   __________

J'espère que vous avez tout compris. Si vous ne comprenez pas ou si je ne suis pas clair dans mes explications,
n'hésitez pas à poser vos questions sur ForumCrack
 !

<<< Retour au cours précédent
[ L'hexadécimal et les types de sauts ]

 

Passer au cours suivant >>>
[ Cracker un crackme ]

 

 

Juin 2013