Como borrar la cabecera de mi ejecutable usando esta funcion

Iniciado por Borito30, 26 Mayo 2017, 01:35 AM

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

Borito30

Hola estaba viendo una pequeña función por internet que me permite borrar la cabecera, el fichero.cpp es:
VOID ErasePEHeaderFromMemory()
{
_tprintf(_T("[*] Erasing PE header from memory\n"));
DWORD OldProtect = 0;

// Get base address of module
char *pBaseAddr = (char*)GetModuleHandle(NULL);

// Change memory protection
VirtualProtect(pBaseAddr, 4096, // Assume x86 page size
PAGE_READWRITE, &OldProtect);

// Erase the header
SecureZeroMemory(pBaseAddr, 4096);
}

int main(){
// como puedo borrar mi cabecera en base a mi función
}


Y luego el fichero.h:
VOID ErasePEHeaderFromMemory();

Pero mi pregunta es como puedo aplicarlo a un ejemplo práctico. Supongo que tendré que obtener el base address de mi ejecutable y después usarlo en mi funcion?? Alguna sugerencia??
Estoy en contra del foro libre y la Sección de juegos y consolas (distraen al personal)

Poyoncio

No te limites a coger codigo y ejecutarlo tal cual, por lo que veo sabes poco del tema, te recomiendo que primero aprendas: https://www.youtube.com/playlist?list=PLUFkSN0XLZ-n_Na6jwqopTt1Ki57vMIc3
Curso de ensamblador desde cero

MCKSys Argentina

Cita de: Ragaza en 26 Mayo 2017, 01:35 AM
Pero mi pregunta es como puedo aplicarlo a un ejemplo práctico. Supongo que tendré que obtener el base address de mi ejecutable y después usarlo en mi funcion?? Alguna sugerencia??

El código ya encuentra el inicio del ejecutable (con GetModuleHandle). Sólo tienes que llamar la función.

Saludos!
MCKSys Argentina

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


Borito30

Cita de: MCKSys Argentina en 26 Mayo 2017, 01:55 AM
El código ya encuentra el inicio del ejecutable (con GetModuleHandle). Sólo tienes que llamar la función.

Saludos!
Ups se me paso tienes razón..

Citar
No te limites a coger codigo y ejecutarlo tal cual, por lo que veo sabes poco del tema, te recomiendo que primero aprendas: https://www.youtube.com/playlist?list=PLUFkSN0XLZ-n_Na6jwqopTt1Ki57vMIc3

Gracias intentaré entenderlo.
Estoy en contra del foro libre y la Sección de juegos y consolas (distraen al personal)