Crackme v2 (6 en 1) Intenta resolverlos todos

Iniciado por Mad Antrax, 16 Enero 2013, 22:57 PM

0 Miembros y 1 Visitante están viendo este tema.

Mad Antrax

Bueno, os dejo mi segundo y último crackme por el momento. En realidad son 6 crackme's en 1, tendréis que resolverlos uno por uno a modo de prueba.

Dificultad (4/10) sencillo

Prueba 1: Nag Screen



No es necesario resolver la nag, el crackme te deja continuar pasados unos segundos. Tu decides en parchear o no, pero si lo haces demostrarás tus dotes de cracker.

Prueba 2: Enable it



El botón que te permite pasar a la siguiente prueba está deshabilitado, encuentra la función/API que lo activa para continuar.

Prueba 3: Serial it



El típico serialme, hay 3 versiones de éste tipo de crackme en el programa, aquí el nivel es MUY sencillito

Prueba 4: Serial it v2



Similar al anterior, se han suprimido los mensajes de alerta para añadir algo de dificultad.

Prueba 5: serial it v3



Última prueba del tipo 'serialme', dificultad añadida. Pero sigue siendo fácil

Prueba 6 final: Code inyect



Prueba final, aquí solo aceptaré una forma de solventar el crackme. El programa te quita "vida" cada vez que golpeas. Tienes que modificar el programa para que tu vida aumente en lugar de disminuir. Soy conciente que puedes parchear el salto condicional, pero lo que pido es que la vida aumente.




Consideraré el crackme resuelto si superas las pruebas 2,3,4,5 y 6. Teniendo en cuenta que en la prueba 6 NO se puede parchear el salto condicional, tendrás que modificar el código y hacer que la vida aumente.

Si además, resuelves la prueba 1, te ganarás mi respeto y lo haré constar en éste hilo :D

DESCARGAR: http://www.mediafire.com/?xsei66uiqxb74ek
No hago hacks/cheats para juegos Online.
Tampoco ayudo a nadie a realizar hacks/cheats para juegos Online.

MCKSys Argentina

Perdón, pero no me pude contener:


1) Sacar nag

Cambiar byte de orden de Form (en GUITable)

Intercambiar bytes en offset 17C4h por byte en offset 1814h

2) Enable it

El boton no tiene definida la propiedad enabled en la GUITable. Se le asigna por código.
Hay 2 opciones para activar el boton:
a) Hacer que Enabled reciba TRUE en vez de FALSE.
b) Parchar el form_load para que no se ejecute nada (la propiedad Enabled por default es TRUE)

Por la forma en que está el código, es más sencillo hacer b.

Se ensambla en 405730 un RET (Byte en offset 5730 se pone en C3h)

3) Serial it

Para hallar el serial, ponemos un BP en 405902 (MSVBVM60.__vbaStrCmp), ingresamos un serial y damos "Hit".
Cuando para, vemos que nuestro serial se compara con "melocotón" (sin comillas).

NOTA: En Olly v1.10 no muestra el string en el stack (al menos no ahora :) ) porque tiene problemas para reconocer la "ó" como caracter válido. Basta con hacer "Follow in dump" del valor de ESP y listo.

4) Serial it v2

Igual que antes, ponemos un BP en 405CBA (MSVBVM60.__vbaStrCmp), ingresamos serial y damos "Hit".
Vemos que ESP apunta al string "madantrax " (sin comillas).

5) Serial it v3

Igual que antes, ponemos un BP en 405FE8 (MSVBVM60.__vbaStrCmp), copiamos un serial en el portapapeles (o Clipboard como les guste XD ) y cuando pegamos salta el BP.
Vemos que ESP apunta al string "Nag Screen" (sin comillas).

NOTA: Este string es el Caption de la Nag Screen.

6) Code inyect

Para hacer que sume en vez de restar, cambiamos el "SUB DX, 5" de 4061A7 por un "ADD DX, 5".
Osea cambiar el byte en offset 61A9h a C2h.
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."


Mad Antrax

Completamente correcto, has resuelto todas las pruebas! :P
No hago hacks/cheats para juegos Online.
Tampoco ayudo a nadie a realizar hacks/cheats para juegos Online.

Karcrack

@MCKSys Argentina: ;-) ;-) Eres una inspiración :laugh: Con el asco que me da analizar ejecutables en VB6 y parece que no te haya costado nada :xD

Por cierto, las modificaciones en las estructuras de VB6 las haces manualmente o utilizas alguna herramienta?

MCKSys Argentina

Hace un tiempo atras empece un script para ollyscript, el cual reconoce las estructuras internas de VB 5/6.

La base salio de otro script que rondaba la web en esos tiempos mas este (para IDA): http://www.hex-rays.com/products/ida/support/freefiles/vb.idc

Aunque no esta completo, me permite encontrar las cosas rapido, como la GUITable, los ObjectInformation y demas.

Saludos!
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."