[Tutorial]Crack Me 0.2 by Red Mx-Simple packer MEW 1.2

Iniciado por .:UND3R:., 1 Septiembre 2011, 09:54 AM

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

.:UND3R:.

Crack Me 0.2 by Red Mx
Autor: Red Mx
Nombre: Crack Me 0.2
Fecha: 26 de mayo de 2009
Tamaño: 8,44 KB
Compilador y/o Packer: MEW 1.2 / Visual Basic (código nativo)
Objetivos: Conseguir la clave correcta.
Dificultad: 1-2 (1-10).

Realizamos un análisis con RDG Packer Detector:


Notamos que está comprimido con MEW 1.2 intentemos descomprimirlo abramos el crackme con OllyDBG, Nos avisa que está comprimido:


Intentemos buscar el OEP con el método de memory breakpoint on execution, esto se puede hacer a través de de un pluguin o ollydbg parcheado 5:


Presionamos M y colocamos un Memory breakpoint on access en la sección CODE
*En realidad es un MBPX por el pluguin:


Le damos RUN, esperamos un poco y se detiene en 00401210:


removamos el análisis del código y nos quedará:


Dumpeamos con ollydump:


Vamos a reparar la IAT, Nos vamos search->all intermodular call's y buscamos una que apunte a la IAT, en este caso rtcMsgBox:


Le damos doble click y nos aparecerá lo siguiente:


ahora Follow in dump->Memory Address y buscamos el Inicio y el final en la IAT en este caso:
Inicio:00401000
Final:004010C0
Largo:C0

colocamos los datos en ImportREC:


No hay ninguna IAT redireccionada :


presionamos fix dump, seleccionamos el archivo dumpeado previamente por Ollydump, intentemos ver si se ha desempaquetado correctamente:



Funciona de maravilla, ahora intentemos colocar un serial:


Antes de presionar OK nos dirigimos a la sección code y colocamos un Memory Break point on execution (Con el pluguins), ahora le damos OK y se detendrá a continuación:

004025C0   .  816C24 04 3B0>SUB DWORD PTR SS:[ESP+4],3B
004025C8   .  E9 A3050000   JMP dmp_.00402B70

Si seguimos traceando llegaremos hasta el siguiente OP code:


en el cual deberemos cambiar el FLAG S para que salte, debido a que notoriamente se puede visualizar una string que no es conveniente pushear

Si seguimos traceando una vez modificado el flag s llegaremos a un call encargado de devolver la fecha:

en mi caso 01/09/2011, luego de esto elimina los /:


si seguimos traceando pasando por la concatenación de dos series de string muy llamativas y un conjunto de otras operaciones llegaremos a la siguiente call:


si entramos con F7 a la call llegaremos a la siguiente call encargado de revertir la string:


Luego de seguir traceando llegaremos a una comparación a través de __vbaVarTstEq:


Entremos a la call con F7 llegando hasta el push 0, una vez detenidos ahí hacemos click derecho en EAX y presionamos follow in stack y veremos lo siguiente:


esto es comparado con edx (follow in stack) en mi caso UND3R es decir compara:
5642345645648784564156116456456110290104164214614321777407216721791241671010

con

UND3R

__vbaVarTstEq devuelve en EAX un número distinto de 0 si las dos string comparadas son iguales, notaremos que el resultado se dirige a ESI y luego se realiza un TEST SI,SI luego la comparación final JE SHORT en la cual si __vbaVarTstEq devuelve 0 en EAX JE saltará


Probemos con la string comparada:



pero, ¿para qué el crackme obtuvo la fecha?

Recordamos que la fecha en mi caso era: 01/09/2011, luego se eliminaron los /
01092011 luego se concatenó con las string llamativas y luego se revirtió la string:

5642345645648784564156116456456110290104164214614321777407216721791241671010

por lo cual lo que está con rojo debería ser la variable del serial del crackme

Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)

Tinkipinki

Hola .:UND3R:.

Comentarte que he visto el post y juro que no he mirado nada para asi poder probar el crackme y6 cuando me vaya quedando atascado irlo leyendo poco a poco para intentar comprender todo lo que explicas.

Felicitaciones por el tutorial.. ;-)

Saludos

Psdta:
Para a quien le interese, al no tener el crackme lo he buscado y lo he encontrado aqui:
http://foro.elhacker.net/ingenieria_inversa/crack_me_02_by_red_mx-t256104.0.html

.:UND3R:.

Cita de: Tinkipinki en  1 Septiembre 2011, 11:19 AM
Hola .:UND3R:.

Comentarte que he visto el post y juro que no he mirado nada para asi poder probar el crackme y6 cuando me vaya quedando atascado irlo leyendo poco a poco para intentar comprender todo lo que explicas.

Felicitaciones por el tutorial.. ;-)

Saludos

Psdta:
Para a quien le interese, al no tener el crackme lo he buscado y lo he encontrado aqui:
http://foro.elhacker.net/ingenieria_inversa/crack_me_02_by_red_mx-t256104.0.html

Muchas gracias, que bueno que te haya gustado

Los crackmes están todos disponibles para descargar desde la web de karmany:

CitarSi el enlace a cualquier crackme falla, pueden utilizar la siguiente página para descargarlos:
http://karmany.fortunecity.com/

Saludos y suerte con el crackme

Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)