## Tutoríal de Crackeo Para Newbies desde Cero 30/11/99

Por Karpoff ## KARPOFF-NEW 98/99 ##

PROYECTO 16 ##

- MemTurbo V1.5

INTRODUCCION

Hola peña vamos a por el proyecto 16, si habeis seguido todos desde el nº1 ya no sois newbies, sois la nueva generacion de Crackers jejeje :-)

Bueno otro mas, en este manual vamos a cambiar la forma tipica de crackeo que se muestra generalmente en los manuales. osea, no vamos a buscar el mensaje de expiracion, o el de serial number incorrect etc. y a partir de los mensajes buscar un salto y modificarlo. Hoy utilizaremos una herramienta que ya conocemos que es genial y que parece que se usa muy poco ya que no se ve en ningun manual, se trata de APIS32 V2.4, la ultima vez que utilizamos esta herramienta ( en mis manuales ) fue para que nos mostrase la funcion que debiamos utilizar como break point o punto de ruptura en el SofIce, hoy esta herramienta nos evitara un costoso trabajo, ya que vamos a crackear este programa mediante las Apis de Windows es decir evitaremos que el programa lea los datos que guarda en el registro de Windows y que le informan del tiempo que queda de evaluacion. Las APIS mas utilizadas para este tipo de procedimientos son las siguientes.

RegCloseKey /a /exa   - Cierra una  clave en el registro de windows
RegCreateKey /A /Exa  - Crea una  clave en el registro de Windows
RegDeleteKey /A /Exa  - Borra una clave en el registro de Windows
RegOpenKey /A /Exa    - Abre una  clave en el registro de Windows
RegQueryValueA /Exa   - Lee una  clave en el registro de Windows

Evidentemente hay algunas mas.

 

Primero quiero aclarar que cuando empece a crackear este programa segui el tipico procedimiento de evitar que el programa caducase y evitar el nag mediante los mensajes de expired program etc. Y fue bastante engorroso, Pero cuando fui a probar si funcionaba bien el crack, me di cuenta de casualidad que este crack solo funcionaba durante su periodo de 30 dias pasados los 30 dias el programa aparentemente seguia funcionando no daba errores todo normal, pero casualmente  no hacia la unica funcion que tenia que hacer que es la de recuperar memoria en Windows jejeje, me quede tan sorprendido que probe con la version anterior la v1.0b y lo mismo, y se me ocurrio probar los cracks que tenemos en astalavista y curiosamente no valen ninguno, parece que se ha pasado por alto que si el programa lee una determinada clave del reg de windows, por mucho que evitemos los mensajes de expiracion el programa no funciona, el programador a sido muy cuco, ya que cuando existe una proteccion de este tipo generalmente si lees las ayudas del programa, el propio programador te informa de que si utilizas el programa cuando ha pasado la evaluacion este funcionara mal, como es el caso del English-Spanish Interpreter.

Y a vosotros que coño os importa eso?? Bueno lo que intento decir es lo que os he dicho, que siempre nos guiamos mediante los mensajes de error y a partir de hay atacamos, pero yo siempre os digo que probeis cualquier cosa que se os ocurra y comprobar siempre que el crack funcione a la perfeccion, es bueno tener esa costunbre obtendreis muy buenos resultados.

PRIMERA PARTE

La victima es MemTurbo V1.5 la ultima y recien salida version de esta gran utilidad, que desfragmenta la memoria Ram liberandola, ya que Windows nos agota la memoria enseguida utiliza toda la que tenemos da igual 64 MB que 128 si poneis un medidor vereis que siempre esta bajo minimos, esta utilidad nos soluciona el problemilla. El programa lo podeis coger de:

http://www.memturbo.com/downloads/memturbo.exe

 

HERRAMIENTAS

FileMon V4x ( he no tiene nada que ver con Mortadelo, que quede claro)

TechFacts 98 o 95

APIS32 V2.4

W32Dasm 8.93

Editor Hex (el que mas os guste)

COMPORTAMIENTO DEL PROGRAMA

Tenemos 30 dias de evaluacion, pasados los 30 dias el programa deja de funcionar mostrandonos una pantalla con un texto para la ocasión, no tenemos opcion de registrar el programa mediante los tipicos procedimientos.

ATAKE

Lo primero averiguar como y por que sabe el programa que han pasado 30 dias, una vez averiguado evitar que lea los datos que le indican la evaluacion o si lee los datos modificaremos el codigo para que se comporte siempre como si estariamos evaluando el programa. Este atake es muy util en programas que se ejecutan sin ningun tipo de limitacion, como nag, funciones desvilitadas etc. durante la evaluacion, es logico pensar que si durante 30 dias el programa funciono perfectamente hay algo que le esta indicando los dias que van pasando, puede ser un archivo .ini, o cualquier otro tipo de archivos o lo mas logico una claves o keys en el reg de Windows.

SEGUNDA PARTE

A TRABAJAR

Como siempre lo primero prepararnos todo para trabajar comodamente, hacemos una copia del ejecutable MemTurbo.exe y le ponemos el nombre Turbo.exe y dejamos los dos ejecutables en el mismo directorio.

Como podemos averiguar que es lo que le indica a MemTurbo.exe los dias de evaluacion que nos quedan?? Lo primero tenemos que averiguar si MemTurbo.exe lee el tiempo de evaluacion de un archivo o de el registro de Windows, descartemos posibilidades vamos a ejecutar el FileMon, os recomiendo que cerreis todos los programas que teneis en memoria, como puede ser un antivirus, o cualquier otro asi el filemon nos mostrara informacion solo sobre MemTurbo.exe pos eso, ejecutamos el Filemon y seguidamente MemTurbo.exe justo cuando se termine de ejecutar MemTurbo.exe vamos al filemon y pulsamos capture (el boton de la lupa), y analizamos el mogollon de eventos, pero todo son lecturas de ficheros de sistema, no hay nada que nos indique que tenemos un archivo que le informa del tiempo de evaluacion. ( este proceso podia saltarmelo, pero en los manuales siempre indicamos el camino final nunca se dice por todo lo que se paso y todo lo que se probo hasta llegar a la solucion, haciendo que parezca que se acierta a la primera, y no es asi.)

Dicho lo dicho traceemos el registro de Windows, para ello tenemos el RegMon pero no lo vamos a utilizar por que es tanta la informacion que nos da que complica muchisimo el localizar lo que queremos como sustituto tenemos el fabuloso TechFacts 95/98, ciertamente esta utilidad tambien nos sustituye al filemon, nos va ha mostrar solo los cambios que realice MemTurbo.exe tanto en el disco duro, archivos.ini, registro de Windows etc.( si no teneis esta herramienta la podeis bajar de mi web y teneis un manual sobre como crackearla)

Para realizar este proceso ejecutamos TechFacts vamos a Tools pulsamos Watach System, activamos la casilla Run This Program y seleccionamos MemTurbo.exe, como muestra la imagen.

Bien una vez que tenemos seleccionado Menturbo.exe pulsamos el boton GO que no se muestra en la imagen pero esta abajo, y TechFacts empezara a comprobar como esta nuestro sistema, hara una imagen y cuando termine empezara la ejecucion de MemTurbo.exe, hará otra comprobacion para ver los cambios y nos los mostrara. En mi caso esto fue lo que me mostro.

 

No changes made to INI file: C:\WINDOWS\WIN.INI

No changes made to INI file: C:\WINDOWS\SYSTEM.INI

Registry key values changed: (4)

HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\DataViewStream-MT15

Value "Settings-MT15": from "A0,E4,15,90,DD,6C,C0,01" to "80,FF,EB,DC,DD,6C,C0,01"

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\DataViewStream-MT15

Value "Settings-MT15": from "A0,E4,15,90,DD,6C,C0,01" to "80,FF,EB,DC,DD,6C,C0,01"

Esta clarisima la importancia que tienen que tener estas claves no os parece ?, pensemos como podemos comprobar que son estas las claves que verifican la evaluacion, lo que se me ocurre es adelantar la fecha para caducar el programa y comprobarlo , es muy importante que salvemos esas claves del registro antes de adelantar la fecha, y creo que no hara falta que diga que no toquiteeis nada en el reg de windows solo lo que yo os diga, por que el resultado puede ser caotico.

Bueno ejecutamos RegEdit si alguien no sabe que es, Regedit es el editor del registro de Windows por lo general no tenemos ningun icono para poder acceder, pero podemos ejecutarlo desde el directorio de Windows donde vereis un archivo con un iconito azul llamado Regedit.exe, o desde el menu de inicio de windows pulsamos ejecutar e insertamos la palabra regedit.exe pulsamos Return y se habre el editor, Buscamos las cadenas y las exportamos completas, para exportarlas seleccionais la carpeta que contiene la clave y pulsais en el menu, en registro, exportar archivo de registro, y guardais cada exportacion con el nombre que mas os guste, hacemos lo mismo con las 2 claves. (esto que se muestra abajo son las carpetas del registro donde se encuentran las claves a exportar, teneis que exportar las carpetas completas,(seleccionando lo que estan en rojo y exportais) y dentro de ellas iran los valores que tienen.)

HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\DataViewStream-MT15

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\DataViewStream-MT15

  

Una vez exportadas la 2 claves adelantamos la fecha de Windows 2 meses, aseguraros de no tener ningun programa abierto que pueda sufrir algun tipo de modificacion al adelantar la fecha, dicho esto y con la fecha adelantada ejecutamos MemTurbo.exe y... claro toma!! el pantallon que nos dice que se paso el tiempo de evaluacion, como veis no hay opcion de que siga funcionando, a no ser que nos registremos J , osea que cerramos la ventana y ya no hay manera de que funcione MemTurbo. Bien ahora restauramos la fecha de Windows ejecutamos nuevamente MemTurbo.exe y sigue sin funcionar jejeje que putada no? Hagamos lo siguiente, de momento no vamos a restaurar las claves que hemos salvado, primero recomiendo que eliminemos las claves del registro de Windows, asi que las localizamos y las eliminamos completas, osea lo que marco en rojo tambien que son las carpetas que contienen las claves.

HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\DataViewStream-MT15

Value "Settings-MT15": from "A0,E4,15,90,DD,6C,C0,01" to "80,FF,EB,DC,DD,6C,C0,01"

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\DataViewStream-MT15

Value "Settings-MT15": from "A0,E4,15,90,DD,6C,C0,01" to "80,FF,EB,DC,DD,6C,C0,01"

Y ejecutamos nuevamente MemTurbo.exe y vemos que funciona perfectamente si traceamos con TechFacts veremos que se han creado unas claves nuevas por lo tanto no hace falta restaurar las anteriores, (si a alguien no le funcionase que restaure las claves que tenemos exportadas pero estoy seguro de que no tendreis problemas ).

Bueno ya hemos averiguado que estas claves son las que le informan a MemTurbo de la evaluacion, si probais a tracear dos o tres ejecuciones seguidas vereis que siempre las modifica, que podemos hacer ahora??

Pos muy sencillo buscar en MemTurbo.exe la Api encargada de hacer esta comprobacion, yo pienso que la comprobacion se hara mas o menos asi. Mediante RegOpenKey /A /exa Habrira las claves con RegQueryValue /A /exa comprueba el valor de la clave y se calculan los dias de evaluacion y con RegCloseKey /a /exa cierra la la parte encargada de esta comprobacion, si evitamos o intentamos modificar la funcion que hace RegOpenKey /A /exa podemos evitar que expire el programa, pero como localizamos la api exacta que realiza este trabajo, ya que en un programa a parte de estas claves seguro que se comprueban muchisimas otras, podiamos utilizar el SoftIce y despues de algunas traceadas localizariamos sin duda la que nos interesa, pero nos vamos a ahorrar mucho trabajo si utilizamos APIS32 V2.4 que insisto en que es una herramienta mucho mas util de lo que os pensais. Ale Pues manos a la obra

Ejecutamos Apis32 y veremos esta imagen.

mt2.jpg (56698 bytes)

