Foro de elhacker.net

Seguridad Informática => Análisis y Diseño de Malware => Mensaje iniciado por: Roast D en 7 Marzo 2017, 23:51 pm



Título: Duda sobre ollydbg y LordPe (ImageBase)
Publicado por: Roast D en 7 Marzo 2017, 23:51 pm
Según lordPe la imageBase es de 400000 pero cuando hago el calculo en ollydbg es de 850000 o de 1170000. He visto varios post respecto al tema y en ollydbg siempre tienen una ImageBase de 400000. Alguien me puede decir a que se debe esto ?. Para que la imagebase no cambie cada vez que cargo el exe a olly.


Título: Re: Duda sobre ollydbg y LordPe (ImageBase)
Publicado por: Borito30 en 8 Marzo 2017, 00:21 am
Estas practicando con olly imagebase a que te refieres? No te importe la imagebase tu lo que tienes es cambiar el comportamiento del programa para que haga lo que te salga de los .. ya sabes. No te importe eso abrelo mirate un tutorial por internet y usalo poco a poco. En la sección ingenieria inversa encontrarás muchos tutos interesantes. Haces bien en aprender ingenieria inversa te servira para muchas cosas.

Por ultimo decirte que bienvenido a la ingenieria inversa es tediosa yo recien empece a buscar pero es divertida e interesante y con mucho futuro salu2


Título: Re: Duda sobre ollydbg y LordPe (ImageBase)
Publicado por: Roast D en 8 Marzo 2017, 01:42 am
Estas practicando con olly imagebase a que te refieres? No te importe la imagebase tu lo que tienes es cambiar el comportamiento del programa para que haga lo que te salga de los .. ya sabes. No te importe eso abrelo mirate un tutorial por internet y usalo poco a poco. En la sección ingenieria inversa encontrarás muchos tutos interesantes. Haces bien en aprender ingenieria inversa te servira para muchas cosas.

Por ultimo decirte que bienvenido a la ingenieria inversa es tediosa yo recien empece a buscar pero es divertida e interesante y con mucho futuro salu2

Es que estoy usando dos programas ollydbg y lordPE, en el lordpe te sale el punto de entrada y algo que se llama imageBase si tu sumas la direccion de imagBase con la del punto de entrada en LordPe, en olly deberia coincidir con la direccion en la que esta el punto de entrada.


Me explico mejor (entryPoint + imageBas) = direccion en Olly. El imageBase es siempre 400000 es decir que el punto de entrada en olly deberia ser 400000+(punto de entrada en lordPe). Eso es lo que he visto en la mayoría de tutoriales al respecto. Pero eso no ocurre en este caso. Cada vez que abro el .exe en Olly y en lordPe cambia ese imageBase. Apesar de marcar 400000 en LordPe.



Perdon si no me puedo hacer entender bien :S


Título: Re: Duda sobre ollydbg y LordPe (ImageBase)
Publicado por: MCKSys Argentina en 8 Marzo 2017, 02:01 am
La ImageBase es la dirección donde se cargará el ejecutable, si dicha dirección no está ya ocupada.
Ahora, el tema es que por seguridad, muchos programas actuales vienen con ASLR, lo que les permite comportarse como una DLL y cargarse en otra dirección; diferente a la especificada en el PE header.

Si el EP está en una dirección diferente cada vez que corres el exe en olly, entonces tiene ASLR.

Saludos!


Título: Re: Duda sobre ollydbg y LordPe (ImageBase)
Publicado por: Borito30 en 8 Marzo 2017, 02:05 am
La ImageBase es la dirección donde se cargará el ejecutable, si dicha dirección no está ya ocupada.
Ahora, el tema es que por seguridad, muchos programas actuales vienen con ASLR, lo que les permite comportarse como una DLL y cargarse en otra dirección; diferente a la especificada en el PE header.

Si el EP está en una dirección diferente cada vez que corres el exe en olly, entonces tiene ASLR. Y una pregunta cuando dices EP te refieres si cada vez que abro con olly el programa me cambia el entry point?

Saludos!

tambien quiero preguntar yo una cosa sobre esto ya de paso si resuelve en una direccion y te cambia la dirección por el aslr la unica manera de evitarlo sería desactivarlo?  Y otra cuando dices la EP te refieres a que si se abre el programa cada vez con el ollydbg y te cambia el entry point quiere decir que tiene aslr?


Título: Re: Duda sobre ollydbg y LordPe (ImageBase)
Publicado por: MCKSys Argentina en 8 Marzo 2017, 03:06 am
tambien quiero preguntar yo una cosa sobre esto ya de paso si resuelve en una direccion y te cambia la dirección por el aslr la unica manera de evitarlo sería desactivarlo?  Y otra cuando dices la EP te refieres a que si se abre el programa cada vez con el ollydbg y te cambia el entry point quiere decir que tiene aslr?

Si l programa viene compilado con ASLR, va a ser difícil quitárselo (pero no imposible). Aunque no veo un motivo por el cual hacer semejante cosa...

Efectivamente, si cada vez que abres el exe con Olly cambia la direccion del EP, entonces el exe tiene ASLR. Por supuesto, la direccion siempre mantiene el RVA especificado en el PE Header.

Saludos!


Título: Re: Duda sobre ollydbg y LordPe (ImageBase)
Publicado por: 0xNOP en 8 Marzo 2017, 17:36 pm
En los ejecutables producidos para Windows NT, la base de imagen predeterminada era 0x10000. Para DLL, el valor predeterminado es 0x400000. En Windows 95, la dirección 0x10000 no se puede utilizar para cargar EXE de 32 bits porque se encuentra dentro de una región de dirección lineal compartida por todos los procesos. Debido a esto, Microsoft ha cambiado la dirección base predeterminada para ejecutables de Win32 a 0x400000.

Cabe mencionar que no todos van hacer 0x400000, pero mas bien la mayoria ya esta definido por esa base de imagen o 'ImageBase' en ingles, La manera de leer el 'ImageBase' es nada mas y nada menos que leyendo el propio PE, y como se hace es con programas como CFF Explorer o Adlice PE Viewer.

Por ende para entender lo que está pasando es imperativo que entiendas lo que es un binario PE o Portable Executable

(http://i.imgur.com/VYUK221.png)
    Fig. A - Formato de Binario Ejecutable

(https://github.com/corkami/pics/blob/master/binary/PE.png?raw=true)
    Fig B. Version Mini

Con estos ejemplos de arriba puedes ver como el formato PE está estructurado, de que se compone y de donde salen los valores. Puesto que Microsoft es el autor de dicho formato, te recomiendo que pases por su pagina MSDN (o el "Microsoft Developer Network" por sus siglas en Ingles) y te comiences a ojear los documentos que hay ahi de dicho formato, no solo el MSDN es un gran lugar para aprender mas del formato PE, sino pues explora tambien en otros sitios online, foros, etc., etc.

Saludos,
0xNOP

MOD EDIT: Imagenes adaptadas a lo permitido.