Karpoff Spanish Tutor

Programa:

Irfanview 3.30


 

PROTECCION: Name / Serial
Objetivo: Encontrar el registro y arreglarlo
Descripcion: Visor de muchos formatos gráficos
Dificultad: Media
DOWNLOAD: http://stud1.tuwien.ac.at/~e9227474/iview330.zip
Herramientas: File inspector, TRW2000, W32dasm, Procdump, Exescope, Aspack
CRACKER: perico   FECHA: 22/11/2000

 

 introduccion

empezaré diciendo que este programa no necesita ser crackeado porque no tiene ninguna limitación lo registres o no. no obstante, si sigues queriendo registrarlo bastara con que leas la parte correspondiente a encontrar un codigo valido.

por lo tanto solo es necesario que sigas leyendo si quieres aprender algo sobre los programas que uso para crackear.

las herramientas utilizadas las puedes encontrar en: http://web_karpoff.exit.de  y el programa aspack en  http://www.crackstore.com/

 

 al atake

1º.- desensamblado manual

empiezo pasando el programa por el file inspector 3.0 para saber si el programa esta comprimido, y me dice que esta comprimido con aspack v1.08.04. vamos a descomprimitlo manualmente.

para ello abrimos el trw2000 (o softice si lo prefieres)

browse: eliges el fichero -> load -> aterrizamos aquí

 

50c001   pushad

50c002   call 50c579 -> en este call debemos entrar con f8, porque

                           si no el programa se nos escapa.

entramos y seguimos con f10.

 

50c007   jmp 50c03c

 

50c03c   mov ebx, 44393e

........

50c050   mov [ebp + 444798],ebx -> aquí ebx llega con el valor

                                       40000

50c056   jnz 50c4dd (jump) -> aquí pondremos un breakpoint 50c4dd

                                 para evitar el bucle.

bpx 50c4dd y f5

 

50c4dd mov eax,[ebp + 443a09] -> aterrizamos aquí

.......

50c4f3  popad -> instrucción complementaria del pushad inicial

............

50c4fe   push 4a1cb3 -> oep necesario para calcular el nuevo entry point

50c503   ret -> nos paramos aquí sin ejecutarlo.

introducimos en la línea de comandos:

 

a eip (eip=50c503)

jmp 50c503 <intro>

<intro>

ahora pulsamos f5 y dejamos al programa metido en un bucle infinito.

arrancamos el procdump y localizamos en la ventana de tasks a nuestro irfanview. lo seleccionamos con el botón derecho del ratón, elegimos dump (full). guardamos el ejecutable con otro nombre (view.exe).

ahora tenemos que hacer unos retoques para que el archivo descomprimido (view.exe), recien creado, funcione:

1º) le damos a pe editor y elegimos view.exe. cambiamos el entry point. su nuevo valor es el resultado 4a1cb3 (el valor oep encontrado antes) menos 40000 (image base) = a1cb3 

2º) le damos a 'sections' y editamos .text (boton derecho del raton). ahora cambiamos 'c0000040' por 'e0000020'. este cambio es para poder ver las 'strnref' en el w32dasm. es una prroteccion anti-dasm.

3º) ahora vamos a eliminar el programa irfanview que dejamos en la memoria. para ello en la ventana de task seleccionamos nuestro irfanview con el boton derecho del raton y elegimos 'kill task'.

4º) cerramos el procdump.

si ahora ejecutamos el view.exe vemos que funnciona perfectamente. la unica diferencia es el tamaño: original -> 388 kb, descomprimido 988kb.

2º.- encontrar un código válido

ejecutamos el programa view.exe o i_view.exe (da lo mismo).

'clic' en help -> registration 

introducimos cualquier dato y nos sale una ventana diciendo:

ahora abrimos el w32dasm (cargamos el view.exe) y buscamos en las 'strnref' esta frase, hacemos doble-clic sobre ella y aparecemos en:

vemos en :0044db9a un salto que de producirse saltaria a registratio correct!. podriamos cambiar este salto con lo que el programa aceptaria cualquier dato que introdujeramos.

esta seria una manera, otra que es la que voy a utilizar es encontrar el codigo correcto correspondiente a nuestro nombre. para ello vamos a volver al trw2000, cargamos el programa descomprimido y ponemos un breakpoint en el salto. es decir, bpx 44db9a y f5 para volver al view.exe, ahora le damos a help y registration e introducimos nuestros datos. 

al darle a 'ok' el programa rompera en el salto. si ahora ponemos d edx vemos en la ventana de datos el codigo correspondiente al nombre que hemos introducido.

si introducimos nuestro nombre (perico) y el codigo obtenido (303770008) vemos que el registro es correcto.

una vez registrado, en el menu help sigue apareciendo la clave registration. vamos a eliminarla. 

3º.- últimos retoques

para ello recurrimos al programa exescope.

una vez abierto el programa view.exe, nos aparece esto:

abrimos, como vemos, resource-menu-irfanview, y en la parte derecha vemos una serie de claves, buscamos help y ahi esta nuestra clave registration, pulsamos con el boton derecho del raton y elegimos 'delete'. tambien eliminamos uno de los '0' que corresponde a la linea.

salimos del exescope y nos sale esta ventana

a la que respondemos que 'ok', para guardar los cambios.

4º.- final

con esto tenemos el programa registrado y no nos aparecen recuerdos molestos.

lo único que nos queda por hacer es cambiar el original i_view.exe por el view.exe.

tambien podemos volver a comprimirlo con cualquier compresor. yo usé el aspack. 

es muy sencillo. lo abrimo, elegimos el programa a comprimir y ya esta.

 

 

 

 

karpoff spanish tutor: pagina dedicada a la divulgacion de informacion en castellano, sobre ingenieria inversa y programacion. email "colabora con tus proyectos"
www.000webhost.com