Skinner permet de créer des skins pour le célèbre lecteur MP3 Winamp.
Ce crack ne nécessite que W32Dasm. Alors, comme d'hab on commence par tester le prog, on clique sur ABOUT puis sur REGISTER et là on nous demande de remplir deux champs : Le nom et le code. Donc le code est généré à partir du nom d'utilisateur. Pour ce crack j'ai choisit comme façon Live Approach, ça conciste à debugger le programme et chercher des trucs utiles.
BON ! A L'ATTAQUE !
Désassemblez le prog avec W32Dasm, faites Ctrl+L pour
debugger puis cherchez dans IMPORTED FUNCTIONS quelque chose comme
USER32.GetDlgItemTexteA (Fig 1) et posez des points d'arrêt dessus (F2), faites
attention, double-cliquez plusieurs fois sur GetDlgItemTextA car il peut y en
avoir plusieurs .
/!\ GetDlgItemTextA vérifie ce que vous avez tapé dans les cases
des saisie /!\
Fig 1
Ensuite, dans la fenêtre de gauche cliquez sur OPER (là ou y a marqué Source for data disp 2, Fig 2) comme ça on y verra mieux. Dans fenêtre de droite décocher la case Enable Document Api data, sinon la fenêtre API va apparaître tout le temps. Maintenant cliquez plusieurs fois sur RUN ou appuyer sur F9 pour démarrer Skinner. Cliquez sur About puis Register et entrez un nom bidon et un mot de passe (Fig 0), et là, W32Dasm apparaît. Traçons le prog en cliquant sur Step Over jusqu'à ce qu'on retrouve notre mot de passe bidon( Fig 2). Je vous rappelle que le mot de passe qu'on a rentré a été convertit en Hexadécimal, donc 77777=12FD1.
Fig
0
Fig
2
On voit que le programme met le contenue de EAX (notre mot de passe) dans EDI. Continuont à tracer, on voit ensuite que le prog compare le mot de passe bidon avec EBX (Fig 3), puis y a un saut conditionnel .... Je suis presque sur que notre MDP bidon est comparé au bon ....on convertit le code en décimal avec la calculette windows et on s'enregistre .... BINGO ! ça marche !
Fig.
3
BINGO
!
CONCLUSION : C'était simple, mais ne pensez pas que tous les programmes seront comme ça ;-).
A retenir :
- que
les valeurs qu'on voit dans les fenêtres du debuggeur sont en hexa ! Il faut les
convertir en décimal avec la calculette de windows.
- GetDlgItemTextA a
toujours un rapport avec l'entrée des données dans le programme, mot de passe,
nom, etc. ...
- Les programmes 16 bits ne sont pas debuggables par W32Dasm, il
faut SoftIce pour le faire.