- Tutorial 1: Le 1° tutorial va vous apprendre à cracker votre premier programme et les bases de l'assembleur.
Ce tutorial est destiné aux personnes qui ont des bases en programmation. Pour devoir cracker on va devoir se munir du programme OllyDbg qui permet de décompiler(désassembler) le programme à cracker en Assembleur.
En peu d'assembleur:
Pour pouvoir cracker un programme, il faut connaitre en peu l'Assembleur. L'Assembleur est un language de programmation dérivé du langage machine (0 et 1).
En Assembleur il y a 2 types de saut conditionnel. Un saut conditionnel est un saut d'adresse mémoire dans un programme qui s'effectue à une certaine condition.
- Tutorial 2: Vous allez apprendre à cracker le programme du tutorial 1 d'une autre façon.
- Tutorial 3: Vous allez apprendre à faire des "break point" dans les programmes.
Maintenant nous allons essayer de trouver le mot de passe du programme crack3.exe. Pour cela, nous allons devoir stopper le programme au moment où il compare le bon mot de passe avec le mot de passe que l'ont a rentré. Stopper un programme à un endroit précis s'appelle faire Break Point (BP).
Déterminer le mot de passe:
Tout d'abord ouvrez le programme crack3.exe. On constate que le programme nous dit "Mauvais mot de passe" si on tappe un mot de passe bidon. Commençons par ouvrir le programme crack3.exe avec OllyDbg. Recherchez après la phrase: "Veuillez entrer le mot de passe". On peut constater que le programme crack3.exe à la même structure que le programme crack1.exe.
A l'addresse mémoire 004011A8 on peut voir le saut conditionnel et 3 lignes plus haut à l'adresse 0040119E on voit "CALL crack3.0040BBA8". Cette ligne appelle une variable qui est le mot de passe, donc nous allons faire un Break Point(BP) sur cette ligne. Pour faire un BP, cliquer 2 fois sur la valeur hexadécimal du "CALL crack3.0040BBA8"(E8 05AA0000) et l'adresse mémoire 0040119E ce met en rouge. Maintenant nous allons démarrer le programme en appuyant soit sur F9 ou soit sur la flèche "Run".
Dans le programme crack3.exe qui est ouvert: tappez un mot de passe bidon et valider. Dans la petite fenêtre en bas à droite on peut voir le mot de passe bidon mais aussi le bon mot de passe: "system".
Cette façon de procéder ne marche que pour les mots de passe et non pour les sérials. La raison c'est que la vérification des mots de passe s'effectue lettre par lettre et la vérification des sérials s'effectue directement.
- Tutorial 4: Ce tutorial va vous expliquer comment créer un crack en C++.
Ce tutorial va vous apprendre à créer un crack pour le tutorial 2. Nous allons donc simplement mettre la valeur "90" à l'adresse 00401180 et 00401181.
Offset:
Si on ouvre le programme "crack1" avec un éditeur de texte, on peut voir plein de caractère ASCII. Le premier caractère ASCII correspond à l'offset 1, le deuxième à l'offset 2, etc. L'offset se calcule en hexadécimal et il va nous faciliter la tâche pour créer notre crack en C++.
Nous allons calculer l'offset de l'adresse 00401180. Pour cela on a besoin du programme LordPe.
1) Ouvrez le programme LordPe puis cliquez sur "PE editor" pour ouvrir le fichier à cracker.
2) Ensuite cliquer sur "FLC" et cochez la case "VA".
3) Entrez la valeur 00401180 et cliquez sur "DO" pour obtenir l'offset.
Vous devriez obtenir l'offset 780h qui correspond donc à l'adresse 00401180. Maintenant nous allons convertir l'offset en décimal pour plus de facilité, ce qui donne: 1920
Nous allons aussi convertir le chiffre 90 en décimal: 144.
Voila nous somme prêt pour réaliser le crack qui va mettre la valeur 144 à l'offset 1920 et 1921.

