9750
UTILITAIRE -> Divers
© GPA (2005)
 
 
 
Master Toolkit
cpc
 
 

NOTICE / MANUAL

TXT (1)

NOTICE TEXTE n° 1 (5.06 Ko)

Master Toolkit ---------------- Tom et Jerry du GPA (c) fevrier 2005 Mise a jour du 12 mars 2005 La protection "Master" est une protection francaise, utilisee sur certains logiciels Loriciels. Elle se compose d'une protection physique sur la piste 39 (10eme secteur non reproductible par Discology 6.0) et d'un loader code. Cette protection est generee avec un programme cree probablement par Pascal Jarry, programmeur de son etat (MGT, etc...) On retrouve sur la plupart des programmes proteges la partie basic du generateur du programme protege (voir fichier BASIC.BAS !). Pas de chance, on ne retrouve evidemment pas les modules assembleur utilises par ce precieux programme. La protection est a priori efficace. Lorsque l'on commence a essayer de comprendre le chargeur, on bute sur des codages nombreux, et sur un loader lui-meme code/decode pendant le chargement du programme protege. Par un hasard heureux (est-ce vraiment un hasard... ), il existe une faille enorme qui permet facilement d'outrepasser toutes ces protections. Comment reconnaitre une protection Master ? ------------------------------------------- La disquette est formatee au format VENDOR. Le secteur &47 de la piste 0 a une marque de controle (/CM sous Discology) et contient le loader final du programme. Le loader initial est un fichier de 2ko implante en &7730. Si vous stoppez le chargement du logiciel avec un Hacker, vous avez un loader en &40 qui en charge un autre implante en &A9B0. Le loader en &A9B0 est a priori code/decode a chaque appel, ce qui explique qu'il soit la plupart du temps incomprehensible (il est decode lors de l'appel final au programme). A noter qu'il exister plusieurs versions de la protection Master, celle utilisee par Tennis 3d n'utilise pas le meme loader final. Sur ce jeu, le loader est implante en &A0B0 et n'est pas code. Comment detourner une protection Master ? ----------------------------------------- Cela semble etonnament simple, mais en piste 0 secteur &47, il y a en &8A l'adresse de saut vers le programme charge ! Il suffit de remplacer cette adresse par une autre, appeler une routine de sauvegarde, et le tour est joue. Bien evidemment, la protection utilise une bonne partie de la memoire, mais elle laisse des octets libres a partir de &BEC0. La zone est petite, mais suffisante pour aller chercher en memoire etendue une routine de sauvegarde. C'est ce que fait le programme MASTER.BAS. Pour la version OLD (Tennis 3d), l'adresse de saut finale est en &A5. Comment utiliser MASTER.BAS --------------------------- Attention, il vous faut necessairement 128ko de memoire vive ! Commencez tout d'abord par modifier le loader de votre original avec un editeur de secteurs. Allez en secteur &47 piste 0, notez les octets en &8B et &8C, puis remplacez les par &C0 &BE. Utilisez un editeur de secteurs capable de lire les secteurs ayant une marque de controle (Discology, par exemple). Lancez ensuite MASTER.BAS. Il vous demande tout d'abord l'adresse d'execution du programme a deproteger, puis implante dans un bank de memoire etendue une routine de sauvegarde, puis une autre routine en &BEC0 (quel hasard), sur lequel doit pointer le loader trafique. Lancez le jeu original. Si tout se passe bien, le chargement finit par s'arreter, le BORDER devient blanc. Inserez une disquette formatee, et appuyez sur une touche. Le CPC sauvegarde la zone memoire &0040-&A67B sous la forme d'un fichier A.BIN executable puis fait un reset. Le programme est en theorie executable, mais vous pouvez rencontrez ensuite d'autres protections. Libre a vous ensuite de nettoyer ce fichier pour obtenir un programme propre. Si la zone memoire proposee ne vous convient pas, modifier les parametres du fichier MASTER.ASM (source Maxam). MASTER toolkit a ete teste avec succes sur les logiciels suivants : Titre Implantation Longueur Execution ---------------------------------------------------------------- Charly diams &08E0 &9B60 &08EF K.y.a. &0800 &9C80 &98DD Mata Hari &1000 &9600 &1700 Tennis 3d &4000 &4150 &8002 (old) Particularites -------------- Charly diams : il faut faire un beau POKE &A4C,&C9 pour eviter qu'il essaie de charger un secteur inutile (routine en &C60). Mata Hari : il faut d'abord retirer un codage (en pokant en &1746 les valeurs C8 00 (soit RET Z et NOP) puis faire un CALL &1700. Ensuite, faites un poke &C9 en &5B80, en &5B83 et en &5B86 et enfin faire un CALL &174D pour executer le jeu. Tennis 3d : la protecton Master ne concerne que la page ecran du jeu. Pour recuperer le jeu lui-meme, il faut le charger en memoire via la routine non protegee implantee en &8080, la detourner, et sauvegarder la memoire avec les parametres suivants : implantation=&0300, longueur=&80CE, exec=&242E.
 



Goto Top
CPC-POWER/CPCSOFTS, programmation par Kukulcan © 2007-2024 tous droits réservés.
Reproduction sans autorisation interdite. Tous les titres utilisés appartiennent à leurs propriétaires respectifs.
Hébergement Web, Mail et serveurs de jeux haute performance