Karpoff Spanish Tutor

Programa:

Info Keep 1.30


 

PROTECCION: Name / Serial, Limitacion de Tiempo
Objetivo: Simular estar registrados
Descripcion: para tener organizados los passwords
Dificultad: media
DOWNLOAD: http://www.infokeep.net/download/infokeep.exe
Herramientas: W32dasm, Editor Hexadecimal, File inspector, procdump y parcheador
CRACKER: PERICO   FECHA: 09/11/2000

 

 introduccion

es un programa que vemos que esta comprimido al pasarlo por el 'file inspector'.

 

 al atake

empezaremos descomprimiendolo con el procdump. lanzamos el procdump, 'clickeamos' en unpack y elegimos el compresor neolite2 ... 

una vez descomprimido y guardado el archivo descomprimido (a partir de ahora infodes) vemos que ocupa bastane mas espacio que el archivo original, pero sigue funcionando igual.

el siguiente paso es proceder a desensamblarlo para poder ver las 'strref'. pero al intentarlo no hay ' referencias' y el desensamblado ha sido muy rapido, por lo que debe de tener alguna proteccion anti-dasm. 

para quitarla volvemos a acudir al procdump. 'clickeamos' en pe editor y elegimos el fichero infodes y vemos:

'click' en sections y vemos:

le damos con el boton derecho del raton a '.text' y nos saldra un menu en el que elegimos 'edit section', ahora cambiamos 'c0000080' por 'e0000020'. aceptamos todo dando en 'ok' y salimos del procdump que ya hemos terminado con el.

ahora desensamblamos infodes y vemos que tarda bastante mas que antes y al terminar vemos que hay 'strnref'.

en las 'strnref' buscamos 'unregistered user', hacemos 'doble-clic' sobre el y aparecemos aqui:

un poco mas arriba, en la direccion '4ec600' vemos un salto que no se produce mientra no estamos registrados. vamos a forzarlo convirtiendolo en salto incondicional:

7444 je 004e646  por  eb44 jmp 004e646

este cambio lo hacemos con el editor hexadecimal. damos a 'ctrl-g' y escribimos el offset obtenido con el dasm ('ec600' en mi caso) y realizamos el cambio en el archivo 'infodes'.

si ahora lo ejecutamos parece que no estamos registrados, pero en help-registration ves que estas registrado con el nombre de 'unregistered user' y ya no existe limite de tiempo ni nada y solo hemos cambiado ¡¡¡un byte!!!. 

por último vamos a parchear el programa en memoria. para ello yo utilicé el programa risc patcher 1.4. su funcionamiento es muy sencillo:

1º) se crea, con un editor de textos, un archivo que contenga estas lineas y se graba con la extension rpp (info.rpp, por ejemplo).

;info keep 1.30

;t=1000: ;try 1000 times to patch the memory

f=info keep.exe: ;program to load/patch

p=4ec600/74/eb: ;change a je xx to a jmp xx

$ ;end of script

2º) se ejecuta el programa rpp.exe y se elige el prorama anterior (info.rpp). se creará un archivo loader.exe que cada vez que lo ejecutemos parcheara info keep.exe y hara que funcione como registrado.

 

esto es todo.

saludos a todos       pericog@hotmail.com

 

 

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