elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


  Mostrar Mensajes
Páginas: [1]
1  Programación / Ingeniería Inversa / En mi primer post en el foro les enseño a como hacer el Parche de WinISO 5.3 en: 28 Noviembre 2024, 16:18 pm
Hola a todos y todas en el foro soy nuevo gracias a Dios
y vengo a enseñar a cómo hacer el parche de WinISO 5.3
de manera manual

Información del Ejecutable:
Compresor: UPX Generic
PE File: winiso.exe
Protección: Registration Code y el Packer pero sería fácil si Dios
Lo Permite.

Para empezar el packer upx es fácil de desempacar porque no te destruye la IAT
y solo tienes que descomprimir el ejecutable
pero para esto utilizaremos el mismo upx.exe para desempacar winiso.exe
de la siguiente manera:
Damos tecla WIN+R y escribimos en la ventana que nos aparecerá el comando "cmd"
para abrir la consola de comandos de Windows.

Código:
Microsoft Windows [Versión 10.0.19045.3570]
(c) Microsoft Corporation. Todos los derechos reservados.

C:\Users\TEMP.LAPTOP-L8BH186Q.000>cd C:\Users\TEMP.LAPTOP-L8BH186Q.000\Desktop\AT4RE Patcher v0.7.6

C:\Users\TEMP.LAPTOP-L8BH186Q.000\Desktop\AT4RE Patcher v0.7.6>upx.exe -d winiso.exe
                       Ultimate Packer for eXecutables
                          Copyright (C) 1996 - 2013
UPX 3.91w       Markus Oberhumer, Laszlo Molnar & John Reiser   Sep 30th 2013

        File size         Ratio      Format      Name
   --------------------   ------   -----------   -----------
   1229824 <-    413696   33.64%    win32/pe     winiso.exe

Unpacked 1 file.

C:\Users\TEMP.LAPTOP-L8BH186Q.000\Desktop\AT4RE Patcher v0.7.6>


Luego de obtener el ejecutable descomprimido por el mismo upx
procederemos a buscar en las referencias de textos o strings la palabra clave:"Unregistered"
y llegaremos a esta parte del código si Dios quiere:
Código:
00406A11  |.  8BC3          MOV EAX,EBX
00406A13  |.  E8 18CC0600   CALL winiso_(.00473630
00406A18  |.  B8 EC1C4E00   MOV EAX,winiso_(.004E1CEC
00406A1D  |.  8078 27 00    CMP BYTE PTR DS:[EAX+27],0
00406A21  |.  0F95C1        SETNE CL
00406A24  |.  83E1 01       AND ECX,1
00406A27  |.  84C9          TEST CL,CL
00406A29  |.  75 58         JNZ SHORT winiso_(.00406A83
00406A2B  |.  66:C746 10 44>MOV WORD PTR DS:[ESI+10],44
00406A31  |.  BA 4B6F4C00   MOV EDX,winiso_(.004C6F4B                ;  ASCII " (Unregistered Version)"
00406A36  |.  8D45 D8       LEA EAX,DWORD PTR SS:[EBP-28]
00406A39  |.  E8 BECB0B00   CALL winiso_(.004C35FC
00406A3E  |.  FF46 1C       INC DWORD PTR DS:[ESI+1C]
00406A41  |.  33C0          XOR EAX,EAX
00406A43  |.  8945 D4       MOV DWORD PTR SS:[EBP-2C],EAX
00406A46  |.  8D45 FC       LEA EAX,DWORD PTR SS:[EBP-4]
00406A49  |.  FF46 1C       INC DWORD PTR DS:[ESI+1C]
00406A4C  |.  8D55 D8       LEA EDX,DWORD PTR SS:[EBP-28]
00406A4F  |.  8D4D D4       LEA ECX,DWORD PTR SS:[EBP-2C]
00406A52  |.  E8 A1CD0B00   CALL winiso_(.004C37F8
00406A57  |.  8D55 D4       LEA EDX,DWORD PTR SS:[EBP-2C]
00406A5A  |.  8BC3          MOV EAX,EBX

DS:[004E1D13]=00[/b]

Ven que está escrito el valor cero en ésta dirección en memoria haremos
lo contrario por esto este arte gracias a Dios se llama ingeniería inversa
le pondremos el valor uno de la siguiente manera vean:

Código:
00406A11  |.  8BC3          MOV EAX,EBX
00406A13  |.  E8 18CC0600   CALL winiso_(.00473630
00406A18  |.  B8 EC1C4E00   MOV EAX,winiso_(.004E1CEC
00406A1D      FE40 27       [color=green][b]INC BYTE PTR DS:[EAX+27][/b][/color]
00406A20      90            NOP
00406A21  |.  0F95C1        SETNE CL
00406A24  |.  83E1 01       AND ECX,1
00406A27  |.  84C9          TEST CL,CL
00406A29  |.  75 58         JNZ SHORT winiso_(.00406A83
00406A2B  |.  66:C746 10 44>MOV WORD PTR DS:[ESI+10],44
00406A31  |.  BA 4B6F4C00   MOV EDX,winiso_(.004C6F4B                ;  ASCII " (Unregistered Version)"
00406A36  |.  8D45 D8       LEA EAX,DWORD PTR SS:[EBP-28]
00406A39  |.  E8 BECB0B00   CALL winiso_(.004C35FC


Sí pero desde ahí no funcionó porque no nos crackea el programa
pero miren lo siguiente:

Código:
0041BBE5  |.  8B08          MOV ECX,DWORD PTR DS:[EAX]
0041BBE7  |.  FF51 FC       CALL DWORD PTR DS:[ECX-4]
0041BBEA  |.  66:C745 C4 5C>MOV WORD PTR SS:[EBP-3C],5C
0041BBF0  |>  C745 B0 EC1C4>MOV DWORD PTR SS:[EBP-50],winiso_(.004E1>
0041BBF7  |.  66:C745 C4 14>MOV WORD PTR SS:[EBP-3C],14
0041BBFD  |.  8B55 B0       MOV EDX,DWORD PTR SS:[EBP-50]
0041BC00      C642 27 00    [color=red][u][i][b]MOV BYTE PTR DS:[EDX+27],0[/b][/i][/u][/color]
0041BC04  |.  833D 2C1D4E00>CMP DWORD PTR DS:[4E1D2C],0
0041BC0B  |.  0F94C0        SETE AL
0041BC0E  |.  83E0 01       AND EAX,1
0041BC11  |.  84C0          TEST AL,AL
0041BC13  |.  74 1F         JE SHORT winiso_(.0041BC34
0041BC15  |.  FF4D D0       DEC DWORD PTR SS:[EBP-30]
0041BC18  |.  8D45 FC       LEA EAX,DWORD PTR SS:[EBP-4]
0041BC1B  |.  BA 02000000   MOV EDX,2
0041BC20  |.  E8 7B7B0A00   CALL winiso_(.004C37A0
0041BC25  |.  8B4D B4       MOV ECX,DWORD PTR SS:[EBP-4C]
0041BC28  |.  64:890D 00000>MOV DWORD PTR FS:[0],ECX


La instrucción es la misma porque la busque en referencias de constantes desde la zona de unregistered version y solo cambiamos al valor 1 esa instrucción y ya lo tendremos activado
el programa gracias al Señor Jesucristo :')

Código:
0001B200    C642 27 01      MOV BYTE PTR DS:[EDX+27],1
[/b][/color]

Y así ya logramos hacer el Parche o Patch en inglés gracias al Señor Jesús Que Sería Dios
de éste programa WinISO v5.3

¡Que Dios me los bendiga y guarde siempre saludos!


Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines