--

ESTUDIO COLECTIVO DE DESPROTECCIONES
WKT Tutorialz Site
WKT
progrAmA TextPad 3.2.4 W95
DEsCripCi≤n Editor de textos.
tipo Shareware (27 $)
protECCi≤n Nag Screen al inicio si no estßs registrado.
DiFiCultAD 1) Principiante, 2) Amateur, 3) Aficionado, 4) Profesional, 5) Especialista
hErrAmiEntAs Wdasm 8.9, Editor Hexadecimal
CrACkEr Mr.Brown
FEChA Julio de 1998

Introducci≤n
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 Atake
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 | Documentoz GenΘricoz | WKT TEAM Main Site ]
[ Todo el ECD | x Tipo de Protecci≤n | x Fecha de Publicaci≤n | x orden AlfabΘtico ]