Alertar con una string en ensamblador usando ollydbg

Iniciado por Borito30, 5 Marzo 2017, 14:25 PM

0 Miembros y 1 Visitante están viendo este tema.

Borito30

Quiero un mensaje en una de mis aplicaciones que al iniciarse muestre Bienvenido , para ello hago lo siguiente:



Apunto la dirección del primer push que sería 005404F5, y selecciono Go to -> Origin:



Después sustituyo la primera dirección por un jmp a la dirección 005404F5.



Apunto la dirección 004C0EFF y hago un enter al jmp. Apunto la linea borrada debajo de mi código que sería CALL 004C0DB3 y hago un jmp de nuevo que sería, jmp 004C0EFF:



Guardo el ejecutable. Y me muestra el siguiente error:

´

He probado con mis programas, con los programas de windows, con todo y no consigo que muestre una alerta de bienvenido alguien podría analizar detenidamente los pasos que tomé o decirme cual es el fallo que cometí.
Estoy en contra del foro libre y la Sección de juegos y consolas (distraen al personal)

cpu2

Guardas el ejecutable, pero probaste desde en el mismo olly? Tendria que decirte donde esta el fallo.

Saludos.

Flamer

trasealo en el mismo ollydbg como dice cpu, pero lo que veo no se muy bien pero no creo que cargue el mensaje a la pila ya que tienes el PUSH apuntando a otra dirección si el mensaje lo tienes en la dirección 005404E8

saludos

Borito30

Cita de: Flamer en  5 Marzo 2017, 23:07 PM
trasealo en el mismo ollydbg como dice cpu, pero lo que veo no se muy bien pero no creo que cargue el mensaje a la pila ya que tienes el PUSH apuntando a otra dirección si el mensaje lo tienes en la dirección 005404E8

saludos

Vale corregi eso pero me sigue dando error:





error:
Problem signature:
 Problem Event Name: APPCRASH
 Application Name: noti.exe
 Application Version: 6.1.7600.16385
 Application Timestamp: 4a5bc60f
 Fault Module Name: ADVAPI32.dll
 Fault Module Version: 6.1.7601.18247
 Fault Module Timestamp: 521ea86a
 Exception Code: c0000005
 Exception Offset: 0004ea12
 OS Version: 6.1.7601.2.1.0.256.1
 Locale ID: 1043
 Additional Information 1: 0a9e
 Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
 Additional Information 3: 0a9e
 Additional Information 4: 0a9e372d3b4ad19135b953a78882e789

Read our privacy statement online:
 http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409

If the online privacy statement is not available, please read our privacy statement offline:
 C:\Windows\system32\en-US\erofflps.txt


:huh: :huh: :huh:
Estoy en contra del foro libre y la Sección de juegos y consolas (distraen al personal)

cpu2

Sigue estos pasos como te lo detallo:

Donde tienes el Entry point del ejecutable tienes que colocar el primer push del messagebox, fijate que todos los offsets esten bien, porque hay cosas que no me cuadran del mensaje de error, luego haz que retorne al punto original del ejecutable.

Un saludo.

Flamer

#5
OJO: tienes 2 PUSH con el string

saludos
--------------------------------------------------------------
corrección es el caption que cargas error mio  jajaja

Borito30

Cita de: Flamer en  6 Marzo 2017, 00:02 AM
OJO: tienes 2 PUSH con el string

saludos
--------------------------------------------------------------
corrección es el caption que cargas error mio  jajaja
el call debajo del messagebox lo pongo porque lo remplazo arriba por el salto. ? Te refieres a eso?
Estoy en contra del foro libre y la Sección de juegos y consolas (distraen al personal)

Flamer

puedes hacer algo similar a lo que dise cpu pero en ves de colocar el push en el entry point pones un salto JMP a dicha zona y luego te regresas con otro JMP y el programa seguirá su curso

saludos Flamer

Borito30

#8
Cita de: Flamer en  6 Marzo 2017, 00:55 AM
puedes hacer algo similar a lo que dise cpu pero en ves de colocar el push en el entry point pones un salto JMP a dicha zona y luego te regresas con otro JMP y el programa seguirá su curso

saludos Flamer
esque el problema aunque modifique otra linea la primera linea se borra por eso lo pongo abajo pero aún así me da error poniendo el push en el entry point pero no lo consigo me devuelve error no se porque si lo hice exactamente como debería si pudieras indicarme como hacerlo me servira de ayuda disculpar por mi estupidez y molestias gracias. :xD


Cita de: cpu2 en  5 Marzo 2017, 23:46 PM
Sigue estos pasos como te lo detallo:

Donde tienes el Entry point del ejecutable tienes que colocar el primer push del messagebox, fijate que todos los offsets esten bien, porque hay cosas que no me cuadran del mensaje de error, luego haz que retorne al punto original del ejecutable.

Un saludo.
en el entry point lo que hago es un salto a la linea de código donde tengo el message box y la linea primera. Pero pienso a lo mejor que debería incluir más código para que el programa prosiga su curso.

Hice esto simplemente hacer un salto:





Y ni siquiera me abre el bloc de notas.

Tambien podría hacer lo que me habeis dicho poner todo el código seguido a ver si al hacer el salto y la primera linea estar abajo se casca.

Lo intente cogiendo más codigo pero ni aún así me devuelve error:
Problem signature:
  Problem Event Name: BEX
  Application Name: jojo.exe
  Application Version: 6.1.7600.16385
  Application Timestamp: 4a5bc60f
  Fault Module Name: StackHash_0a9e
  Fault Module Version: 0.0.0.0
  Fault Module Timestamp: 00000000
  Exception Offset: 772fea11
  Exception Code: c0000005
  Exception Data: 00000008
  OS Version: 6.1.7601.2.1.0.256.1
  Locale ID: 1043
  Additional Information 1: 0a9e
  Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
  Additional Information 3: 0a9e
  Additional Information 4: 0a9e372d3b4ad19135b953a78882e789

Read our privacy statement online:
  http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409

If the online privacy statement is not available, please read our privacy statement offline:
  C:\Windows\system32\en-US\erofflps.txt

:-\

MOD: No hacer doble post.
Estoy en contra del foro libre y la Sección de juegos y consolas (distraen al personal)

MCKSys Argentina

Abre el programa modificado con Ollydbg y ejecuta las instrucciones paso a paso con F7.

Con eso deberías poder saber cuál es el error.

Saludos!
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."