Foro de elhacker.net

Programación => Ingeniería Inversa => Mensaje iniciado por: x64core en 12 Marzo 2012, 23:08 pm



Título: Problemas Alineando PE
Publicado por: x64core en 12 Marzo 2012, 23:08 pm
Hola a todos bueno vengo a pedir ayuda porque tengo problemas con realinear la struct PE de un EXE
resulta que quiero cambiar el tamaño de la sección .text como estas son pruebas para mi aprendizaje
e escojido el notepad de win7 la info es esta:
(http://img685.imageshack.us/img685/4241/47980198.png)

como veis el tamaño es A800 pero antes de modificar la direcciones le agrego los 100h bytes con un editor hex al final de la sección
text bien el EXE queda corrompido es de esperar no :P ahora cambio las direcciones asi:
(http://img198.imageshack.us/img198/2596/90960134.png)

lo guardo y el ejecutable no vuelve al estado normal aparte que el AV me lo detecta xD
alguien me puede hechar una mano ya me lei unos cuantos tutos de PE quiza estoy olvidando algo :P gracias


Título: Re: Problemas Alineando PE
Publicado por: Иōҳ en 12 Marzo 2012, 23:25 pm
Si dices que estás agregando, eso quiere decir que las secciones que le siguen no estarán en la misma dirección que antes un ejemplo.
Posición Valor


1 = a
2 = b
3 = c
4 = e
5 = g
6 = h


Si deseo AGREGAR..

1 = a
2 = b
3 = c
4 = e
5 = f
6 = g
7 = h

Entonces el valor g ya no está en la dirección 5 si no en la 6 porque agregué un valor, de igual manera, si mi sección text empieza en 1000h, y mi sección .data empieza en 2000h, y yo le agrego 1000h a mi sección .text, ahora mi sección .data empezaría en 3000h

Nox.


Título: Re: Problemas Alineando PE
Publicado por: x64core en 12 Marzo 2012, 23:36 pm
@Nox:
Si Nox eso que creo que te refieres lo tome en cuenta, en la segunda imagen veis que agrege
100h a los punteros raw de las secciones posteriores a text  :P


Título: Re: Problemas Alineando PE
Publicado por: MCKSys Argentina en 13 Marzo 2012, 01:54 am
Actualiza los Sizes Virtuales tambien...

Como vas a tener problemas con la alineacion de las secciones (granularidad), por las dudas, despues pasale LordPE.

Saludos!


Título: Re: Problemas Alineando PE
Publicado por: x64core en 13 Marzo 2012, 02:47 am
Ya incremente la size virtual + 100h de text... solo esa habria que modificar no? :P
porque solo a esa le incremento bytes y aun sigue malo el EXE  :-\
como es eso de pasarle el LordPE? :P
intente con RebuilderPE y me lo detecto el AV :P


Título: Re: Problemas Alineando PE
Publicado por: Иōҳ en 13 Marzo 2012, 05:48 am
Pues viendo la imagen, te faltaría arreglar el Virutal Size de la sección .text, y los Virtual Address de todas las secciones.

Saludos,
Nox.


Título: Re: Problemas Alineando PE
Publicado por: _Enko en 13 Marzo 2012, 15:12 pm
Si es para agregar codigo, es mas facil agregar una sección nueva.
Luego hacer un jmp alli, o bien, cambiar el entry point a la sección nueva y luego cuando haga falta, hacer un jmp al entry point original.


Título: Re: Problemas Alineando PE
Publicado por: apuromafo CLS en 23 Marzo 2012, 13:23 pm
Si es para agregar codigo, es mas facil agregar una sección nueva.
Luego hacer un jmp alli, o bien, cambiar el entry point a la sección nueva y luego cuando haga falta, hacer un jmp al entry point original.
esta sugerencia es muy buena, necesitaras algun TOPO/addpebytes/addbytes o similar

hay programas que buscan code cave(espacios en blanco) inclusive de plugins de PEID, o algunos simple patcher pueden funcionar de loader (DUP) y cambiar el codigo solo mientras corre cuando tienes todo cambiado)
saludos Apuromafo


Título: Re: Problemas Alineando PE
Publicado por: karmany en 23 Marzo 2012, 19:07 pm
Para tu caso, ¿por qué no intentas hacerlo directamente con el programa AddPEbytes?
Enlace:
http://foro.elhacker.net/programacion_general/add_pe_bytes_v011-t272401.0.html (http://foro.elhacker.net/programacion_general/add_pe_bytes_v011-t272401.0.html)

Él ya automáticamente te modifica el PE header para que el formato PE no se corrompa.


Título: Re: Problemas Alineando PE
Publicado por: Иōҳ en 25 Marzo 2012, 08:07 am
Para tu caso, ¿por qué no intentas hacerlo directamente con el programa AddPEbytes?
Enlace:
http://foro.elhacker.net/programacion_general/add_pe_bytes_v011-t272401.0.html (http://foro.elhacker.net/programacion_general/add_pe_bytes_v011-t272401.0.html)

Él ya automáticamente te modifica el PE header para que el formato PE no se corrompa.

Sip, creo que para tu aprendizaje sería que uses la tool y fijate como te deja el PE y el ejecutable en si, luego fijate como tú lo dejastes y miras las diferencias :).

Una pregunta karmany como es que agregas bytes al ejecutable?, yo estaba mirando la apis, que funcionan luego de mapear el ejecutable:

SetFilePointer
SetEndOfFile

para agregarle, aún no me he puesto a hacer pruebas, pero pregunto por si hay una "mejor" manera.

Saludos,
Nox.


Título: Re: Problemas Alineando PE
Publicado por: _Enko en 25 Marzo 2012, 20:41 pm
Yo para agregar secciones uso CFF Explorer. Se agrega la sección y luego modifico la PE header.