[Tutorial]crackeando DeepView Publisher 3.0

Iniciado por .:UND3R:., 19 Agosto 2011, 16:40 PM

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

.:UND3R:.

crackeando DeepView Publisher 3.0

Tamaño: 2.97 MB
Version: 3.0
Página de descarga: www.deepvision.se/download.htm
Dificultad: 2 (1-10)

-Abrimos el programa sin debuggear:



Notamos que lo primero que nos muestra un mensaje de alerta diciendo que el archivo de licencia no ha sido encontrado



Luego nos aparece el programa en si, por lo que deducimos que la comprobación se genera antes de cargar la aplicación


-Cargamos el programa desde ollydbg:



luego buscamos referencias de texto:


Nos aparecerá lo siguiente:


Si subimos hasta el inicio:


Notaremos string importantes como el que aparece al iniciar el programa "Lincense file...
hacemos doble click en la string (401C5A)

En el disambler nos aparecerá lo siguiente:


Si seguimos más arriba notaremos el salto que envía la alerta


Pongamos un BP en el salto


Presionamos F9 (Run) y se detendrá en el BP:


Por lo que para evitar que no salte, cambiamos el OP code JNZ por JMP


Si seguimos traceando (F7), notaremos otro salto:


Si seguimos el salto (click derecho-Follow o Enter),Notaremos que empieza a pushear la string DVPubNoC 2.x en donde NoC significa:
Not Comercial


Por lo que ese salto no nos sirve, nopiemoslo (llenar con NOP)


Luego de Nopear si seguimos traceando llegaremos a otro salto:


Si seguimos el salto (Click derecho-Follow o Enter)
Notaremos que se llama a la string "License: Pro"
Por lo que nos hace saber que este salto nos lleva a la validación de la licencia:


Remplacemos el salto JG SHORT por JMP SHORT:



Si seguimos traceando llegaremos hasta 00401D09:


Notaremos que más abajo se pushea la string Expires, lo que quiere decir que la Licencia pro, Tiene fecha de caducación por lo que se deberá tener cuidado al momento en que sea llamada, ya que lo más probable es que esté la fecha por defecto (fecha más mínima posible), si miramos el valor de EDX notaremos string en formato de fecha:



Por lo que haremos un injerto encargado de modificar la fecha, vallamos al último OP Code del desemblador, y busquemos un espacio en mi caso probaré el address 56AF25:



Una vez elegida la ubicación en donde se realizará el injerto, comprobaremos si esta ubicación existe en el ejecutable o es creada en tiempo de ejecución
(API VirtualAlloc)

Para verificarlo nos vamos a:


Notaremos que existe, por lo que se podrá injertar sin problema alguno:



Estando en la ubicación:
00401D09 realizaremos un salto a nuestro espacio para injertar (56AF25)



*Una vez creado el salto al injerto notaremos que se pierden OP codes por lo que tendremos que colocarlos en nuestro injerto para evitar que el programa genere errores

Llegamos a nuestro injerto:



Notaremos que en la pila también está el valor que tiene EDX


El injerto completo quedará así:


Explicación del injerto:

CitarPUSHAD
Guardará los valores del registro para evitar errores en el programa

MOV EBX,EDX
Mueve EDX (Puntero a la fecha) a EBX

MOV EDX,DWORD PTR DS:[EDX]
Mueve la fecha a EDX

INC DL
Incrementa en 1 el último valor de EDX (31) (El registro guarda los valores al revés)

MOV DWORD PTR DS:[EBX],EDX
mueve la fecha modificada dentro de EBX

POPAD
Restaura los valores anteriores de registro

MOV ESI,EAX
Valores que borró el jmp al injerto

LEA EDX,DWORD PTR SS,[ESP+5C]
Valores que borró el jmp al injerto

JMP 00401D0F

Retoma al programa Normalmente

Una vez realizada todas estas modificaciones guardamos los cambios, si iniciamos DeepView Modificado nos aparecerá lo siguiente:



Notaremos que poseemos la Licencia PRO y nuestra fecha de espiración es la mismo que modificamos nostros

ADJUNTO:
DeepView Publisher 3.0 Crackeado:
http://www.mediafire.com/?934wy3b4pea6lq6

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

Heiko112

Hello from Germany

maybe someone could help me perform the tutorial.

Is there someone that could translate this in english?

i try it to translate with "Bing translation" and "google translation" but the result are horrible.

many thanks.

best regards
Heiko

Heiko112

Me again
i think im on the right way till
Remplacemos el salto JG SHORT por JMP SHORT:
but than i need help !

best regard
Heiko

MCKSys Argentina

Hi Heiko112!

I don't have much spare time, but I'll try to help you.

As soon as I get home, I will try to make a translation of this tut.

Greetings!
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."


apuromafo CLS

english mode by Apuromafo with little time free:
*********************

creating a crack for :"DeepView Publisher 3.0"

size: 2.97 MB
Version: 3.0
web fo download: www.deepvision.se/download.htm
how strong is/difficult: 2 (1-10)

Introduction and Start:

-will open  the program without the debugger:


We can se there the first there show is a msg of alert, saying there the file of licence there was not founded


In some time more, we can see the program as in fact, for that can think and deduce there the checking is generated before is charged the app .



will load this in ollydbg:



we search reference string of text :


well see this:


if we have a little scroll to up  (up to home/start):


we can see there are string important as we can see as start: "license file...", we put 2 click in the string (401C5A)

in the debugger in the dissasembler we expose this :

if follow more up, we land some jump there send the alert


we put a bP(breackpoint ,int3 or cc) in that jump

we will press F9 (run) and will stop in the bp:

now can change the opcode JNZ(jump not z flag/if not are equal) to JMP (alwais jump )


if we trace a little more(F7), we can see other jump:

if follow the jump(click follow or enter), we can see there start to push the sting
  DVPubNoC 2.x  and that significate "NoC ":
Not Comercial

that jump is not good, we will nop that (fill with nop)


post of nop, we can trace to found other jump:

if we follow that (click follow or enter)  we can see :

is call to string  "License: Pro"
this is the jump there will land to validation of license:


Remplazing now the jump "jg short offset" to  jmp short offset "

note:  offset is the direction

if we tracfe a little more we land in  00401D09:


****fin de tiempo libre***




esta interesante el tutorial, insisto es mas facil que lo coloques en un word ;) asi se puede compartir o leer con tranqulidad...

Heiko112

@ apu

thanks a lot.

So far so good.

can someone help me at the next step?
Notaremos que más abajo se pushea la string Expires, lo que quiere decir que la Licencia pro, Tiene fecha de caducación por lo que se deberá tener cuidado al momento en que sea llamada, ya que lo más probable es que esté la fecha por defecto (fecha más mínima posible), si miramos el valor de EDX notaremos string en formato de fecha:



i dont know what i have to do. can´t find a link to get from the file" MOV ESI,EAX

to EDX where i can change the DATE.


best regard
Heiko


MCKSys Argentina

Cita de: Heiko112 en 20 Enero 2013, 11:59 AM
Notaremos que más abajo se pushea la string Expires, lo que quiere decir que la Licencia pro, Tiene fecha de caducación por lo que se deberá tener cuidado al momento en que sea llamada, ya que lo más probable es que esté la fecha por defecto (fecha más mínima posible), si miramos el valor de EDX notaremos string en formato de fecha:

We'll notice that lower in the code, the string "Expires" is pushed (on the stack), wich means that PRO licenses has expire date. So you'll have to be careful when this this gets called, 'cause it's most probably that the default date will be used (the lower possible date). If we look the value of EDX, we'll notice a string with date format:
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."


Heiko112

thanks for that

but i hang off at the point to find the point EDX where i can change the date. :rolleyes:


the Software show Licencse Pro expires 1970-01-01
i cant find a date in olly to change this.