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


+  Foro de elhacker.net
|-+  Programación
| |-+  Ingeniería Inversa (Moderadores: karmany, .:UND3R:., MCKSys Argentina)
| | |-+  ImageBase cambia...
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ImageBase cambia...  (Leído 4,989 veces)
ignorantev1.1


Desconectado Desconectado

Mensajes: 617


/\ Así acabo cuando quiero programar...


Ver Perfil WWW
ImageBase cambia...
« en: 1 Diciembre 2011, 19:59 pm »

Hola, pués una duda:

Estoy leyendo posiciones de memoria, pero se me complica, ya que la "ImageBase" varía en cada ejecución o en cada maquina...

¿Cómo puedo saber la imagebase de un programa en ejecución?

No me sirve leer la cabecera PE...

Saludos y gracias!
En línea

.:UND3R:.
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.118


Ingeniería inversa / MASM


Ver Perfil WWW
Re: ImageBase cambia...
« Respuesta #1 en: 1 Diciembre 2011, 20:05 pm »

Hola, pués una duda:

Estoy leyendo posiciones de memoria, pero se me complica, ya que la "ImageBase" varía en cada ejecución o en cada maquina...

¿Cómo puedo saber la imagebase de un programa en ejecución?

No me sirve leer la cabecera PE...

Saludos y gracias!

Por lógica debería aparecer la ImageBase en la cabecera PE, también me parece extraño que cambie mientras está en ejecución, recuerda que si quieres obtener el VA (variable absoluta)debes restarle 400000 (que es el valor general que posee la ImageBase)

PD: aun recuerdo lo que te prometi que iba a ver pero no he tenido tiempo, mis 1000 disculpas por lo del juego
En línea


Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)
ignorantev1.1


Desconectado Desconectado

Mensajes: 617


/\ Así acabo cuando quiero programar...


Ver Perfil WWW
Re: ImageBase cambia...
« Respuesta #2 en: 1 Diciembre 2011, 20:23 pm »

Aparece, pero no es la misma:



Arriba 2 imagenes sacadas del debugger, en dos ejecuciones distintas, y 1 imagen de lectura de PE Header...

@.:UND3R:.
Pués es sobre la misma duda de la otra vez, pero creo que ahora es más concreta...

Saludos!
En línea

Иōҳ


Desconectado Desconectado

Mensajes: 563


Ver Perfil
Re: ImageBase cambia...
« Respuesta #3 en: 1 Diciembre 2011, 20:27 pm »

No precisamente siempre va hacer igual, la ImageBase cambia, y dónde la encuentras, en la cabezera PE, dónde más?, quién te dijo que la ImageBase debe de cargarse siempre en la misma dirección?  :huh:


Aquí hay un ejemplo de Zero, dónde cambia la ImageBase

http://zero.h-sec.org/inyeccion-ejecutable-memoria-dummysection

Nox.
« Última modificación: 1 Diciembre 2011, 21:45 pm por Иōҳ » En línea

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


Desconectado Desconectado

Mensajes: 617


/\ Así acabo cuando quiero programar...


Ver Perfil WWW
Re: ImageBase cambia...
« Respuesta #4 en: 1 Diciembre 2011, 21:54 pm »

Perfecto @Иōҳ...

Citar
¿Cómo puedo saber la imagebase de un programa en ejecución?

Saludos!
En línea

The Swash

Desconectado Desconectado

Mensajes: 194


Programmer


Ver Perfil WWW
Re: ImageBase cambia...
« Respuesta #5 en: 22 Diciembre 2011, 15:23 pm »

En el PECOFF de Microsoft afirma que en caso de que la direccion de la ImageBase este ocupado o no se pueda acceder el loader de Windows le asignará una dirección que pueda ocupar.
Para ello el ejecutable debe tener directorio de relocations(reubicación).

Un saludo.
En línea

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: ImageBase cambia...
« Respuesta #6 en: 23 Diciembre 2011, 00:01 am »

Perfecto @Иōҳ...

Saludos!

ReadProcesMemory...

Dylces Lunas!¡.
En línea

The Dark Shadow is my passion.
Karman


Desconectado Desconectado

Mensajes: 673



Ver Perfil WWW
Re: ImageBase cambia...
« Respuesta #7 en: 30 Diciembre 2011, 05:30 am »

Hola, pués una duda:

Estoy leyendo posiciones de memoria, pero se me complica, ya que la "ImageBase" varía en cada ejecución o en cada maquina...

¿Cómo puedo saber la imagebase de un programa en ejecución?

No me sirve leer la cabecera PE...

Saludos y gracias!

no confundamos las cosas, todo depende que estés analizando, por ejemplo, la imagebase de los ejecutables (exe) es fija (dado que es lo que primero carga el loader y se supone que la memoria está vacía [salvo excepciones muy raras]), lo que puede variar es la imagebase de las dll's (gracias a la relloctable), dado que si una dll tiene una base 100000 y dicha dirección está ocupada, el loader tratará de cargarla en otra (y modificar la relloc table), ahora para saber la dirección en memoria de una dll, no te queda otra que preguntarle a windows donde la cargó (existen muuuuchos métodos)

S2
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines