Título: Tutorial Renascense 1 by skapunky Publicado por: skapunky en 20 Septiembre 2007, 00:06 am Más información: http://foro.elhacker.net/index.php/topic,180720.0.html
********************************************************************************* * Name Crackme: CrackMe Renascense 1.exe * * Coded Crackme : Skapunky * * Solution writted: skapunky * * date: 20-9-2007 * * Download CrackMe: http://www.crackmes.de/users/skapunky/renascense_crackme/ * ********************************************************************************* Abrir el OllyDebugger y cargar Crackme Renascense.exe. Una vez cargado, apretar el boton derecho del mouse y escojer: "Search for > "All commands". Bien la idea es buscar todas las veces que se ejecutara un boton, para ello escribimos: "PUSH EBP" y veremos lo siguiente: Found commands Address Disassembly Comment 004012E0 INC EAX (Initial CPU selection) 00405790 PUSH EBP 0040591C PUSH EBP 00405AA8 PUSH EBP 0040803C PUSH EBP 00409710 PUSH EBP Ahora, otra vez click derecho y escojeis:"Set breakpoint on every command". Con esto lo que haceis es poner un punto de parada, lo que tendreis de localizar cual es el que chequea el ID/PASS. Para ello apretais al botton de play para poner en marcha el Crackme y os inventais un ID/PASS ficticios. Por ejemplo en mi caso he hecho: ------------- ID: skapunky PASS: 123456 ------------- Y le dais al boton de chequear. En esta ocasión, como lo estais corriendo desde el debuger, y se han colocado puntos de parada, vereis que os parara en esta linea: 00409710 > 55 PUSH EBP Ahora se trata de ir apretando <F8> hasta que llegueis a esta zona: 0040A7D7 . 52 PUSH EDX 0040A7D8 . FF15 68104000 CALL DWORD PTR DS:[<&MSVBVM60.__vbaStrCm>; MSVBVM60.__vbaStrCmp 0040A7DE . 85C0 TEST EAX,EAX 0040A7E0 . 0F85 DD000000 JNZ CrackMe_.0040A8C3 Fijaos en la direccion de memoria 0040A7D8, alli aparece la API VbaStrCmp, esta lo que hace es comparar dos cadenas, es decir, el password real que sale del ID y el ficticio, lo que si con F8 os posicionais encima de esta linea y mirais la pantallita de Registers (FPU), a la derecha del olly...vereis la siguiente información. EAX 00000010 ECX 0014F784 UNICODE "ska886345605" <---- Contraseña real ¿? EDX 0014F1F4 UNICODE "123456" <---- Contraseña Ficticia !! EBX 00000001 ESP 0012F2F0 EBP 0012F528 ESI 0012F604 EDI 0012F534 EIP 0040A7D8 CrackMe_.0040A7D8 C 0 ES 0023 32bit 0(FFFFFFFF) P 0 CS 001B 32bit 0(FFFFFFFF) A 0 SS 0023 32bit 0(FFFFFFFF) Z 0 DS 0023 32bit 0(FFFFFFFF) S 0 FS 0038 32bit 7FFDE000(FFF) T 0 GS 0000 NULL D 0 O 0 LastErr ERROR_SUCCESS (00000000) EFL 00000202 (NO,NB,NE,A,NS,PO,GE,G) ST0 empty 1.2808172612747893380e+3166 ST1 empty -UNORM E678 00000000 BF991CA8 ST2 empty 1.7455443511013539740e+3079 ST3 empty 4.8431202390910618310e-4932 ST4 empty 1.3192464472175859790e+3102 ST5 empty 1.0000000000000000000 ST6 empty 13.000000000000000000 ST7 empty 45.000000000000000000 3 2 1 0 E S P U O Z D I FST 4000 Cond 1 0 0 0 Err 0 0 0 0 0 0 0 0 (EQ) FCW 137F Prec NEAR,64 Mask 1 1 1 1 1 1 Ahora, acabais de debuggear el programa con <F8> o simplemente lo parais y lo volveis a ejecutar, si lo acabais con <F8>, evidentemente os saldra un mensaje de contraseña incorrecta. Bueno..a lo que ibamos, "play" de nuevo y esta vez escribimos: ------------------- ID: skapunky PASS: ska886345605 ------------------- Ya sea debugeando el programa hasta que acabe apretando <f8> o ejecutandolo y escribiendolo directamente, nos saldra una pantallita de felicitación donde nuestros datos han tenido exito. Bueno, este es un claro ejemplo de crackme típico en visual basic y es un metodo que se repite para solucionar diversos crackme, siempre en VB ya que tiene la API vbaStrCmp. Tutorial escrito por Skapunky. Espero que os sirva de ayuda. Lo he escrito lo mejor posible, ya que solo hace 5 dias que me dedico a este campo. Saludos. Título: Re: Tutorial Renascense 1 by skapunky Publicado por: ÂìmBòt en 20 Septiembre 2007, 05:01 am :| muy bueno gracias skapunky
|