ESTUDIO COLECTIVO DE DESPROTECCIONES
Última Actualizacion: 25/10/2001

Programa TextPad v3.2.4 W95 / W98 / NT
Descripción Editor de textos
Tipo Nag Screen al inicio si no estás registrado
Tipo de Tutorial [X]Original, []Adaptación, []Aplicación, []Traducción
Url  
Protección Nag Screen. Time Limit 30 Dias
Dificultad 1) Principiante, 2) Amateur, 3) Aficionado, 4) Profesional, 5) Especialista
Herramientas Wdasm v8.9, Editor Hexadecimal
Objetivo Simular estar registrados.
Cracker Mr.Brown
Grupo Whiskey Kon Tekila
Fecha 15 de Julio de 1998

INTRODUCCION
Parece que el programa es totalmente funcional y tan sólo aparece una pantallita al iniciar que nos recuerda que es ShareWare, y que desaparece solita en unos segundos.

En el programa no hay ninguna opción para registrarse, así que supongo que al pagar te deben enviar algun fichero que te registra.

Podemos recordar que el programa es ShareWare mirando en la opción About, así que no hace falta que nos lo diga cada vez que arrancamos. Vamos a investigar.... ;-)

AL ATAQUE
Al empezar, el programa busca en el registro (en \Software\Helios\TextPad\Security) un valor de 3 caracteres para "Capabilities", que no puede encontrar ;-(
Se podría generar esa clave a mano en el registro, y ver que hace luego con ella.
Con el SoftIce se haría poniendo un BreakPoint en la dirección de memoria donde almacena ese valor.
O sea, BPM 0137:4F34B0 ,pero como la cosa se lia un poco, vamos a lo bruto...

Una vez abierto y cargado el TxtPad32.exe con el Debugger WDasm v8.9, vamos a poner un BreakPoint para RegOpenKeyExA con "Software\Helios\TextPad\Security", o sea en :40CD68
Se puede encontrar esta dirección mirando en la opción Refs/String Data References, buscando el texto "Security", y haciendo doble click sobre él. Con F2 se marca el BreakPoint.

Ejecutamos el programa (F9), y se para por el BreakPoint.
Como vamos a saco, le damos al Auto Step Over (F6), y estamos atentos para fijarnos en que momento aparece la pantalla de ShareWare.
Si hemos afinado la vista (o en su defecto hemos repetido la operación acotando cada vez un poco más y avanzando a mano con F8), encontraremos la llamada en :44CD3C call 4A0431 , que podría ser algo así como Call Muestra_Pantalla_de_ShareWare.
Miramos una linias más arriba para ver si hay alguna instrucción que se salte esa llamada :

:0044CD1C 8B7DF0                  mov edi, dword ptr [ebp-10]
:0044CD1F 81C7D0000000            add edi, 000000D0
:0044CD25 8B0F                    mov ecx, dword ptr [edi]
:0044CD27 85C9                    test ecx, ecx
:0044CD29 742C                    je 0044CD57
:0044CD2B 53                      push ebx
:0044CD2C 8B01                    mov eax, dword ptr [ecx]
:0044CD2E FF90D4000000            call dword ptr [eax+000000D4]
:0044CD34 85C0                    test eax, eax
:0044CD36 741F                    je 0044CD57
:0044CD38 6A05                    push 00000005
:0044CD3A 8B0F                    mov ecx, dword ptr [edi]
:0044CD3C E8F0360500              call 004A0431
Si en :44CD29 hiciera el salto, no se mostraría la pantallita de shareware.
Así que para que ello ocurra, cambiamos la instrucción de :44CD25 por xor ecx,ecx
Seguimos ejecutando, y vemos que todo parece estar ok.
Esto es ir a saco... ;-DDD

Para dejar los cambios permanentes, hay que modificar el fichero TxtPad32.exe
La instrucción a parchear está en :44CD25 en el código, que el Wdasm nos dice que es el offset 4C125 del fichero TxtPad32.exe
Así que con un editor hexadecimal nos vamos a la posición 4C125, y cambiamos 8B0F por 33C9
Salvamos, y yatá.

[ Entrada | Documentos Genéricos | WkT! Web Site ]
[ Todo el ECD | x Tipo de Protección | x Fecha de Publicación | x Orden Alfabético ]
(c) Whiskey Kon Tekila [WkT!] - The Original Spanish Reversers.
Si necesitas contactar con
nosotros , lee esto antes e infórmate de cómo puedes ayudarnos