Expliquemos algo sobre esta herramienta. Es imprescindible que tengais bien configurada APIS32, por lo menos que se encuentren la lista de APIs que utiliza el programa en cuestion, para incluir APIs en la lista tenemos la Opcion add que vemos en la imagen, si pulsais sobre ese boton os mostrara una lista con los archivos habituales que utiliza Windows y al seleccionar uno de los archivos os mostrara toda la lista de Apis que pueden ser importadas de cada uno de los archivos, o tambien una vez que hemos seleccionado el programa que vamos a tracear podemos pulsar sobre imports y nos mostrara todas las funciones(APIs) que utiliza ese programa en este caso el MemTurbo, y a partir de hay podemos introducir las que queramos, para introducirlas en Apis32 podeis seleccionarlas 1 a 1 solo las que os interese o todas de golpe con la opcion add all, no recomiendo introducir todas ya que el informe que nos muestra cuando utilicemos Apis32 puede ser demasiado lioso, en este caso con que esten las Apis que manejan el registro de Windows es suficiente.

Solo nos queda pulsar sobre Run y ver que ocurre, osea que pulsamos y MemTurbo empieza a ejecutarse vemos como se va creando un listado de informacion en la ventana de Apis32, como es de suponer una vez que MemTurbo ya se ha ejecutado este habra realizado todas las comprobaciones en el registro de Windows no?, bueno pues tendreis en pantalla una ventana como esta, que variara su contenido dependiendo de las Apis con que tengais configurado APIS32.

En este momento pulsamos sobre Save LOG y cerramos tanto APIS32 como MemTurbo, y en el directorio donde tengais instalado MenTurbo V1.5 se ha creado un archivo llamado MemTurbo.log, donde se encuentran todos los datos del proceso de ejecucion, ale vamos a editarlo y ver su contenido,......

Como veis hay mucha información sobre todas las funciones que importa MemTurbo, pero Nosotros de momento solo necesitamos las funciones del registro de Windows y en mi .log veo esto.

 

