Skip navigation.

exploreopera

| Help

Sign up | Help

taviso

linux, programming and security

New scanmem release

I've just released version 0.05 of my ptrace() utility scanmem. scanmem is a simple interactive utility that can locate and modify variables in an executing processes, it can be used for debugging, testing, modifying hostile processes or just as a toy to cheat at video games!

The beauty of scanmem is that you dont need to waste any time reverse engineering (eg, you have no symbols or source) or debugging to make some simple modification to a process, you can just describe the property to scanmem and it will track it down...no need to get your hands dirty!

scanmem is still pretty new and some features are missing, but it seems to work quite well, and I've received some good feedback from people using it for things like increasing arbitrary limits in proprietory programs (eg, number of open files) and getting more ammo/health in games.

If you want to give scanmem a shot, you can read more about it here.

If you use scanmem and it doesnt do what you want, or you find a bug let me know and I'll work on it! :smile:


Partitioning schemes and securityAuditing puzzle

Comments

avatar
Flameeyes writes:

It reminds me of the way you scan for cheatcodes in ZSnes :smile:

By anonymous user, # 5. March 2007, 16:30:47

avatar
robbat2 writes:

ooh, nice. There is a long history of DOS and Windows apps that do this, mainly for cheating at games, so it's nice to finally have something in Linux that can do it as well.

Just remembering those, useful things:
1. choosing the size of the variable you are after at the start.
2. searching for numbers in both a zero-based and one-based style. (eg for some variable that does not make sense as zero).
3. similar to #2, support for both signed and unsigned numbers.


Also, could you put it into the tree ;-)?

By anonymous user, # 6. March 2007, 10:19:44

avatar
codergeek42 writes:

Hi Tavis.

This looks really great, and I'd love to package this for Fedora. However, I don't know for certain if the GPL reference in the README is enough from a licensing perspective. Would you please include a copy of the GPL as COPYING or similar in the next release? That would greatly ease my concerns. :]

By anonymous user, # 7. March 2007, 06:15:21

avatar
robbat2:

cool, thanks for the ideas! There was a width command in the last version, but I wrote some logic so that it automatically handles multiple integer types (char, short, int), I'll probaly also add float and double support in the next version.

(it will have some hardcoded delta like 0.01, then if |a - b| <= delta i'll count it as a match)

I'll add the zero and one based values support, great idea!

codegeek42:

sure, no problem :smile:

By taviso, # 7. March 2007, 09:44:22

avatar
codergeek42 writes:

Thankees. :]

By anonymous user, # 7. March 2007, 20:15:48

Write a comment

Comment
(BBcode and HTML is turned off for anonymous user comments.)

Please type this security code : bd7731

Smilies