Introduction

 

        Le cracking

        Le cracking est une méthode illégale qui consiste à modifier un programme ou à analyser son code afin d'enlever une protection par exemple.

        Il existe énormément de façons de cracker un programme. Imaginez une porte fermée à clé. Vous pouvez soit l'enfoncer, si c'est trop difficile, vous pouvez deviser les gongs ou faire exploser la serrure, passer par un autre endroit ou encore aller dérober la clé,... Les possibilités sont nombreuses.

        Mais il existe quasi autant de façons de protéger un programme que de manières de le cracker!

 

        Il y a plusieurs types de cracks :

        ¤ Les patchers : petits programmes qui vont modifier un fichier (souvent l'exécutable) afin de le rendre libre de toute protection.

        ¤ Les serials : Une clé unique valide

        ¤ Les keygens : programmes permettant d'obtenir un serial valide la plupart du temps en fonction de notre nom (sorte de généralisation des serials).

        ¤ Les keyfiles : fichiers possédants les informations nécessaires à l'exécutable pour être enregistré

        ¤ ... 

        Ils dépendent à la fois de la façon de le programme est protégé et de la manière dont le cracker l'a déplombé.

 

        Pour cracker un programme, à moins d'être devin ou d'avoir trouvé comment faire sauter la protection quelque part, il vous faudra désassembler, c'est à dire, à l'aide d'un programme spécialisé, afficher la source en asm du programme. Ce qui peut parfois atteindre plusieurs centaines de pages!

 

        L'asm

        Lorsque vous désassemblez un programme, la source sera toujours en assembleur (il existe peut-être des logiciels qui décompilent dans un autre langage mais je n'en ai jamais vu), vous allez donc devoir vous familiarisez avec celui-ci si vous ne l'êtes pas déjà avant de pouvoir réellement cracker.

        J'ai rédigé une petite introduction à l'assembleur mais qui est loin d'être complète.       

         Je vous conseille vivement d'avoir sous la main l'API-Guide et le W32 SDK Reference afin de savoir très facilement à quoi servent la plupart des APIs que vous rencontrerez sur votre route.

        Voilà en gros, mais je ne saurais que trop vous conseiller d'aller jeter un oeil par vous-même sur Google. Rassurez-vous, vous ne devez pas tout connaître pour pouvoir cracker, mais plus vous en saurez, plus vous aurez facile et plus vite vous progresserez.

 

        Les outils

        J'utiliserai principalement OllyDBG pour désassembler et débugger. Rien ne vous empêche d'utiliser W32DASM, SI, IDA ou autre, mais je n'expliquerai que pour Olly. Si vous utilisez un autre désassembleur/débuggeur, vous devrez le connaître par vous même.

        Lorsque j'utiliserai des outils complémentaires : ImpRec, LordPE (prenez la version deluxe par yoda + mise à jour), PEID,... j'essayerai d'expliquer le plus clairement possible comment les utiliser. De nouveau si vous préférez utiliser d'autres outils, il faudra que vous les connaissiez déjà!

 

        Les cours

        Je m'efforcerai d'être le plus précis et clair possible pour les premiers cours. Si vous considérez que le niveau est trop facile pour vous, passez aux cours qui suivent (quand ils existeront ;) ), mais je vous conseille quand même de tout lire, je ne ré-expliquerai pas des choses que j'ai déjà expliquées dans des cours précédents.

        Je vais essayer de créer des cours d'une difficulté croissante, mais il se peut que par de mon apprentissage, j'apprenne de nouvelles astuces d'anti-cracking qui soient toutefois plus simples que celles que je connaissais déjà.

 

        Pour terminer

        Je vous rappelle que le cracking est ILLÉGAL. Les méthodes que je décrirai ici sont destinées à un but pédagogique et je ne vous incite en aucun cas à les mettre en pratique. Toute utilisation frauduleuse de celles-ci ne pourra se retourner ni contre moi, ni contre mon hébergeur.

       

Bon crack,                  

Crisanar         

[ Les bases de l'asm >> ]

 

Dernière mise à jour le 13/08/2004 18:45