Bien. Cargamos
nuestro amadisimo W32Dasm y con él el programa a
estropear. Siguiendo el ritual le damos al StrRef para
buscar puntos de ataque. "Unregistered
version", "Your trial period is over",
etc... Encuentro el primer
punto de ataque:

Lo intentaré
primero con este mensajito que sale en la gloriosa NAG.
Clickeo 2 veces en él y automáticamente me lleva hasta
el código que le hace referencia. Y aqui le tenemos:

Observamos que
existen dos saltos por los cuales se llega a este puto
mensaje, por lo que nos iremos a GOTO del WD (W32Dasm) e
introduciremos el offset 40c8f1, le damos al ok y somos
transportados allá:

Mucho salto veo
ahi!. Estudiemos el código!!!!
Lo primero que se
desprende es que si estropeamos todos los saltos nos
damos de morros con el bonito mensaje de abajo:
"Thank you....". Bueno, intentemoslo, ok ?
Le damos a DEBUG y
cargamos el app. Antes de nada, una vez cargado la
victima le mete- mos un soberbio Breakpoint en la offset
00408CEF, para ello pulsamos F2, luego le dámos al F9
para que se lance el app. ¡Hey, esto vá bien....se
paró el programa ahí!. Ahora despa- cito y con buena
letra :).
Nos vamos a la
window de la izquierda, esa donde se ven los valores de
los registro, ok??? y vemos que EAX=FFFFFFFF, y el salto JL
0040CA0F nos dice
que si el valor de EAX es menor que 0 saltemos a
"jodida la hemos, compra mi moto". Asi que el
valor de EAX no nos interesa para ná, tenemos que
estropearlo. No!, no joderemos el salto, porque no nos
inte- resa ya que hay mas abajo cmprobaciones y nuevos
saltos. Bien, nos vamos a la pantallita de la derecha y
le damos a GOTO ADRESS, aqui no es necesario hacerlo
porque es la offset del BP, lo haremos para aprendernos
el método, y le introducimos 0040C8EF, ok y yastá.
Ahora estamos sobre la línea de código 85C0 TEST EAX,
EAX y como no queremos ese valor lo estropeamos con un
XOR EAX, EAX (31C0) que pone a 0 EAX. Nos vamos a PATCH y
entramos esta instrucción xor eax, eax, le damos al
enter y lo metemos en la parte de abajo, listo pa
sentencia!. Le damos a APPLY PATCH y salimos de ahí con
CLOSE. O- kiz!. Vamos con F7 paso a paso, y observamos
que EAX = 00000000 elsalto comprueba si ese valo es menor
que 0, como no es no salta, vamos bien. Ahora viene CAL
0040D71F, no nos metemos dentro y pulsamos F8, el valor
de EAX = FFFFFFFF y el siguiente paso CMP EAX, 00000100
tampoco se cumple porque EAX es menor que 100, segunda
condición evitada. Seguimos traceando hasta el final y
la 3º. condición evitada, por lo que nos metemos de
lleno en la rutina "Thank
you for your pursache...".
Le damos al F9 para correr el app y tenemos que esta
"FULLY REGISTERED", por lo tanto hemos ganado
la puta guerra!!!!. Realmente esperaba más tela pa
cargarme este programilla. :(
Y ya está todo
hecho Newbies ;-). AstalaVista
*±±========-*-*-*-* P E R S O N A L G R E E T Z *-*-*-*-========±±*
A todos los Crackers del pasado, del presente y del futuro.
|