Comment choper un serial pour Start Clean v1.2
Matériel nécessaire :
SoftIce
Les protections :
Registration par code
Un Nagscreen au lancement
Commencez par installer Start Clean (et ouais ca aide si on veut le cracker non ? )
Vous allez voir que choper un serial pour StartClean est très, mais très facile...
Mais cela constitue, tout de męme, une bonne introduction à l'utilisation de SoftIce.
Commencons... Lancez Start Clean et lorsque le nag apparrait, cliquez sur Register...
Renseignez les champs : mettez votre nom (pour moi : CrAzY SquirreL) et un serial bidon (12345).
Appuyez sur Ok, et une boite de dialogue apparait avec 'Incorrect code!'.
Et oui, on ne chope pas un serial valable avec la chance, vous croyez quoi !!!!
Répetez l'opération précedente mais n'appuyez pas sur Ok. Maintenant allez sous SoftIce pour cela
faites Ctrl+D et posez un "bpx Getdlgitemtexta".
(ndSmeita: cette commande de SoftIce permet de poser un point d'arret sur les "objet" de la fenetre
ou vous rentrez le nom et le numero de serie...Comme ca, des que StarClean va regarder ce que vous avez
rentré comme serial, on va arriver sur SoftIce et on pourra suivre les operation pas-a-pas :)
Ensuite sortez de SoftIce et appuyez sur Ok.
Voilà vous ętes sous SoftIce (ndSmeita: grace au bpx !).
Faites tout de suite F12 pour sortir du CALL (la fonction appelée).
Là, regardez dans la fenętre des registres (tout en haut...), et plus spécialement la ou il y a marque "EAX".
(ndSmeita: Dans la fenetre des registres, vous pouvez voir les valeur de tout les registres memoire à un instant donné.
Tous les registres sont interressant a observer.
En fait, il est tres utile de les regarder a chaque pas que l'on effectue sous SoftIce.
C'est indispensable pour trouver un serial...Et n'oubliez pas que les registre sont en Hexa !!)
La valeur de EAX est de 0000000E. Tiens, bizarre ca ne serait pas la longueur de notre nom ?
Et oui 0E en décimal ca donne 14 (y'a 14 lettre dans CrAzY SquirreL !!).
(Si vous voulez convertir une valeur héxadécimale en décimale tapez "? valeur_hexa" ou "? nom_du_registre")
Maintenant, faites d esp+18 et dans la fenętre des données et on voit....rien...pas grave continuons..
(ndSmeita: La fenetre des données est la partie de SoftIce ou il y a des trucs du style de ce qu'on peut
voir dans un editeur hexadecimal...et "d nom_du_registre" affiche les infos contenu a l'adresse du registre...
C'est souvent grace a cette commande qu'on peut trouver un serial)
[interlude de Smeita...]
La zone de saisie que l'on trace pour l'instant semble etre celui oů l'on a rentré notre nom...
En effet, chaque zone de saisie est traitée l'une apres l'autre. De facon general, l'ordre dans lequel elle
sont traités est coďncide souvent avec l'ordre qu'elle ont dans la fenetre...Par exemple, dans StarClean, on a d'abord le nom
et ensuite le password...d'ou il est fort probable que l'on atterisse d'abord sur la premiere zone (le nom) puis sur la seconde (le serial..)
(je rappelle que "bpx getdlgitemtexta" permet d'arriver sur SoftIce dès que le programme appelle une zone de saisie...)
[...Fin d'interlude...]
On refais F12 pour atterir sur la deuxieme zone de saisie (le serial..), et ici là valeur de EAX est de 00000005.
Tiens, bizarre ca ne serait pas la longueur de notre serial ?
Et si on fait "d esp", on voit dans la fenętre "Data" 12345...Eh!! mais c'est notre serial !!
Plus de doute, on est bien dans la zone de saisie qui nous interresse !!
[interlude de Smeita...]
Y'en a qui doivent se dire "Comment on sait kil fo faire "d esp" ou aut' chose ????"
Bon, dans ce genre de cas, apres avoir appuyer sur F12, on arrive sur une instruction du style
"push esi" ou "push edi"...bref, on tombe sur "push xxx", et alors il suffit de faire
"d xxx"...
[...Fin d'interlude...]
On va poser un bpm (un point d'arręt sur une zone de la mémoire) comme ca quand le programme va comparer notre serial au bon on pourras essayer de le choper.
Mais pour poser un bpm il faut une adresse...Regardez à la gauche de la fenętre sur la meme ligne que '12345'.
Ici il s'agit de 63F4E0.
(Attention: l'adresse n'est pas la meme tout le temps, ne vous etonnez pas si c'est differrents chez vous...).
Donc on tapes bpm 63F4E0 et on fait Ctrl+D (pour laisser le programme continuer son éxécution).
Si tôt sorti de SoftIce qu'on y retourne, et on voit alors ces lignes :
MOV AL, [EAX] => met le contenut de EAX dans AL (sans doute le bon serial..)
CMP [ECX], AL => Compare ECX avec AL ; compare le bon serial et celui que vous avez entré
JNZ BFF7A7E8 => On dégage si c'est pas bon (ndSmeita: c'est a cette ligne qu'on arrive...)
CMP BYTE [ESI],00 => Regarde si ESI=0 (c'est à dire si ESI est le bon serial)
Tapez simplement d esi (cette commande permet de voir ce que contient le registre ESI dans la fenętre DATA)
et dans la fenętre data apparait mais oui votre SERIAL OFFICIEL !!!!
Donc pour CrAzY SquirreL le serial est 2730-26346-1673-333.
Pour info, le serial bidon est visble en tapant "d edi"...
Enlevez les breakpoints à l'aide de la commande bc *
(cette commande permet d'ôter tous les breakpoints posés auparavant), puis quitter SoftIce avec Ctrl+D.
De retour dans StartClean, rentrez le nom et le serial obtenus, et...Bravo!!! StartClean est encore cracké !
[interlude de Smeita...]
Bon, maintenant, je crois qu'on a suffisament cracker StartClean :))
Les prochain cours ne s'ataqueront plus a ce logiciel en particulier :)
Par exemple, dans le cours qui suit, vous allez apprendre a chopper un serial pour Winzip 7.0 !!
Comme ca, au moins, vous pourrez flamber devant les copains ;)
[...Fin d'interlude...]