Pointers y offset de World of Warcraft

Iniciado por Sefi, 8 Abril 2012, 02:07 AM

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

Иōҳ

Creo que no están entendiendo, si no soy yo....

El value del puntero siempre va a cambiar!, lo que no cambiará es el Base Pointer

[BasePointer] = Value


Saludos,
Nox.
Eres adicto a la Ing. Inversa? -> www.noxsoft.net

Sefi

Disculpa creo que no me explique bien XD, me refería a eso justamente.

Actualmente estoy utilizando el OllyDbg a ver si encuentro el base pointer.

Sefi

Acabo de encontrar la base:

Wow.exe+AD5C20

que no varia cada vez que se reinicia,

disculpar mi ignorancia pero con ello como a hago llegar a la memoria?

Los offsets que tampoco cambian como mencione:

0x100

0x80D0

Como veis, sigo investigando al respecto ;) os comento si lo soluciono


Иōҳ

WoW.exe sería la dirección base, donde se ha cargado el ejecutable en memoria...

Si no me equivoco, si no corríjanme..

Nox.
Eres adicto a la Ing. Inversa? -> www.noxsoft.net

Sefi

Me he quedado atascado llevo estos días sin avanzar lo mas mínimo X,x alguien tiene idea que se hace con el BasePointer (que cambia...) a la dirección base (Wow.exe+AD5C20 )?

Sefi

LO TENGO!!!!!!

como os dije lo tenía delante de mi p**a cara y no lo veía...

la dirección estática es:

wow.exe+AD5C20 + offsets

es decir:

[[wow.exe+AD5C20]+0x80D0]+0x100  = A la Vida actual!

podemos cerrar el post ya ^^ alguna duda pm!

Sefi

Para los que le interesen:

El motivo porque los punteros estáticos no eran estáticos era culpa al ASRL:

aunque se puede buscar la dirección de memoria con la base adress.exe + offsets como he conseguido hacer ;) pero cada parche lo cambian :(

4.2.1 ASLR
Up until version 3.x of WoW, the base address of the process was always located at address
0x401000 in memory [17]. This allowed programmers to use absolute addresses to all the
data structures they wanted to access. The developers of WoW changed this from version
4.x onwards by adding support for address space layout randomisation (ASLR), to make
WoW more secure.
ASLR is security technology that makes a system more secure by making it harder for
attackers to exploit existing vulnerabilities in the system. This is accomplished by randomising the memory layout of an executing program, which means that where an attacker
could previously know exactly where a function would be in memory, the attacker would
now have to guess the location in memory. This significantly decreases the chances of a
single exploitation attempt being successful. It can also cause the program to crash, which
limits the amount of exploitation attempts the attacker can practically make. ASLR is
integrated into several operating systems, and is enabled by default in Windows Vista
and Windows 7 [18].