Skip to content
/ surgeon Public

surgeon is a tool for injecting shared objects into linux processes.

License

Notifications You must be signed in to change notification settings

gonzoj/surgeon

Repository files navigation

surgeon v 0.2 by gonzoj


Installation:
-------------

Since this is a complete rewrite of my old injector, I'll recommend the debug 
build. If it's crashing, you know why / where at least (theoretically).

Anyway, to build choose between the standard and the debug build. For the 
former run:

$ make

For the latter run:

$ make debug

And eventually install:

$ make install

If you got tired of injecting, type:

$ make remove


Usage:
------

Injecting a shared object OBJECT into a running process PID with surgeon is 
easy:

$ surgeon [-i] PID OBJECT

To unload a shared object from a process, use the toggle -u:

$ surgeon [-u] PID OBJECT

In order to work properly, surgeon needs some (internal) libc functions. 
Although it has built-in several ways to resolve those functions, it may occur 
that the injection fails. In such a situation it can be useful, to set the 
location of libc as well as the offsets for those function manually. The 
options which allow that are --libc, --malloc, --free, --dlopen and --dlclose. 
To obtain offsets manually, you could use readelf, for example. Run surgeon -h 
to learn more.


Note:
-----

This release contains as well two simple shell scripts, which inject / unload 
snoogans into Diablo II. I won't bother to explain how to use them, I think it
should be clear enough.

About

surgeon is a tool for injecting shared objects into linux processes.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published