Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How does Cheat O'Matic work?

How does this program access other processes memory? How can it write into the address space of another process? Wasn't it supposed to segfault or something?

like image 754
R. Martinho Fernandes Avatar asked May 11 '09 15:05

R. Martinho Fernandes


2 Answers

A program with a system privilege level is capable of mapping physical addresses to its own virtual address.

Cheat O'Matic (and poke) maps the physical address of whatever program it is trying to scan into its own virtual space.

Once this is done, it scans all the bytes for the target value you enter. It isolates the correct memory address by asking the user to altering the address to known values and basically does a diff between the old and new memory to find the changes.

like image 105
z - Avatar answered Oct 04 '22 00:10

z -


One way to do it is to inject a DLL (Google for 'Dll injection') into the address process that you want to spy on: that DLL is then inside the process and can do things with the process' memory. The spy process can use an Interprocess Communication method (pipes, sockets, anything) to talk with the DLL which it injected into the other process.

Injecting a DLL takes administrator priviledge (e.g. to set a relevent entry in the system registry).

like image 24
ChrisW Avatar answered Oct 03 '22 23:10

ChrisW



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!