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

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Ingeniería Inversa (Moderadores: karmany, .:UND3R:., MCKSys Argentina)
| | |-+  ¿Cómo puedo guardar modificaciones en ejecutable utilizando Olldbg?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Cómo puedo guardar modificaciones en ejecutable utilizando Olldbg?  (Leído 4,463 veces)
JAROD_28

Desconectado Desconectado

Mensajes: 3


Ver Perfil
¿Cómo puedo guardar modificaciones en ejecutable utilizando Olldbg?
« en: 24 Marzo 2012, 11:44 am »

Hola a todos, espero me puedan ayudar, quiero crackear un programa que corre en modo consola MS-DOS. Con el editor de recursos (Resource Hacker) me salen los textos del mensaje que dicen que me quedan x usos y después pasa a ejecutar el programa, utilizo el RDG Packer Detector v0.6.8 2012, dice hecho con Visual C++ y no tiene protección, pero con Ollydbg no me aparecen las referenced strings. Este programa tiene protección por cantidad de usos y límite de tiempo por sesión.

Para el limite de usos lee un archivo en el directorio de windows.

Bueno yo hago lo siguiente: pongo un breakpoint en 1000403A, ejecuto con F9.

1000403A   FF55 0C   CALL DWORD PTR SS: (arg.2)
1000403D   8B0D   94F4121  MOV EXC,DWORD PTR DS: (1012f494)

Entro al CALL con F7, aparezco en 009A0000 y ahí están las strings, puedo hacer modificaciones al código y correrlo, pero no sale la opción para guardar los cambios en el ejecutable.

009A0000   53   PUSH EBX
009A0001   56   PUSH ESI
009A0002   57   PUSH EDI
      .
      .
009A0017  890424   MOV DWORD PTR SS:(sp),eax
      .
      .
009A0042   B8 8DA09D00   MOV EAX, 9DA08D   ASCII "ENTER YOUR NAME"

Agradezco que me ayuden en cómo puedo hacer en este caso o que otro programa necesito.

La dirección de origen del programa es: 100014C7
Y la dirección de entrada a los mensajes es: 009A0000

Saludos y gracias por las respuestas.
« Última modificación: 27 Marzo 2012, 05:26 am por JAROD_28 » En línea

karmany
Moderador
***
Desconectado Desconectado

Mensajes: 1.615


Sueñas que sueñas


Ver Perfil WWW
Re: ¿Cómo puedo guardar modificaciones utilizando Olldbg u otro editor de .exe?
« Respuesta #1 en: 24 Marzo 2012, 23:22 pm »

Desde OllyDBG versión 2 puedes guardar los cambios del siguiente modo:
pulsar el botón derecho del ratón en la ventana de desensamblado -> edit -> copy to executable. En la siguiente ventana que aparece, que además verás una ventana emergente de aviso pulsas botón derecho del ratón -> save file.



Y ahí, donde estoy parado en la imagen pulsas Sí.
En línea

JAROD_28

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: ¿Cómo puedo guardar modificaciones en ejecutable utilizando Olldbg?
« Respuesta #2 en: 25 Marzo 2012, 05:43 am »

Gracias karmany, estoy utilizando OllyDbg2.0, cierto la opción de grabar los cambios aparece así, pero cuando entro al CALL esta opción desaparece, bueno, ahí busco donde hacer los cambios para eliminar la primera protección, ejecuto con F9, y efectivamente desaparece ese molesto mensaje que había llegado al limite de usos y que después me cerraba el programa.

Probe el OllyDbg en otro PC y note algo, cada vez que entraba al CALL, aparecía en otra dirección diferente al que me mostraba en mi PC (009A0000). Cerraba OllyDbg, abría, cargaba y ejecutaba y al entrar en CALL, mostraba otra dirección 002B0000 por ejemplo. Obviamente esta dirección está en memoria y no en el ejecutable por eso no aparece la opción de guardar. ¿Tiene algún otro tipo de protección? O ¿estoy olvidando algún paso?

(PD: No he podido subir imagenes, no de deja).

Saludos.
« Última modificación: 27 Marzo 2012, 05:27 am por JAROD_28 » En línea

Иōҳ


Desconectado Desconectado

Mensajes: 563


Ver Perfil
Re: ¿Cómo puedo guardar modificaciones utilizando Olldbg u otro editor de .exe?
« Respuesta #3 en: 25 Marzo 2012, 07:29 am »

Pueda que sea creado en memoria, que la dirección a la que accedes con ese CALL, no está en disco...

Lo que se puede hacer en esos casos es un injerto...

Saludos,
Nox.
En línea

Eres adicto a la Ing. Inversa? -> www.noxsoft.net
JAROD_28

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: ¿Cómo puedo guardar modificaciones en ejecutable utilizando Olldbg?
« Respuesta #4 en: 27 Marzo 2012, 06:32 am »

 ;D-------SOLUCIONADO------- ;-)

En vista que no podía hacer las modificaciones con OllyDbg, decidí hacerlo con el WinExe de la  siguiente manera:

Corrí el programa con F9, entre al CALL con F7, una vez adentro aparecieron las Strings que no se visualizaban, busqué las Strings que me interesaban y la entrada a la NAG venía de dos CALL, con WinHex busque una cadena Hex de 36 caracteres en el ejecutable para poder detectarla, cambié la entrada de la NAG:

53 56 57 55 por: C2 00 00 90

En assembler sería:

PUSH EBX
PUSH ESI
PUSH EDI
PUSH EBP

Por:

RETN
NOP

Con esto evite la ejecución de esta, algo parecido hice con la NAG de finalización del tiempo de ejecución. A karmany y Иōҳ gracias por su atención.

Saludos, Jarod_28.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
como puedo guardar...........
Multimedia
pepaloka86 1 1,741 Último mensaje 30 Junio 2005, 20:09 pm
por Songoku
Guardar variables en el ejecutable
Programación Visual Basic
wifinet 1 1,746 Último mensaje 4 Febrero 2006, 18:33 pm
por BenRu
Como guardar modificaciones echas por el usuario en un LiveCD?
Windows
Eleкtro 0 2,381 Último mensaje 12 Diciembre 2011, 00:17 am
por Eleкtro
crear ejecutable que detecte modificaciones de archivos?
Programación General
mrzetta 5 5,738 Último mensaje 3 Febrero 2013, 05:56 am
por mrzetta
[Python] ¿Cómo puedo empaquetar una imágen dentro de un programa ejecutable?
Python
Príncipe_Azul 1 3,643 Último mensaje 13 Marzo 2014, 05:10 am
por Príncipe_Azul
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines