Foro de elhacker.net

Programación => Ingeniería Inversa => Mensaje iniciado por: adrianrl154 en 17 Enero 2013, 12:38 pm



Título: Ollydbg Error: Unable to locate data in executable file.
Publicado por: adrianrl154 en 17 Enero 2013, 12:38 pm
Muy buenas! soy nuevo por aqui y bueno, probando con una aplicacion que llevo un tiempo intentando crackear no tengo manera de guardar los cambios, una vez que hago algun breakpoint y nopeo algunos push y intento guardarlo me salta el molesto mensaje de "Unable to locate data in executable file", de manera que no puedo acabar de guardar mi archivo, pero tampoco entiendo porque me da este error. A ver si alguien más entendido puede ayudarme, muchas gracias a todos!


Título: Re: Ollydbg Error: Unable to locate data in executable file.
Publicado por: MCKSys Argentina en 17 Enero 2013, 12:49 pm
Ese mensaje sale porque estas tratando de guardar información que no existe en el ejecutable físico.

Las secciones de un ejecutable tienen 2 tamaños: 1 "real" (raw) y 1 virtual. Cuando el EXE está en disco, cada sección ocupa lo especificado en el RAW Size de la sección.

Pero, cuando se lo mapea en memoria, el valor usado es el Virtual Size.

Si agarras cualquier EXE, verás que en la gran mayoría, Virtual Size es mayor que Raw Size.

El problema surge cuando cambias bytes que están fuera de lo abarcado por el Raw Size.

No sé si me he explicado bien, pero por las dudas lee un poco sobre el formato PE y las secciones de un ejecutable.

Saludos!


Título: Re: Ollydbg Error: Unable to locate data in executable file.
Publicado por: adrianrl154 en 17 Enero 2013, 12:59 pm
Ese mensaje sale porque estas tratando de guardar información que no existe en el ejecutable físico.

Las secciones de un ejecutable tienen 2 tamaños: 1 "real" (raw) y 1 virtual. Cuando el EXE está en disco, cada sección ocupa lo especificado en el RAW Size de la sección.

Pero, cuando se lo mapea en memoria, el valor usado es el Virtual Size.

Si agarras cualquier EXE, verás que en la gran mayoría, Virtual Size es mayor que Raw Size.

El problema surge cuando cambias bytes que están fuera de lo abarcado por el Raw Size.

No sé si me he explicado bien, pero por las dudas lee un poco sobre el formato PE y las secciones de un ejecutable.

Saludos!

Muchas gracias por responder tan rapidamente, y entenderte te entiendo a mi manera estoy leyendo sobre el formato PE y buscando informacion, pero en este caso que deberia de hacer para poder guardar el archivo? se tiene que traspasar a otro tipo?, lo siento por mi ignorancia.


Título: Re: Ollydbg Error: Unable to locate data in executable file.
Publicado por: MCKSys Argentina en 17 Enero 2013, 21:18 pm
Si estas haciendo un parche, trata de ponerlo lo mas cerca posible del codigo. Si no tienes espacio, puedes agregar una sección nueva al EXE o bien, buscar una "cueva" donde meter el codigo. Por supuesto, si escribes en una sección que no es ejecutable, habra errores, por lo que deberas cambiarla.