Le Cracking

hanger la date dans la barre des tâches, ca marche aussi ;0)


Cours de crack

 

COUR DE CRACK I

Cracking I


Intro : cette section va parler de cracking un peu logique non. Je vais
essaye de vous apprendre a cracke tout les petits softs sur le Net. Pour
toutes les pages que je vais ecrire je tenterai de vous montrer comment
cracke tel ou tel soft

Nous allons donc commencer par le matos (Software) du petit cracker sous
windaube :

SoftIce Le meilleur Debug sous windows 95,c'est le soft qui vous permetra
de faire les tests de changements dans une application

WDasm Un deasm pour win95 avec DlgRef et Stringref .... ce Soft permet de
prendre vos marques dans une app,de remarquer quelque bonnes addrs genre
protec et autre .. HexWorkShop Un petit soft qui vous permet de modifie
(sur disque dur a vie quoi) les apps que vous avez cracke avec succes ...
Serial : GM000007

Petite precision quand j'utilise // ca veux dire que derriere c'est du
commentaire Bon Now passons au choses serieuses cette fois nous allons
cracke AcdSee32 Ver:2.4, bon c'est un soft pour lire les images trop
rapidement.
Commencons par le debut on lance l'executable et la en haut au dessus du
menu nous remarquons le petit "[unregistered]".En plus quand on lit 2 ou 3
photos un dialogue(boite de dialogue) a la con sort
et vous rappel que vous ete unregistered, ca c'est vraiment chiant !!!!!

Bon apres ces quelques constations vous sortez Wdasm et Deassemble
acdsee32.exe ... bon on attend un peu ca dure quelque secondes ....
Nous avons constate que ascdsee porte dans ca barre le string (ou suite de
caractere) [unregistered]
donc nous allons faire une recherche de ce string (Menu Search --->FindTExt) ..
Nous tombons a la ligne
*possible use of string ref "[unregistered]" //avec cette ligne Wdasm vous
indique que le push en dessus va charge "[unregistered]"
401334 6848e04b00 push 4be048 // le first number est la ligne programme ,
le second est la commande qui va etre envoyer au processeur et enfin
push addr est la ligne equivalente en asm du code
processeur envoye :)
En traduction francaise au prochains call "[unregistered]" sera envoye
( call est un appel de fonction call addr), donc c'est ici que Acdsee
rajoute le unregistered en haut donc nous pouvons pense que haut dessus il
y a le code qui permet de s'avoir si vous ete register ou pas regardons ...
40131d call 407370 //appel d'une fonction
mov ebx,dword ptr [4aa310] //semble place dans ebx un resultat
cmp eax,1 //compare le registre eax,1
je 0040133c //si la comparaison est bonne saute en 40133c
Comme par hasard en cas de bonne comparaison ca saute le unregistered
continuons notre recherche
(Avec la touche F3 Find Next)..

40173d call 407370
cmp eax,1
je 401775
Bon la c'est la meme chose il appel 407370 et puis saute le [unregistered]
si eax est a 1.
La nous devons avoir trouve la fonction qui s'occupe de savoir si
utilisateur est registered ou pas ...
Nous remarquons que si utilisateur est register la fonction met eax a 1
Donc nous allons modifie la fonction pour quel ne retourne que 1 dans tout
les cas !!! :)

On sort softice, en cliquant dans demarrer programmes Softice Symbol Loader
ensuite load ascdsee32.exe
et module Load et puis enfin "ok"
On arrive dans une fenetre dos (ASCII), bon ici il faut taper bpx 407370,
cela dit a softice de s'arrete des que le programme(debug donc acdsee)
passe pas la ligne 407370 ...
On appui sur F5 pour dire a softice de continue app...
Et hop ca revient sous SoftIce ca veut dire que Acdsee a tente execute la
fonction pour voir si registered
.... maintenant a nous de la change (rappel en sorti de fonction eax doit
etre egal a 1) Pour changer la fonction on tape "a" (ce qui veut dire assemble
pour softice)
puis on tape mov eax,1 // met eax a un
puis ret //retourne a la fonction appelante en gros fin de fonction
ensuite sur escape ce qui nous remet en mode normal ... puis f5 pour
continuer et a votre plus grande joie vous ne voyez plus le unregistered
(quel pied non) voila , vous allez dans about et register et a la place de
votre nom il y a rien bof c'est chiant ....
nous allons chercher ou il prend le nom d'utilisateur, il y a grande chance
que ca soit dans la base de registre,donc deasm ( avec Wdasm pour ceux qui
ont pas suivi) et cherchons les appels base de registre,je vous le donne
RegQueryValue ...
vous cherche un peu et vous trouver un appel de l'API avec en dessous
utilisation de regname ca y est vous avez trouve sortez regedit ... allez
dans HKEY_LOCAL_MACHINE (c'est la ou tout les soft met leur truc) en suite
dans software\Acd System\AcdSee\2.3 et la fait une cle chaine "Regname"
avec ce que vous voulez dedans
ensuite avec softice remodifie 407370 (parce que les modif que vous faite
avec softice ne sont valable qu'une fois ) ... et la allez dans about
register et la il y a le contenu de la chaine formidable ...
Enfin nous allons finalise le crack pour instant votre executable n'a pas
ete modifie (il est originale ),donc relancons un Module Load (dans Softice) et arrive a 407370 avant de faire les modif tape
e eip cette commande va vous montrer le code envoyer au processeur notez une
15 ene de nombres puis faite les modifs et note les difference dans la
fenetre e (l'endroit ou vous avez note les nombres certain ont changes car
vous avez change les truc en asm)
Arrive ici sorte HexWorkShop load ascdsee32.exe recherche les 15 premier
chiffre une fois trouver
modifie pour obtenir les nombre apres ... sauve et voila vous Venez de
finir votre premier crack pas
cool ca .... :)


Bon la prochaine fois ce sera cuteftp 2.5 qui passera au cracking allez ZA+++
A oui en cas erreur(s) ou de prob(s)
vous pouvez ecrire a
Ragez@francemel.com



COUR DE CRACK II


Cracking II


Intro : Bon cette page ci nous allons cracke du soft trop laid niveau protek
genre je change deux jz et ca marche) tout d'abord CuteFtp 2.6.1 et ensuite
et Mirc 5.5... :)

