Le 26 Février 1999
Crack de Super CuteFTP version 2.0 et version
2.8 par Pass Partout
Crack de Line 98 version 2.0
Quatrième compte-rendu
1/Materiels:
- http://www.cuteftp.com/ ou PC MAG LOISIRS
(hors- série ) N°4 Juin 1998, PC Team, on le trouve partout...
-
Line 98 PC Team N°42
- un désassembleur: Wdasm (la version que
vous voulez)
- un éditeur hexadécimal
- une pointe de
soft-ice
- durée: le temps de désassembler
2/Intro:
Salut,
Comme toujours les tuts que je fais sont pour
les newbies.
Ce tut comporte deux cours, l'un sur cupteftp et l'autre sur
line 98, j'ai reuni ces deux cours car j'ai utilisé la même
méthode pour les cracker, de plus, ils me fallait étoffer mon
tut.
J'ai dû cracker ce petit programme (cuteftp) parce que j'en avais
besoin, je dois l'avouer (pour une fois que les programmes que je cracke me
servent :o). Ben voui!!! Pour mettre à jour les pages de La Main Rouge.
Je trouve qu'il est très bien fait. Pour les utilisateurs de ce logiciel:
parfois il est nécessaire de cocher la case BINARY dans TRANSFERT TYPE
pour un bon fonctionnement, j'ai eu des problèmes sur altern.org. Oui
mais personne n'aura plus l'occasion d'aller sur Altern.org à cause de
qui vous savez!!! En passant La Main Rouge ne se trouve donc plus chez
Altern.Org, il est chez www.multimania.com/mainrouge/
3/Cours:
A/Cute FTP:
Par où commencer? Comme d'habitude on
regarde.
Rien de spécial, pas de code d'enregistrement, limité
à 30 jours d'utilisations et c'est tout.
Ca ne vaut pas le coût
de le cracker et vous savez pourquoi? Changer voir la date de votre ordinateur,
par exemple: augmenter celle-ci de deux mois. Lancer CuteFTP. Et oui un zoli
nag-screen vous accueille. Maintenant revenez à la date 'normale'.
CuteFTP marche de nouveau!!! Cogito!!! Sorti tout droit de votre esprit
diabolique :o) vous avez pensé que même si vous dépassiez la
date, en voyageant dans le passé :o) vous pourrez quand même
utiliser CuteFTP. Très bonne idée mais il y a un hic! Je suis
paresseux et je n'aime pas, mais pas d'y tout changer la date de mon ordi. Donc
on va cracker ce petit prog.
Je viens de dire que CuteFTP se base sur l'horloge interne de l'ordi, et bien window$ fait des appels API qui sont les suivants:
GetSystemTime
GetLocalTime
SystemTimeToFileTime (moins utilisé)
Maintenant que vous avez ça, vous avez
tout!!!
Alors sous soft-ice, faites 'OPEN' CuteFTP.exe, puis faites 'LOAD'.
Soft-ice prend la main, on pause un point break: bpx getsystemtime et bpx
getlocaltime. On appuie sur F5 et on attend!!!
Soft-ice nous envoie:
* Referenced by a
CALL at Addresses:
|:00411E03 , :0041206D ,
:00416F82 , :00416F96 , :0041700A
|:00446AF3
|
:00437240
81ECCC000000
sub esp, 000000CC
:00437246
8D442410
lea eax, dword ptr [esp+10]
:0043724A
50
push eax
* Reference To: KERNEL32.GetLocalTime,
Ord:00F5h <-
ICI
|
:0043724B
FF1580F94800
Call dword ptr [0048F980]
:00437251
8D4C2400
lea ecx, dword ptr [esp]
:00437255
51
push ecx
* Reference To: KERNEL32.GetSystemTime,
Ord:0135h
|
:00437256
FF157CF94800
Call dword ptr [0048F97C]
:0043725C
668B54240A
mov dx, word ptr [esp+0A]
:00437261
663B1572D34800 cmp dx,
word ptr [0048D372]
...
...
Voila!!
Cette routine vérifie la
date du mise en route du shareware.
On appuie sur F12 (deux fois)pour savoir
quel fonction à apeller notre routine...
On se retrouve en :00411E03 E838540200
call 00437240
La j'utilise la methode du physicien, qui consiste à suivre(comparer) ce que fait le programme quand il fonctionne 'normalement' et quand il fonctionne 'moins normalement' :o). Puis à forcer le bon chemin. Remarquez que cette methode est facile à comprendre, elle demande juste un minimum d'attention (d'observations) mais (il y a toujours un mais), cette technique est limitée et je pense que vous savez pourquoi (pas besoin d'explications).
Maintenant on trace pas à pas (trace over)le programme avec la touche F10.
:00411E02
51
push ecx
:00411E03
E838540200
call 00437240 <- c'est lui!!!
:00411E08
8B442424
mov eax, dword ptr [esp+24]
:00411E0C
8B4C2420
mov ecx, dword ptr [esp+20]
:00411E10
83C404
add esp, 00000004
:00411E13
3BC1
cmp eax, ecx
:00411E15
7D07
jge 00411E1E <-ici
:00411E17
BA00093D00
mov edx, 003D0900
:00411E1C
EB04
jmp 00411E22
* Referenced by a (U)nconditional or
(C)onditional Jump at Address:
|:00411E15(C)
|
:00411E1E
2BC1
sub eax, ecx
:00411E20
8BD0
mov edx, eax
* Referenced by a (U)nconditional or
(C)onditional Jump at Address:
|:00411E1C(U)
|
:00411E22
8B442414
mov eax, dword ptr [esp+14]
:00411E26
81FA80533B00
cmp edx, 003B5380
:00411E2C
89542418
mov dword ptr [esp+18], edx
:00411E30
7E12
jle 00411E44 <-- ici
:00411E32
83F80A
cmp eax, 0000000A
:00411E35
7C0D
jl 00411E44
:00411E37
BB01000000
mov ebx, 00000001
:00411E3C
899DF0020000
mov dword ptr [ebp+000002F0], ebx
:00411E42
EB05
jmp 00411E49
...
...
Les deux sauts indiqués sont
essentiels...
Quand on trace la version dite 'normal' et la version 'expired'
on s'apercoit de cette difference. Pour cracker ça, il suffit de forcer
les deux sauts:
:00411E15
7D07
jge 00411E1E
en
:00411E15
EB07
jmp 00411E1E
et
:00411E30
7E12
jle 00411E44
en
:00411E30
EB12
jmp 00411E44
C'est déjà fini!!! Ah, presque,
il nous reste un nagscreen à enlever:
:00411E03
E838540200
call 00437240
en
:00411E03
90
nop
:00411E04
90
nop
:00411E05
90
nop
:00411E06
90
nop
:00411E07
90
nop
Pour la version 2.8 c'est exactement
pareil.
Il faut changer:
Le nagscreen:
:004130D2
E849840200
call 0043B520
en
:004130d2
9090909090
nopnopnopnopnop
Les sauts:
:004130E8
7D0B
jge 004130F5
en
:004130E8
EB0B
jmp 004130F5
et
:00413101
7E0F
jle 00413112
en
:00413101
EB0F
jmp 00413112
B/Line
98
Line 98 est un jeux tres sympa, il resemble
à five +... J'aime bien... Niveau protection: c'est idem que
cuteftp.
Avec soft-ice poser un BPX GETSYSTEMTIME.
Retouvez la fonction
appellant (appuyez deux fois sur F12): 00404652
Puis tracez pas à pas
pour chercher la difference (trace over F10).
On cracke Line 98 en
patchant:
:0040466C
7511
jne 0040457F
en
:0040466C
7411
je 0040457F
et
:00404973
0F85D6050000
jne 0404F4F
en
:00404973
0F84d6050000
je 0404F4F
4/Conclusion
Rien à dire sinon qu'on peut surement
faire plus simple.
Si problème -> email
A plus
Pass Partout
La Main
Rouge
Email: pass_partout@hotmail.com
Venez
nous voir sur http://www.multimania.com/mainrouge/