Jump to content

Is base address + offset obfuscation a working anti-cheating technique?


Troman

Recommended Posts

Hi, I'm a programmer with little hacking knowledge, but as far as I understand hacking games usually boils down to finding out base addresses of pointers, since there never change when you restart a game and knowing offsets for fields. Then you just follow the pointers, add offsets to read content of any member variable.

If a game developer had a script/program, that would insert a random number of variables into the source code before some important base pointers during compilation and insert random number of additional member variables at the start of objects, wouldn't it make hacking the game much more difficult, since locations of base addresses and member variables offsets wouldn't be static anymore when the game is restarted?

I'm aware it can't prevent anyone from hacking such a game, but I am right in my assumption, that it would be an additional burden to hack such a game?

Link to comment
Share on other sites

  • 8 months later...
On 9/4/2022 at 2:54 PM, Troman said:

Hi, I'm a programmer with little hacking knowledge, but as far as I understand hacking games usually boils down to finding out base addresses of pointers, since there never change when you restart a game and knowing offsets for fields. Then you just follow the pointers, add offsets to read content of any member variable.

If a game developer had a script/program, that would insert a random number of variables into the source code before some important base pointers during compilation and insert random number of additional member variables at the start of objects, wouldn't it make hacking the game much more difficult, since locations of base addresses and member variables offsets wouldn't be static anymore when the game is restarted?

I'm aware it can't prevent anyone from hacking such a game, but I am right in my assumption, that it would be an additional burden to hack such a game?

Your understanding of game hacking is mostly correct. However, inserting random variables or member variables into the source code during compilation would not necessarily make hacking the game much more difficult.

This is because experienced game hackers would typically use memory scanning tools, such as Cheat Engine, to locate the values they want to modify, rather than relying solely on the static memory addresses of pointers and member variables. Memory scanning tools work by scanning the game's memory for specific patterns, such as the value of a player's health or ammunition. These tools can easily identify the new memory locations of the variables you added during compilation.

Furthermore, inserting additional variables into the source code may actually make the game more vulnerable to certain types of attacks, such as buffer overflows, which can allow attackers to execute arbitrary code.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...