On commence par CuteFtp, bien sur c'est la derniere version ....
Nous allons donc deasm (wdasm Voir page cracking I pour logiciel)
cuteftp32.exe, en meme temps on lance cuteftp on va dans about et la
"UNREGISTRED VERSION", bon donc nous cherchons ca dans l'exe avec wdasm
(search --> find text) au miracle nous obtenons la ligne
:0040108a 6825010000 push 00000125
L'appel de la fonction qui doit determiner si user est unregistered doit
etre dans les parage remontont un peu (401060 Conditional ) hmmmmm tient cool ce code
call 411a90
test eax,eax
je 401083
Bon la c'est evident il y a de grande chance que 411a90 soit la fonction qui
sert a determine si register ou pas, nous allons donc teste ca en fausant le
test pour cela nous utiliserons softice .... Let's rock :) .... On load
cuteftp32.exe dans le symbol loader de softice on met le bpx 406010 on
appui sur F5 (continue) on fait about, softice s'arrete sur le breakpoint et
la on fait assemble (commande :a)et on remplace le jz par un jnz... puis F5
et au grande joie le UNREGISTERED c'est casse pour des caracteres bizarre.
bon gracee a cette demonstration nous somme sure que 411a90 s'occupe de la
registration , resortons wdasm et allons en 411a90, ok la fonction est
appele trois fois en 401059 413479 42F06f, bon la logique montre que voila
dans les trois c'est la meme chose il suffit de remplace le jz par des nop
(ou jnz)..... Bon voila soft est deplomb parcontre les caractere bizarre
dans about c'est not cool mais bon supportable quand on pense que ca fesait
chier avant ... Bon vous faite les modif avec HexworkShop (cf cour I de
cracking) ... et Voila :)
Passons now au deuxieme soft Mirc ... Bon nous executons le truc on va dans
help register un user et un pass au pif et la appareit une MessageBox avec
comme message sorry your registration ... don't match. Donc nous deasm la
chose et nous nous mettons en quete du message (pq donc car dans les parage
il doit avoir la fonction pour la registration he he ). Nous tombons a la
ligne
:435df0 push machin...
Bon now regardons au dessus la juste au dessus "your registration is ...."
et encore au dessus du code qui ressemble a ca
:435d02 call 492278
test eax,eax
je 435daa
Bon Vraiment interesant maintenant testons ce petit code (meme s'il parait
evident que c'est la protek nous somme pas presse), on lance softice (Module
load et bordel cf prm cour) bpx 435d02, bon je vous donne un nouvelle ruse
pour teste ... bon vous allez dans register vous faite register avec des
truc au pif la softice ressort logique vous tape p (cette commande passe a
la ligne suivante du code) puis r (commande vous donne les etat de tout les
registre et permet de modifie leur valeur)et vous mettez eax a 1 voir et la
c'est bon ... Donc nous revenons a deasm et allons a la fonction 492278 pour
voir qui l'appelle :) bon la on voit que la ligne 49240f sera aussi a
modifie ... On modifie les deux ligne en question ... on relance mirc et la
pas register c'est quoi ce bronc ... et ouis en faite il suffit etre
intelligent ( et logique) la pluspart (meme tous now ) des soft verifient
votre registration a chaque ouverture de l'app, c'est aussi le cas pour
mirc de plus pour verifie votre registration la fonction de protek a besoin
de votre nom et code (encore un fois logique)... Donc la on regarde au
dessus de l'appel en 4923df et la au joie mirc load deux cle dans la base de
registre name & code (avec la fonction RegQueryValueEx),donc faite une cle
dans la base de registe : HKEY_CURRENT_USER\software\mirc\name et la mettez
une valeur chaine, bon la logique veut que aussi le menu register ne soit
plus accesible si vous ete deja register donc il n'est en realite pas
utilile (si la cle est presente en base de registre) de change l'appel en
4923d2, a oui aussi vous allez me repondre pq on ne change pas la fonction
492278 pour qu'elle ne retourne plus que 1 (comme ascdsee voir premier cour)
tout simplemnt parce que il y a CRC je vous expliquerez cette protek sur la
prochaine stuff qui sera sur Winzip 6.4 (je sais c'est pas la derniere mais
vous allez comprendre) :) (Suspense) J'oubli modifie avec HexWorkShop bien
sur he he