######{{{{{{{{|||||||||||||||||}}}}}}}}###### ~~éè$$$¤¤¤--)( VisualBasic Tutorial )(--¤¤¤$$$éè~~ ######{{{{{{{{|||||||||||||||||}}}}}}}}###### Nom : Texturizer Version : 1.5 Disponibilité : CD Pro, CD-Team no 51 ou Http://djst.cjb.net Protections : Nag/Serial/VB5 Tools : Softice 4.0 Texturizer est un programme remplaçant le pauvre editeur de texte de windaube .La protection du soft, et ben je sais pas trop vu que j'ai trouvé le serial assez facilement, j'ai pas eu le temps de voir toutes les protects, c'est clair...Il y avait quand même un nag qui s'affichait au premier demarrage. Le proggy a été écrit en Visual Basic 5 (VB5) . Ca va être pour nous l'occasion d'aborder les Breakpoints que l'on peut utiliser pour sortir un serial d'un soft codé en VB5. Avant tout, pour cracker du VB5 avec softice,il convient de modifier le 'Winice.dat' de notre debugger favoris... Rajouter cette ligne : EXP=c:\windows\system\msvbvm50.dll De cette façon, sofitce s'arretera lorsque vous mettrez un Breakpoint sur une API VB .Si c'est un proggy en VB6 que je vous voulez cracker, je vous laisse deviner la ligne à rajouter ... N'oubliez pas de rebooter votre machine pour que les changements prennent effet . Il y a une API qui le fait bien pour cracker du VB... C'est l'API __vbastrcomp ou __vbastrcmp ... Ces deux APIs se charge de comparer deux chaînes ... C'est vachement pratique quand vous cherchez un serial... Bien sur il y en a plein d'autres des APIs cools (__vbavartsteq, __vbaVarCopy, __vbaVarMove ,__vbavarxor,__vbaStrCopy ...) , c'est comme pour un proggy codé en C, il est impossible de toutes les citer ici! :) Bon, donc notre proggy a une boîte d'enregistrement qui permet d'entrer un nom et un serial afin de débrider le soft. On entre notre nom et un serial bidon mais ON NE VALIDE PAS ! On fait surgir Softice en appuyant sur CTRL D . Et on entre notre Breakpoint : bpx msvbvm50!__vbastrcomp Et on relance le tout avec la touche F5 .Et on valide notre serial bidon en cliquant sur 'OK' . Sofitce se bloque bien à l'appel de l'API __vbastrcomp . Le premier break et le second ne sont pas interressant : appuyez 2 fois sur F5 . Softice se bloque bien encore une troisième fois . Cette fois, appuyez 2 fois sur F12 pour sortir de l'API __vbastrcomp. Je récapitule : Au premier arret de softice : 2fois F5 et 2fois F12 . Normalement vous devriez avoir ceci sous les yeux : 015F:004AA57B CALL [MSVBVM50!__vbaStrCmp] ------- le troisième appel à notre API 015F:004AA581 NEG EAX -------------------------- on atterrit ici en pressant 2fois F5 & 2fois F12 015F:004AA583 SBB EAX,EAX 015F:004AA585 LEA ECX,[EBP-1C] ------------ le serial bidon dans EBP-1C 015F:004AA588 INC EAX 015F:004AA589 LEA EDX,[EBP-18] ------------ notre nom dans EBP-18 015F:004AA58C NEG EAX 015F:004AA58E MOV [EBP-00BC],EAX 015F:004AA594 LEA EAX,[EBP-20] ------------ le bon serial dans EBP-20=511FE0 015F:004AA597 PUSH EAX 015F:004AA598 PUSH ECX 015F:004AA599 PUSH EDX 015F:004AA59A PUSH 03 015F:004AA59C CALL [MSVBVM50!__vbaFreeStrList] 015F:004AA5A2 ADD ESP,10 015F:004AA5A5 LEA EAX,[EBP-2C] 015F:004AA5A8 LEA ECX,[EBP-28] 015F:004AA5AB PUSH EAX 015F:004AA5AC PUSH ECX 015F:004AA5AD PUSH 02 015F:004AA5AF CALL [MSVBVM50!__vbaFreeObjList] Voilà ! En traçant le proggy avec la touche F10 on voit plein de trucs interressant ... En arrivant à l'addresse 4AA585 on repère notre serial bidon dans EBP-1C (sous softice fait E EBP-1C). Juste en dessous (4AA589), notre nom dans EBP-18 . Et enfin le bon serial dans EBP-20 à l'addresse 4AA594 . Quand vous êtes à cette addresse , Softice doit vous indiquer SS:0071E98C=00511FE0 . 511FE0 correspond à EBP-20 en mémoire .Faites donc E 511FE0 pour voir un truc dans ce gencre : 0030:00511FE0 42 00 31 00 34 00 45 00-2D 00 41 00 45 00 38 00 B.1.4.E.-.A.E.8.--- le serial... 0030:00511FF0 38 00 2D 00 43 00 44 00-35 00 38 00 2D 00 38 00 8.-.C.D.5.8.-.8. 0030:00512000 46 00 36 00 45 00 2D 00-33 00 38 00 00 00 65 00 F.6.E.-.3.8...e. 0030:00512010 00 00 61 00 00 00 64 00-00 00 51 00 44 00 00 A0 ..a...d...Q.D... 0030:00512020 38 00 00 00 23 00 4D 00-65 00 6E 00 75 00 3D 00 8...#.M.e.n.u.=. Donc pour moi : Nom : TaMaMBoLo Serial : B14E-AE88-CD58-8F6E-38 TaMaMBoLo