Resolviendo el CrackMev1.0 de CrueHead

Bueno, ahora les explicare como resolver el CrackMe hecho por CrueHead/MiB

Mirror 1

Descargar CrackMe

Mirror 2

Descargar CrackMe

Mirror 3

Descargar CrackMe

Pero antes una pequeña introduccon.

- ¿Que es crackear?

Es la ingenieria Reversible, y lo que hace es revertir las protecciones de ciertos programas
que para poder usarlos correctamente debes registrarlo o comprarlo y en eso no estoy de
acuerdo, ya que la mayor parte de las personas no posee de los recursos necesarios para
poder efectuar la compra, algunos podemos pero no queremos gastar en algo asi­ xD, ya que
el software es algo abstracto y no le veo la finalidad de gastar en eso, bueno sigamos.
Algo importante, las protecciones del software cambian dia tras dia algunos usan tecnicas
diferentes que otros, asi que lo primero que tienes que hacer es conocer el software que vas
a crackear, ver las funciones que tiene, que metodo utilizan para efectuar el registro, etc.

Empecemosemos.

Abrimos el CrackMe que viene adjunto su nombre es crackme.exe, vemos que es solo un
ejecutable con un menu en la parte de arriba, en el menu de ayuda viene un boton que dice
Register damos clic ahi y vemos que aparecen 2 cajas de texto una para el nombre y otra
para el serial, bueno pongan lo que se les ocurra y veran que aparece un mensaje diciendo
Esta frase "No Luck There, Mate" esa frase es importante, le llamaremos chico malo
porque es lo que aparece cuando metemos la clave equivocada, y el chico bueno seria el
mensaje de "Gracias por registrar el producto" o algo parecido, en este caso seria la frase
"Great work, mate! Now try the next CrackMe", ahora que ya sabemos cual es el chico
malo y el chico bueno, abrimos un desensamblador, yo normalmente uso el ollydbg pero
en esta ocasion usaremos el W32dasm asi que lo descargamos abajo.

Mirror1

Descargar W32dasm

Mirror2

Descargar W32dasm

Una ves abierto el W32dasm nos dirigimos al menu de disassembler y damos click en Open
File to disassembler. Seleccionamos el crackme.exe y nos aparecera un monton de codigo,
registros, instrucciones de ASM, etc. Para ubicarnos en el principio del codigo
presionamos F10 esto nos llevara al punto de entrada del programa y vemos algo parecido a

esto:

Ahi dibuje tres circulos, les explicare:

- Circulo Azul: Ahi esta el codigo del offset en valor hexadecimal. (Direccion)
- Circulo Rojo: El codigo del ejecutable en valor hexadecimal.
- Circulo Amarillo: Es la instruccion que el programa tiene que seguir, esta en assembler

Bueno ahora que ya tienen una idea de lo que estan viendo sigamos.
¿Recuerdan al chico malo y chico bueno? Seguramente se preguntaran como le podemos
hacer para encontrarlo entre tanto codigo, bueno esto es facil ya que el W32dasm tiene una
funcion que nos muestra todas las strings (Cadenas de texto), solo tienen que ir al menu de
refs y dan click en string data referentes y les aparecera una ventanita con la mayoria de las
strings ahi veran al chico bueno y al malo, si dan doble click en el chico malo los llevara a
la parte en que es llamado ese mensaje y les aparecera algo asi:



Ahora fijense en la parte que dice: * Referenced by a CALL at Address: |: 00401245, en
español seria Referencia por una llamada en la direccion 00401245, mmm ¿eso que nos
dice? Pues muy facil que este mensaje se produjo por algo que paso en la direccion
00401245, bueno dirijamonos a esa direccion Shift+F12, escribimos ese numero para ir a la
direccion y damos click en OK, nos aparecera algo como esto:



Fijamonos en la direccion 401241, ahi viene esto acmp eax, ebx se preguntaran que es eso,
bueno eso es una instruccion de ASM que compara lo que hay en eax con lo que hay en ebx
y en la siguiente direccion esta esto "je 40124" Significa que si lo que comparo en la
instruccion pasada es igual salta a la direccion 40124c, y ahi esta el chico bueno , pero si no
son iguales pasa a la direccion de abajo la 401245, hace una llamada a la direccion 401362,
y esa es en la que estabamos, la del chico malo, ahora que ya entendieron esto tenemos que
modificar la esa instruccion que esta en la direccion 401243 el je por un jmp ya que el jmp
siempre saltara a la direccion que se le indique no como el je que verifica si en la direccion
pasada los 2 valores eran iguales, se preguntan , ¿Como hacemos esto?, pues necesitamos
un editor hexadecimal, en el CrackersKit vienen varios elijan el que mas les guste, antes de
abrir el editor hexadecimal nos fijamos el valor que tiene je en el codigo en este caso seria
el 74, pero como le hacemos si encontraremos muchos 74!!, pues copian desde el 74 unos
12 caracteres alfanumericos xD y quedara algo asi:

7407E8180100 Bueno, cierren el W32dasm y abren el exe con un editor hexadecimal buscan los caracteres
alfanumericos xD, que sacamos hace rato y una ves los encuentren fijense en el 74, bueno
ese numero lo van a sustituir por el correspondiente hexadecimal de jmp que es EB, bueno
lo escriben y lo guardan, ahora abran el CrackMe crackeado xD, e intenten meter algo como un
nombre o serial. Ya vimos al chico bueno y hemos registrado nuestro programa. ;)

Great work mate!, now try de next crackme



Saludos ;)

Union Hack Team
2006-2007


eXTReMe Tracker
Paguina principal