QUAKER

Exercice n°2

Prog : AllSound98 ---->PC Mag n°27

 

 Avec W32dasm désassemblez AllSound.exe .

 Lancez Debug----->Load Process (sans démarrer avec RUN )

 Agrandissez la fenêtre du listing de code désassemblé

 Ouvrez String Data Réf

 Intéressant . . . on voit "Registration key accepted" et "Registration key no accepted"

 Double click sur ces deux lignes de texte et on s'aperçoit que leurs routines respectives sont en dessous l'une de l'autre et donc en toute logique , il doit y avoir un saut conditionnel au-dessus pour déterminer si le code que vous aurez rentré sera valider (Registration key accepted) ou non.

 Donc on remonte,on remonte . . . jusqu'au premier saut conditionnel rencontré :

 Ligne : 474A2E JE 474AE6 ----> (474AE6 = "Registration key no accepted ")

 On s'aperçoit qu'un petit peu plus haut , il y en a un autre: 474A16 JNE 474AE6 (même adresse)

 Bon on y va , on pause un BPX sur 4747A16 JNE 474AE6 .

 On lance le prog (RUN)

 On arrive tout de suite à une zoli boite qui nous invite à nous enregistrer.

 Et enfin à la boite registration.

 Rentrez un nombre , un nom----->Enter

 Le prog doit stopper----> revenez sous W32dasm

 Click "Patch code"---->modifier le code (ex: remplacez JNE par JE)--->enter---->confirmation---->fermer la fenêtre----->confirmation

 Continuez à tracer ligne par ligne jusqu'à 474A2E

 Modifiez le code . . .(Click "Patch . . .)

 Touche RUN pour relancer le prog.

 Et Oooooh miracle "Registration key accepted"

 Et là comme à chaque victoire , un violent krackorgasme m'envahit . . .(que seuls les initiés connaissent).

 De courte durée . . .

 En effet après avoir sortie de W32dasm on relance normalement le prog sous Windoz69 et on s'aperçoit qu'on n'est toujours pas enregistré . . .ENFER ET DAMNATION !

 ZEN . . .

 On repart , relance le prog sous W32dasm , on renifle du côté de nos sauts conditionnels précédemment cités.

 On va commencer par s'intéresser au CALL (474A11)qui se trouve juste au dessus du premier saut.

 Paaafff . . .un BPX dessus (ça lui apprendra)

 Relance de AllSound98 ---->RUN

 Le prog s'arrête et là on va s'intéresser à la deuxième fenêtre de W32asm ,en effet celle-ci nous montre qu'elles sont les paramètres qui "passent" par les registres (EAX,EBX,EDX ...etc) et on regarde .

 Dans EDX on remarque kekchoz de troublant : une suite de caractères qui pourrait ressembler à un code . . .ON NOTE

 On rentre dans le CALL (F7) ou Step into----->on trace . . .

 Quelques lignes plus bas il y a une comparaison (CMP EAX, EDX) avant évidement un saut conditionnel JE---->saut si égalité--->donc effectuera le saut si EAX est égal à EDX .Et kikiya dans EAX : le code que vous avez entré et dans EDX le bon code.

 Quand vous serez sur cette ligne CMP EAX , EDX, visionner le registre EDX. . .Oooooh le zoli sérial . . .(le mien était D43KLR18 ; change à chaque PC différent).

 Vous n'avez plus qu'à le rentrer normalement.

 NDLR : Rekrackorgasme.

Sommaire