Como encontrar los punteros de valores de un juego?

Iniciado por Zequez, 28 Enero 2010, 01:47 AM

0 Miembros y 2 Visitantes están viendo este tema.

Zequez

A ver si alguien me puede aclarar algo...

Usando cheat engine y OllyDbg logré encontrar los valores de, por ejemplo, la vida de un personaje en un juego. El problema es que ese valor, cada vez que el programa es reiniciado, cambia...

Entonces seguí el flujo del programa con Olly para ver en que lugar de la memoria estaba almacenada la dirección del valor de la vida del personaje. El problema es que esa dirección también cambia xD.

Entonces, está bien lo que estoy haciendo? Es decir, debería seguir esos valores hasta encontrar una dirección que sea estática?

Amerikano|Cls

Es que practicamente cuando se hace uso de apis de alocacion de memoria esta es variable. Puede que el juego haga uso de estas y te suceda esto. Por esta razon una solucion seria mirar cuando hace uso de estas apis ejm: VirtualAlloc y pillarse donde ha quedado alocada, de hay te desplazarias al offset donde se encontrarian los bytes que deseas cambiar.

Salu2




Mi blog:
http://amerikanocls.blogspot.com

tincopasan

probaste buscando los pointers en el cheat engine? a veces hay pointers sobre pointers, pero el ultimo siempre tiene la dirección en color verde, ademas con el olly podes directamente parchar el exe y chau problema

Zequez

Cita de: Amerikano|Cls en 28 Enero 2010, 01:55 AM
Es que practicamente cuando se hace uso de apis de alocacion de memoria esta es variable. Puede que el juego haga uso de estas y te suceda esto. Por esta razon una solucion seria mirar cuando hace uso de estas apis ejm: VirtualAlloc y pillarse donde ha quedado alocada, de hay te desplazarias al offset donde se encontrarian los bytes que deseas cambiar.

Salu2

Pero la cosa es que aunque los encuentre de esa manera con el Olly, como hago después para encontrarlos con C++? Es decir, como se hace? :S

Cita de: tincopasan en  2 Febrero 2010, 19:11 PM
probaste buscando los pointers en el cheat engine? a veces hay pointers sobre pointers, pero el ultimo siempre tiene la dirección en color verde, ademas con el olly podes directamente parchar el exe y chau problema

Si, la primera vez los encontré en Cheat Engine y después para ver de donde salian usé el Ollydbg con la dirección que saqué del CE xD.

Amerikano|Cls

Puedes hacer un loader debugger, u otro similar que te facilite esta tarea  ;)




Mi blog:
http://amerikanocls.blogspot.com