Foro de elhacker.net

Seguridad Informática => Análisis y Diseño de Malware => Mensaje iniciado por: soez en 7 Agosto 2010, 22:36 pm



Título: Leer direccion que hay en la posicion 3C con el editor hex
Publicado por: soez en 7 Agosto 2010, 22:36 pm
Bueno pregunto esto y asi me servirá para todas, como asigno a una variable la direccion que hay en la posicion 3C para averiguar donde empieza el PE ?? programando en C

EDITO: Me estoy fijando en codigos y parece que esta automatizado, que libreria es la que hay que usar?


Título: Re: Leer direccion que hay en la posicion 3C con el editor hex
Publicado por: [L]ord [R]NA en 7 Agosto 2010, 23:34 pm
cuando te refieres a la variable que se encuentra en la direccion 0x3c te refieres con respecto a la base del ejecutabñe?

en caso de ser asi podrias leerla asignandole la direccion real a un puntero.

Código
  1. //IMGBase = 400000, es un suponer, no siempre es esa.
  2. // Las Dll siguen el formato PECOFF, por lo tanto tambien son consideradas ejecutables.
  3. //0x3c es una direccion relativa a la direccion base donde fue cargado el ejecutable.
  4.  
  5. #Define IMGBASE 0x400000
  6.  
  7. int *RVAPE;
  8. char *PEHeader;
  9.  
  10. RVAPE = IMGBASE +0x3c;
  11.  
  12. PEHeader = 0x400000 + *RVAPE;
  13.  
  14. // ahora dentro del puntero PEHeader tienes una direccion de memoria que apunta al PEHeader.
  15.  
  16.