004082C5:RegOpenKeyExA(HANDLE:80000001,LPSTR:004719F4: "Software\Microsoft\Windows\CurrentVersion\Explorer\ DataViewStream-MT15.., DWORD:00000000,DWORD:00000003,LPDATA:006DF5F8)

004082CB: RegOpenKeyExA = 0

00408357:RegCreateKeyExA(HANDLE:80000001,LPSTR:004719F4: "Software\Microsoft\Windows\CurrentVersion\Explorer\DataViewStream-MT15.., DWORD:00000000,LPSTR:0046E820:"REG_BINARY",DWORD:00000000,DWORD

:000F003F,LPDATA:00000000,LPDATA:006DF5F4,LPDATA:006DF5F0)

0040835D: RegCreateKeyExA = 0

004083A6: RegSetValueExA(HANDLE:C29AFAC0,LPSTR:004719E4: "Settings-MT15", DWORD:00000000,DWORD:00000003,LPDATA:006DF5DC,DWORD:00000008)

004083AC: RegSetValueExA = 0

004083D2: RegCloseKey(HANDLE:C29AFAC0)

004083D8: RegCloseKey = 0

00408439:RegCreateKeyExA(HANDLE:80000001,LPSTR:00471A3C:

"Software\Microsoft\Windows\CurrentVersion\Explorer\DataViewSettings-MT..,DWORD:00000000, LPSTR: 0046E820:"REG_BINARY",DWORD:00000000,DWORD:000F003F,LPDATA:00000000, LPDATA:006DF5F4,LPDATA:006DF5F0)

0040843F: RegCreateKeyExA = 0

Bueno como digo entre muchisimos otros datos estos son los registros que me parecen muy interesantes, si os fijais en rojo tenemos las claves que habiamos localizado con TechFacts98 , vemos que Api las manipula e incluso nos muestra la direccion de memoria de la Api que realiza las comprobaciones, seguramente para localizar esto con el SoftIce hubiesemos dado muchas vueltas, ahora vamos a pasar a la parte del desensamblado.

Teniamos MemTurbo.exe y una copia de este con el nombre Turbo.exe bueno pues desensamblamos MemTurbo.exe y con el editor Hex editamos Turbo.exe

La direccion de memoria donde se habre por primera vez la clave que nos interesa es 004082C5

004082C5:RegOpenKeyExA(HANDLE:80000001,LPSTR:004719F4:"Software\Microsoft\Windows \CurrentVersion\ Explorer\DataViewStream-MT15..,DWORD:00000000,DWORD:00000003,LPDATA:006DF5F8)

veamos que hay en esa direccion de memoria, asi que en W32dasm con la opcion find (la linternita) buscamos la direccion 004082C5 y nos lleva a:

* Reference To: ADVAPI32.RegOpenKeyExA, Ord:0172h

:004082C5 FF150C704500    Call dword ptr [0045700C]--- AQUI

:004082CB 6A48            push 00000048

:004082CD 6A00            push 00000000

:004082CF 57              push edi

:004082D0 8945F0          mov dword ptr [ebp-10], eax

:004082D3 E8180E0100      call 004190F0

:004082D8 83C40C          add esp, 0000000C

:004082DB 837DF000        cmp dword ptr [ebp-10], 00000000

:004082DF 0F84E2010000    je 004084C7 ----- Que Interesante

:004082E5 8D45C8          lea eax, dword ptr [ebp-38]

:004082E8 50              push eax

Concretamente a la api que abre la clave del registro, lo que aquí parece que ocurre es: RegOpenKeyExa abre la clave que utiliza memturbo para controlar la evaluacion, y mediante una serie de comprobaciones a traves de 004082D3 call 004190F0 se decide si se ejecuta o no el salto condicional que hay en 004082DF estas comprobaciones se lian mogollon, podeis tracearlo con el SoftICE, yo no lo hice cuando crackee este programa, pero posterior si lo tracee y si quereis aprender mas os recomiendo que pilleis el SoftIce poneis un Break Point a 004082d3 y empezais a tracear a partir de esa Call. Vereis la de vueltas que damos para arriba y abajo hasta llegar a el salto 004082df.

Bueno pues probemos a invertir el salto convirtiendolo en un jne y veamos los resultados, localizamos el offset de 004082DF je 004084C7 Que se muestra en la parte inferior de W32dasm, en la barra de estado, y es 000082DFh los ceros no se ponen y la "h" tampoco, asi que  vamos al editor Hex y el cambio que tenemos que hacer es

cambiamos 004082DF 0F84E2010000 je 004084C7

por       004082DF 0F85E2010000 jne 004084C7

 

para hacer el cambio metemos el offset 82DF en el editor Hex, con la opcion GOTO (dependiendo del Editor)  y veremos esto (dependiendo del editor que se use en unos estan los numeros juntos, en otros en pares etc. Pero siempre seran los mismos.)

0F84 E201 0000 y cambiamos por 0F85 E201 0000

salvamos los cambios y

ya solo nos queda probar, para ver si hemos acertado tenemos que adelantar otra vez la fecha, osea que cerramos los programas que puedan sufrir alteracion por el cambio de fecha (versiones triales etc.) adelantamos 2 meses la fecha de Windows y ejecutamos el archivo Turbo.exe que es el que hemos modificado y Voooila ¡! parece funcionar probamos a ver si desfragmenta la memoria y asi es bien, cerremos Turbo.exe y restauremos la fecha, ahora probamos otra vez y sigue funcionando miramos otra vez si desfragmenta la memoria y efectiviwonder, el funcionamiento es perfecto.

Pues como siempre espero que os sirva para adquirir conocimiento, para entender un poco mas esto del crackeo y principalmente para divertiros  .

Ya sabeis que para cualquier duda podeis contar con migo, atiendo todos los email con preguntas, sugerencias, criticas etc. Pero no atiendo pedidos de Cracks.

Un saludo a tod@s

Karpoff /TNT!

EMAIL: Kf_karpoff@hotmail.com

URL: http://welcome.to/karpoff

http://members.xoom.com/kf_karpoff

El uso de este material es solo para uso educativo, por ahora los cracks son

ilegales cada cual es responsable del uso que le de a este tutorial, el autor no se

hace responsable de nada.

Tutorial Descargado de Karpoff Spanis Tutor

www.000webhost.com